Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/laplacexd/pan
Pan - An Inventory Management System made with MERN Stack
https://github.com/laplacexd/pan
css-module express formik-yup javascript json-as-xlsx mysql2 nodejs react-query reactjs redis vite xlsx
Last synced: 2 months ago
JSON representation
Pan - An Inventory Management System made with MERN Stack
- Host: GitHub
- URL: https://github.com/laplacexd/pan
- Owner: LaplaceXD
- License: mit
- Created: 2022-11-05T15:21:46.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-06-11T16:18:11.000Z (8 months ago)
- Last Synced: 2024-06-11T20:47:11.798Z (8 months ago)
- Topics: css-module, express, formik-yup, javascript, json-as-xlsx, mysql2, nodejs, react-query, reactjs, redis, vite, xlsx
- Language: JavaScript
- Homepage: https://pan-ivory.vercel.app/
- Size: 790 KB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Pan
![Last Update](https://img.shields.io/github/last-commit/LaplaceXD/Pan?color=blue&label=Last%20Update)
![Activity](https://img.shields.io/badge/Activity-Completed-blue)[Pan](https://pan-laplace.vercel.app/) is an inventory management system made for Pan. This system was made
with the use of [MySQL](https://www.mysql.com/), [React](https://beta.reactjs.org/),
[Express](https://expressjs.com/), and [Node.js](https://nodejs.org/en/).## Functionalities
- Generate reports, such as:
* `Inventory Report`, which contains the beginning and ending stocks, the number of goods sold, and the gross profit of each product within a month.
* `Sales Report` contains the top performing, least performing, and various statistics of the different products in the system.
* `Supplier Stock Report`, which contains the 'stock in' of the different suppliers within a month.
* `Employee Details Report`
* `Daily Sales Report`
- Manage company resources such as employees, products, stocks, and suppliers.
- Track, manage, and place orders based on the available products, and stocks in the system.
- Filter data within the system.
- Role-based authorization on different functionalities.
- Authentication using [JWT tokens](https://jwt.io/).## Setup
1. Clone this project to your local machine.
2. Import `pan_db.sql` into your local MySQL database, and run your MySQL database.
3. Create a Redis instance locally or through [Redis Labs](https://app.redislabs.com/).
4. Create a [SendGrid](https://sendgrid.com/) account.
5. Create `.env` files in the `client directory` and `server directory.`
> The environment variables should contain the following:```
# server/.env should contain the following variablesSENDGRID_API_KEY = <>
REDIS_HOST = <>
REDIS_USERNAME = <>
REDIS_PASSWORD = <>
REDIS_PORT = <># client/.env should contain the following variables
VITE_SERVER_URL = http://localhost:3000/api/v1
```6. Run the following script in a terminal.
```bash
cd client
npm i
npm run devcd ../server
npm i
npm run dev
```7. You should be able to login through the login portal using the following credentials.
> Employee```
email: [email protected]
password: pan@employee123!
```
> Manager```
email: [email protected]
password: pan@manager123!
```8. ...
9. Profit!## Contributing
Unfortunately, we are not accepting pull requests, since this is a one-time project. However, feel free to
fork this project, and improve on it!## Authors and Acknowledgement
- [Jonh Alexis Buot](https://github.com/LaplaceXD) [Team Lead, Project Manager]
- [Sherly Jao](https://github.com/jaosherlyr) [Web Designer, Front-End Developer]
- [Nathan Arriesgado](https://github.com/n-e-t-a-n) [Back-End Developer]
- [Erwin Antepuesto](https://github.com/cham0m1le) [Back-End Developer]## License
[MIT](https://github.com/LaplaceXD/Pan/blob/master/LICENSE)