Skip to content

REstock is a Flutter mobile application designed to help users create and manage shopping lists for household items.

Notifications You must be signed in to change notification settings

vamuigua/REstock

Repository files navigation

App Logo

REstock 🛒

REstock is a Flutter mobile application designed to help users create and manage shopping lists for household items. Whether you're planning a trip to the grocery store or organizing your pantry, REstock makes it easy to keep track of what you need to buy.

Demo 🎥

REstock Demo gif

Features ✨

  • Create Shopping List items: Easily create new shopping list items to them.
  • Manage Items: Edit & delete shopping list items,
  • Categories: Organize your items by categories such as vegetables, dairy, carbs, meat etc.
  • Sync Across Devices: Sign in with your account to sync your shopping list items across multiple devices.

Tech Stack 🔨

Client: Flutter & Dart

BaaS: Firebase

Getting Started & Run Locally 🚀

To get started with REstock, follow these steps:

Clone the project

  git clone https://github.com/vamuigua/restock/

Go to the project directory

  cd restock

Install dependencies

  flutter pub get

Run the App on a connected device or simulator/emulator

  flutter run

Start using REstock: Once the app is running, you can start creating your shopping list and add items.

Lessons Learned 📚

While building REstock, I gained valuable experience and encountered various challenges. Here are some of the key lessons learned:

  • Using Firebase as a BaaS: Integrating Firebase Realitime Database as a Backend as a Service (BaaS) allowed for seamless data storage and synchronization across devices. To further secure user data, I plan to use Firebase authentication and configure the necessary read & write rules.

  • HTTP Requests with Flutter: Leveraging the http Flutter package, I learned how to send HTTP requests to interact with Firebase Realtime Database. This included handling different HTTP methods (GET, POST, PUT, DELETE) for CRUD operations on the shopping list items.

Roadmap & Improvements 🛠️

  • UI: Move "Add item" icon to bottom navigation bar for easier reach
  • feat: Quickly find items using search functionality
  • feat: Ability to pull-down to refresh data
  • feat: Store data on device as the primary storage (In Progress)
  • feat: Ability to sync local data to firebase
  • feat: Mark items as purchased to keep your lists up-to-date
  • feat: Set reminders for important items or lists
  • feat: Ability to create custom categories

Acknowledgements 🙏

REstock was created with the help of the following resources:

  • Flutter & Dart - The Complete Guide [2024 Edition] - This course served as the foundation for my journey in developing the REstock app. While the initial concept and some features were part of the course projects, I've invested significant effort into refining, enhancing, and adding unique features to give REstock its distinct personality and functionality. Through countless iterations, improvements, and updates, I've tailored the app to meet the specific needs of users, infusing it with a personal touch and ensuring a delightful user experience 😊

Feedback 📣

If you have any feedback, please reach out at [email protected]

About

REstock is a Flutter mobile application designed to help users create and manage shopping lists for household items.

Topics

Resources

Stars

Watchers

Forks