Documentation ↳ About ↳ How To Run ↳ To Do
STACK SERVER_SIDE ↳ Graphql ↳ Express.js ↳ MySQL ↳ Sequelize ↳ Join Monster CLIENT_SIDE ↳ React
This project is a full-stack application. The front end is made using React. The backend is a REST API that uses GraphQL, Express.js, Sequelize, MySql, Join-Monster, and a few other tools. SQL was chosen in due to its proven ability to be a robust solution for inventory management applications. That being said, SQL is not easily horitontally scalable and so it has trade-offs.
- set up a .env file
- Cd client && npm install
- Cd Server && npm install
- Cd Crud-Inventory-System npm install
- npm run
- Create configurable dev, stage, and prod enviroments
- Create tests for sequalize database seeds
- Clean up unsightly react code
- Make GraphQL handle communication with the Open Weather API instead of Express.js doing so
An admitatdly rough implementation of GraphQL used to handle inbound queries. GraphQL offered an easy to implement solution for defining API routes thanks to the simplicity of it's query and mutation handling. Join-monster was used to define SQL queries made to the SQL server that could fetch the data requested of the GraphQL endpoint.
Express.js is the server used to build the backend.
The SQL database is populated by the sequelize models defined in the Sequelize/models folder. The current database model is focused on creating an effecient relational model that scales well while proving consistent.
UML Diagram Database was built using
Used to assist in creating dynamic sql queries based on GraphQL query parameters