Build a full stack web application with React, Node, Express, CSS3 and PostgreSQL.
Take the guesswork out of making sure your dogs are happy by keeping track of all of their basic needs. Ensure someone in your family takes care of your furry friend's basic needs and more. Sometimes life is hectic and we're not sure if our furry family members have been taken care of. Keep secured important notes and tasks for your dog. Consolidate notes of your dog's most important needs and assign tasks with dates in order to keep your dog healthy and happy.
git clone [email protected]:dc5will/happydog-server.git
- Install dependencies:
npm install
- Create development and test databases:
createdb happydog
,createdb happydog-test
- Create database user:
createuser happydog
- Grant privileges to new user in
psql
:GRANT ALL PRIVILEGES ON DATABASE happydog TO happydog
GRANT ALL PRIVILEGES ON DATABASE happydog-test TO happydog
orGRANT ALL PRIVILEGES ON DATABASE "happydog-test" TO happydog
;
- Prepare environment file:
cp example.env .env
- Replace values in
.env
with your custom values if necessary.
- Replace values in
- Bootstrap development database:
MIGRATION_DB_NAME=happydog npm run migrate
- Bootstrap test database:
MIGRATION_DB_NAME=happydog-test npm run migrate
- To seed the database for development:
psql -U happydog -d happydog -a -f seeds/seed.happydog_tables.sql
- To clear seed data:
psql -U happydog -d happydog -a -f seeds/trunc.happydog_tables.sql
- To seed the database for testing:
psql -U happydog -d happydog-test -a -f seeds/seed.happydog_tables_test.sql
- Start application for development:
npm run dev
- Run tests:
npm test
- React
- React Context
- Jest - Testing
- Enzyme - Testing
- Zeit
- Node
- NPM
- Express.js
- PostgreSQL
- Knex.js
- Mocha - Testing
- Chai - Testing
- Supertest - Testing
- Heroku