https://rocky-meadow-55707.herokuapp.com/docs/
- Install
NodeJS v7.8.0 - Install and setup
Postgresql - Clone this repo
- Run
npm installto install all dependencies - Setup your databases on
Postgres. Info needed can be gotten atserver/config/config.js - Go to Amazon AWS
- Sign in to the console
- Go to
IAM - Generate a pair of developer access keys from the console and save somewhere private
- Create a
.envfile in your root directory and assign values for the following keys- DB_USER
- DB_PASS
- secret
- S3_BUCKET
- PORT
- AWS_SECRET_ACCESS_KEY
- AWS_ACCESS_KEY_ID
- Start up the application using
npm run start:all - Go to
http:localhost:8000to use the application
- Both client and server side tests can be run using
npm run test - Server side tests can be run using
npm run test:express - Client side tests can be run using
npm run test:react - End to End tests can be run using
npm run test:e2e- To run end to end tests, first run
npm run prep:e2ein a separate terminal
- To run end to end tests, first run
- Users can signup and login
- Users can view all centers on the system
- Admins can create new centers
- Users can add new events within a center
- Users can view events within a center
- Users can also view all events created on the system
- Admins can edit events and centers
- Users can edit events that they created
- Users can delete events that they created
- Admins can delete events
- Users can't currently search for either events or centers
- Users don't get mails when an admin deletes their events
- Users can't filter centers by facilities
- Admins can't delete centers and their associated events
- NodeJS - a JavaScript runtime built on Chrome's V8 JavaScript engine.
- ExpressJS - Fast, unopinionated, minimalist web framework for Node.js
- PostgreSQL - a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.
- Sequelize - a promise-based ORM for Node.js v4 and up. It supports the dialects PostgreSQL, MySQL, SQLite and MSSQL and features solid transaction support, relations, read replication and more.
- MaterializeCSS - a modern responsive front-end framework based on Material Design
- Amazon S3 - object storage built to store and retrieve any amount of data from anywhere – web sites and mobile apps, corporate applications, and data from IoT sensors or devices.
This project is licensed under MIT.
When contributing to this repository, please reach out to me or other contributors via email, issue or any other means to discuss the changes you wish to make.
- Onyekachi Okereke
- NodeJs
- ExpressJS
- PostgreSQL
- MaterializeCSS
- Amazon S3
- Sequelize