Skip to content

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.

Notifications You must be signed in to change notification settings

yokawaiik/wish_app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wish App (MVP pet project)

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.

Content table

Used stack

  • 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).

Features

Global

  • 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.

Authentication page

  • Data validation in form;
  • Sign in;
  • Sign up.

Home page

  • 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).

Favorites page

  • Remove from favorites;
  • Sign out from account;
  • Infinite scroll in GridView.

Account page

  • 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.

Settings page

  • Set language with saving current value to GetStorage box;
  • Set theme with saving current value to GetStorage box.

Wish info

  • See detail wish info;
  • If wish created by current user then can edit this wish;

Add Wish

  • Fill in values to fields;
  • Select image;
  • Save new wish and it will be added to Home page and Account Page.

Ways of improving

  • 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;

App demonstration

Account

Auth

Dark theme

Home and search

Settings

Wish adding and favorites

Video demonstration

Youtube link

App download

App download

How to launch app

Supabase

  1. Sign up to Supabase;
  2. Set up Supabase with Supabase README.md;
  3. 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.

Author contacts

Made by @yokawaiik

License

GPL

About

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.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published