Skip to content
This repository was archived by the owner on Sep 20, 2025. It is now read-only.

kkamara/grocery-store-management-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

348 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

grocery-store-management-system.png

grocery-store-management-system2.png

grocery-store-management-system3.png

grocery-store-management-system4.png

grocery-store-management-system5.png

grocery-store-management-system6.png

grocery-store-management-system

(25-Jun-2025) Made with https://github.com/kkamara/nodejs-reactjs-boilerplate . See Misc. for more details.

Using Postman?

Get Postman HTTP client.

Postman API Collection for Grocery Store Management System.

Postman API Environment for Grocery Store Management System.

Important Note

You should remove config.json from version-control because all database credentials are stored there.

For database usage in pipelines, I recommend creating a testing_config.json and adding database commands to package.json, like migrate:test and seed:all:test.

Installation

# Create our environment file.
cp .env.example .env
# Update values in .env file like port, timezone, and app name.
# Install our app dependencies.
npm install --global yarn
yarn install
# Before running the next command:
# Update your database details in config.json
yarn migrate
yarn seed:all

Frontend Installation

cd frontend
yarn install
yarn build

Sequelize tutorial

See package.json for helpful commands related to using the database.

# Docs:
#   https://sequelize.org/docs/v6/other-topics/migrations/
# Running a specific database seeder
NODE_ENV=development npx sequelize-cli db:seed --seed 20230814135938-demo-user.js
# Creating a model & migration
NODE_ENV=development npx sequelize-cli model:generate --name User --attributes firstName:string,lastName:string,email:string
# Creating a migration
NODE_ENV=development npx sequelize-cli migration:generate --name migration-skeleton
# Running migrations
NODE_ENV=development npx sequelize-cli db:migrate
# Revert the most recent migration
NODE_ENV=development npx sequelize-cli db:migrate:undo
# Revert to a specific migration
NODE_ENV=development npx sequelize-cli db:migrate:undo:all --to XXXXXXXXXXXXXX-create-posts.js
# Creating a seed (fake database data) to simulate production environment
NODE_ENV=development npx sequelize-cli seed:generate --name demo-user
# Running seeds
NODE_ENV=development npx sequelize-cli db:seed:all
# Undo the latest seed
NODE_ENV=development npx sequelize-cli db:seed:undo
# Undo all seeds
NODE_ENV=development npx sequelize-cli db:seed:undo:all

Usage

yarn start # Runs Start-script `yarn node src/app.js`
# Serves app to http://localhost:8000 .
# Serves API to http://localhost:8000/api/v1 .
#   Example API route: http://localhost:8000/api/health .

Reload server on project files change

yarn dev

Reload server and frontend app on project files change

yarn dev:frontend

Using docker?

docker-compose up --build -d

To run api tests

yarn test

Misc.

I made this app with full-stack JavaScript. Particularly, NodeJS, ExpressJS, and ReactJS. This app is a remake of Online Grocery Management Store PHP & MySQL Database Project.

This app is entirely created with NodeJS ReactJS Boilerplate, which I also created.

The admin dashboard uses the SB Admin 2 theme from https://startbootstrap.com/theme/sb-admin-2 .

See NodeJS ReactJS Boilerplate.

See ReactJS Native Mobile App Boilerplate.

See MRVL Desktop.

See MRVL Web.

See NodeJS Docker Skeleton.

See NodeJS Scraper.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

BSD

Releases

No releases published

Packages

 
 
 

Contributors

Languages