Flutter-journey - A package helps you run one-time migrations in your app incrementally, while trying to reduce impact on app start-up time as much as possible

Overview

Journey

As soon as your app is published it goes on this wild journey and likely receives new interesting features to benefit your users. Along the way there will be times when you need to run one-time migrations to prepare for these exciting new features!

This package helps you run one-time migrations in your app incrementally, while trying to reduce impact on app start-up time as much as possible.

Features

Run incremental migrations.

Getting started

To use Journey, you will need to include this package in your pubspec:

# pubspec.yaml
dependencies:
  journey:

Usage

Create migration implementations for the all the migrations in your app:

class MigrateUserModelToHaveMultipleJourneys implements Migration {
  String get id => "migrate_user_model_to_have_multiple_journeys";

  @override
  Future<MigrationResult> run() async {
    // change the data model of your underlying data structure
    return MigrationResult.successful;
  }
}

class MigrateTokensToNativeSecureStorage implements Migration {
  String get id => "migrate_tokens_to_native_secure_storage";

  @override
  Future<MigrationResult> run() async {
    // read the tokens from the previous storage, and move them to the secure storage
    return MigrationResult.successful;
  }
}

Once you've defined your migrations, define the journey:

final journey = Journey(
  migrations: [
    MigrateUserModelToHaveMultipleJourneys(),
    MigrateTokensToNativeSecureStorage(),
  ],
);

After defining the journey, execute the migrations at an appropriate time in your app:

// U can use the reports for analytical purposes
final reports = await journey.migrate();
You might also like...

Trying to develop an open source social media app

Social Media App (नाम में क्या रखा है :P) Getting Started To run this Project you'll need an account on the Supbase. After creating an account run bel

Dec 13, 2022

This is a simple flutter project of mine that i was trying to learn state managment in flutter with GetX.

managment This is my flutter project about state managment with GetX Getting Started This project is a starting point for a Flutter application. A few

Jul 9, 2022

Icarus - Local Action, Global Impact

Icarus - Local Action, Global Impact

Icarus Local Action, Global Impact Download · Report Bug · Request Feature Table of Contents About The Project About Icarus Todo Technologies Getting

Oct 26, 2022

In this app, it's possible to find some different kind of flutter animations

flutter_animations Apprendre à utiliser les animations avec Flutter Getting Started This project is a starting point for a Flutter application. A few

Dec 24, 2021

Flutter video compress - Generate a new file by compressed video, and provide metadata. Get video thumbnail from a video path, supports JPEG/GIF. To reduce app size not using FFmpeg in IOS.

Flutter video compress - Generate a new file by compressed video, and provide metadata. Get video thumbnail from a video path, supports JPEG/GIF. To reduce app size not using FFmpeg in IOS.

flutter_video_compress Generate a new path by compressed video, Choose to keep the source video or delete it by a parameter. Get video thumbnail from

Dec 8, 2022

Klutter plugin makes it possible to write a Flutter plugin for both Android and iOS using Kotlin only.

The Klutter Framework makes it possible to write a Flutter plugin for both Android and iOS using Kotlin Multiplatform. Instead of writing platform spe

Dec 18, 2022

Makes it possible to safely execute and retry a Future inside a StatelessWidget

Makes it possible to safely execute and retry a Future inside a StatelessWidget

futuristic Makes it possible to safely execute and retry a Future inside a StatelessWidget. See the Mainstream package for a similar API for working w

Sep 15, 2022

AdventOfCode 2022 in Dart focusing on code golf, making the solutions as small as possible

Advent of Code 2022 in Dart (Code Golf) This is my attempt at solving the Advent of Code 2022 puzzles in the shortest possible code using Dart 2.18. Y

Dec 15, 2022

Readky is a Free Flutter News App Starter Template that can help you develop a News application much faster.

Readky is a Free Flutter News App Starter Template that can help you develop a News application much faster.

Readky. Introduction Readky is a Free Flutter News App Starter Template that can help you develop a News application much faster. You just need to add

Nov 26, 2022
Owner
Jordy Langen
Jordy Langen
Another breakpoint framework. Aims to simplify as much as possible building adaptive layouts.

Another breakpoint framework. Aims to simplify as much as possible building adaptive layouts. Features Really simple implementation Works with and wit

null 3 Sep 26, 2022
Trying out Flutter for desktop Web app development as an alternative to SPA frameworks (such as React and Angular) by recreating one of the pages of an existing CV Management web app

HTML Renderer Demo CanvasKit Renderer Demo Reddit discussion This repo contains a PoC of using Flutter as a traditional SPA framework for creating a d

Maxim Saplin 20 Oct 11, 2022
Flutter kick start - Flutter Kick Start Project Pattern

Flutter Kick Start Project Pattern A new Flutter project where basically show a

Md. Sabik Alam Rahat 3 Apr 27, 2022
A fast start flutter project to make aps faster and skip setup on every application. I am personally using this structure while creating a new project

Flutter Fast Start A fast start flutter project to make apps faster and skip setup on every application. I am personally using this structure while cr

Okan Demir 2 Dec 15, 2022
An extension of the Flutter ListView widget for incrementally loading items upon scrolling

incrementally_loading_listview An extension of the Flutter ListView widget for incrementally loading items upon scrolling. This could be used to load

Michael Bui 174 Sep 27, 2022
Flutter Navigation - all types of navigation in flutter run main.tabBar.dart to see tabBar, and run main.dart to see the otheres

pop_up_bar A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if th

Michael Odumosu 0 Jan 1, 2022
The app you need for Genshin Impact

Shiori A Genshin Impact database kinda app This app is not affiliated with or endorsed by miHoYo. Shiori is just a database app for the Genshin Impact

Efrain Bastidas 153 Dec 17, 2022
Call Kit is a prebuilt feature-rich call component, which enables you to build one-on-one and group voice/video calls into your app with only a few lines of code.

Call Kit (ZegoUIKitPrebuiltCall) Call Kit is a prebuilt feature-rich call component, which enables you to build one-on-one and group voice/video calls

ZEGOCLOUD 9 Dec 26, 2022
Nebula makes your Flutter development journey easier by providing helper widgets, utilities and abstractions.

Nebula makes your Flutter development journey easier by providing helper widgets, utilities and abstractions.

Aldrin's Art Factory 1 Apr 21, 2022
An E-Commerce application developed on Flutter, which helps to run the app on Android / IOS / Windows's OS / MacOS / Web Browser from a single codebase

BuySmart An E-Commerce application developed on Flutter, which helps to run the app on Android / IOS / Windows's OS / MacOS / Web Browser from a singl

Sumit Kumar 11 Oct 10, 2022