Created this application with Material Design 3.0, Getx, Supabase and Isar database to learning, showing my skills in Flutter programming and PostgreSQL. This application can convinient to save wish and share its to your friends, add wishes to favorites to note what will you buy to your friend on it Birthday.
- GetX: Easy and powerful state management framework with useful UI tricks.
- Get Storage: A fast, extra light and synchronous key-value in memory, which backs up data to disk at each operation. Used it for save app options.
- Supabase: Supabase is an open source Firebase alternative. It's better thanks to PostgreSQL, RPC and other useful things on the backend side. Used it like a backend.
- Isar: NoSQL, Cross Platform Database like Hive but new better. Used it for saving user actions (save to storage when click on list tile) when user search other users and wishes (search on the Main Screen).
- Others package for UI and utils: flutter_dotenv (set config app), image_picker, connectivity_plus (checks internet connection), emojis, flutter_staggered_grid_view (gridview on steroids), flutter_slidable (to remove item from search suggestions).
- Navigation with bottom navigator bar;
- Parallel routing on home page to open another user account;
- Locale English and Russian languages;
- Skeleton Widgets to show somethink while loading.
- Data validation in form;
- Sign in;
- Sign up.
- Click on items in the MasonryGridView to: add to favorites, remove from favorites. If wish created by user then can delete wish;
- Infinite scroll in MasonryGridView;
- Look for users ad wishes with search in Appbar (with save last oppened users and wishes to Isar database to show saggestions).
- Remove from favorites;
- Sign out from account;
- Infinite scroll in GridView.
- Infinite scroll in GridView with showing Skeleton items while app weren't load all user wishes.
- If shows another user then can subscribe to another user, add and remove it wishes to your favorite list.
- If shows current user then can edit current user info and load new avatar image.
- Set language with saving current value to GetStorage box;
- Set theme with saving current value to GetStorage box.
- See detail wish info;
- If wish created by current user then can edit this wish;
- Fill in values to fields;
- Select image;
- Save new wish and it will be added to Home page and Account Page.
- Personal user themes with saving it on Supabase;
- Redesign: Favorites page, Info page;
- Sort wishes by categories;
- Create parrallel router stack instead of navigator view;
- Realtime update user Home page;
- Sign up to Supabase;
- Set up Supabase with Supabase README.md;
- Get and paste data to environments from Supabase project: SUPABASE_ANNON_KEY, SUPABASE_URL. You can find environments dot files (.env.production, .env.development) in root flutter project.
Made by @yokawaiik
GPL