- Taking bar inventory is a long daunting task
- Measurement of liquor is often inaccurate
- Inventory tracking is important for profitability
- Develop an app to take bar inventory easier
- Improve accuracy of remaining liquor measurement
- Produce meaningful reports to help bar business profitability
- Local development installation
- Node.js https://nodejs.org/
- npm -- should come with Node.js installation
- MySQL server needs to be up and running with all CRUD priviledges.
- Node.js https://nodejs.org/
-
Clone the repository
git clone git@github.com:jenaym/Project-3.git cd Project-3
-
Install dependencies
npm install npm install -g nodemon sequelize-cli
-
Create the database. Run
server/db/sql/schema.sql
with mysql command or in the workbench. -
Edit
config/config.js
and adjust database configurations. -
Create a
.env
file and add the following settingsDB_PASSWORD=<your database password for MySQL> JWT_KEY=<your secret key string>
-
Run migration and seeding
sequelize db:migrate sequelize db:seed:all
-
Launch Project-3
npm start
- To undo a migration or seeding, run the following:
sequelize db:migrate:undo:all sequelize db:seed:undo:all
- Live app on heroku
- Current version: https://tranquil-meadow-47203.herokuapp.com/
- Node.JS - an asynchronous event driven JavaScript runtime
- Express - Fast, unopinionated, minimalist web framework for Node.js
- React - A JavaScript library for building user interfaces
- MySQL - The world's most popular open source database
- Sequelize - a promise-based ORM for Node.js and io.js
- MATERIAL-UI - React components that implement Google's Material Design
- React Autosuggest - WAI-ARIA compliant autosuggest component built in React
- Redux - A predictable state container for JavaScript apps
- react-csv - Generate a CSV file from given data
- Passport - Simple, unobtrusive authentication for Node.js
- gravatar - Node.JS library to generate gravatar URLs
- ... and more