Project Progress Tracker
- Set up Monorepo
- Initialized the monorepo using
Nx. - Created folders for
backendandfrontendprojects.
- Initialized the monorepo using
- Define Tech Stack
- Finalized stack: Node.js, Express.js, React (web), PostgreSQL.
- Installed dependencies and set up ESLint, Prettier, and Husky.
- Initialize Backend Project
- Created a new Node.js project in the
backendfolder. - Installed Express and other necessary dependencies.
- Configured ESLint, Prettier, and Husky for code quality.
- Created a new Node.js project in the
- Create Basic Express Server
- Created a basic Express server with a "Hello World!" endpoint.
- Verified the server is running on
http://localhost:3000.
- Initialize Frontend Project
- Created a new React project in the
frontendfolder. - Installed necessary dependencies.
- Set up ESLint, Prettier, and Husky.
- Created a new React project in the
- Design Database Schema
- Designed the database schema based on the
DB Design.mddocument.
- Designed the database schema based on the
- Set Up Database
- Implemented the database schema using Prisma.
- Set up PostgreSQL locally and tested connections.
- Authentication Module
- Implemented user registration, login, and JWT-based authentication.
- Inventory Management APIs
- CRUD operations for products.
- Added endpoints for creating, retrieving, updating, and deleting products.
- Added endpoint for creating wholesalers.
-
Frontend Setup
- Created the initial React project structure.
- Installed necessary dependencies including
@chakra-ui/react,axios, andreact-router-dom. - Set up routing with
React Router.
-
Reusable UI Components
- Developed reusable components including
Navbar,Table,FormInput,Modal, andCard.
- Developed reusable components including
-
[] Login/Registration Page
- Implemented the login and registration forms.
- Connected the forms to the backend authentication API.
- Handled authentication state and error messages.
-
[] Dashboard Page
- Designed the dashboard layout with dummy data.
- Created card components to display key metrics.
-
[] Inventory Management Page
- Implemented the product list table with options to edit/delete.
- Added a form to add new products.
- Included search and filter options.
- Write Unit Tests
- Write unit tests for backend and frontend components.
- Write Integration Tests
- Write integration tests for backend and frontend components.
- Deploy Application
- Deploy the application to a production environment.
- Testing and Deployment
- Write unit and integration tests for both backend and frontend.
- Deploy the application to a production environment.
Note: Regularly update this tracker to reflect the latest progress and any changes in the project plan.