Git Product home page Git Product logo

dummymart's Introduction

DummyMart

An example Flutter project that uses Riverpod, go_router, Hive, flutter_hooks, and Freezed.

Check out the experimental use of macros here.

โš  Important Notes

This project uses DummyJSON API. Please note that DummyJSON doesn't apply your changes when creating, updating, or deleting items. This project correctly implements those actions, but expect no data changes due to these API limitations.

You can run the app with --dart-define=MOCK_API=true flag to use the internal mocked API that mimics the original API behavior and does modify your changes in a session. If you're using VSCode, you can instead run the app with the "dummymart (mock API)" configuration.

Features

Each feature demonstrates certain functionalities that are commonly used in a CRUD app.

  1. Products: Basic "view all items" and "view item details" functionalities. Also implements "pull-to-refresh" mechanism.
  2. Todos: Full CRUD operations, including "add item", "edit item", and "delete item".
  3. Posts: More advanced read operations such as "search as we type (with debounce)" and "infinite scrolling".
  4. Auth: Managing auth states, allowing functionalities such as "invalidate all data when logging out" and "redirect screens based on the auth state".

Routes

Full paths for routes:
  => /
  => /login
  => /products
  =>   /products/:id
  => /todos
  =>   /todos/add
  =>   /todos/:id
  =>     /todos/:id/update
  => /posts
  =>   /posts/:id
  => /profile

Setup

  1. Run flutter pub get to get dependencies.
  2. Run dart run build_runner build to generate required files. You can also run dart run build_runner watch to generate files and let build_runner watch for changes and rebuild if necessary.
  3. (Optional) Run dart run husky install to setup git hooks on your machine.

Credentials

Use these credentials to login:

username: kminchelle
password: 0lelplR
username: kmeus4
password: aUTdmmmbH
username: umcgourty9
password: i0xzpX

Or you can use any user credentials from here: https://dummyjson.com/users

Screenshots

View all todos View a single todo Add todo Update todo
Login Profile Infinite scrolling Search post

dummymart's People

Contributors

dhafinrayhan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.