Galvanize staff, student, and cohort API aggregator.
Deployed URL: http://galvanize-motherbrain.herokuapp.com/
Uses:
- Express
- Passport for Authentication
- JSONAPI-Serializer for Serialing/Deserializing
- Knex.js for database migration/seeding
- Objection ORM
- Postgres database
yarn
ornpm install
- Copy
.env.example
to.env
and replace the values createdb motherbrain
npm run migrate && npm run seed
to populate the databasenpm start
to run production buildnpm run dev
to run locally
Testing can be setup using:
createdb motherbrain-test
createdb learn
npm run migrate:test && npm run seed:test
npm run migrate:dev && npm run seed:dev
- Mocha/Chai and Sinon for unit and integration testing
- Supertest for acceptance testing
npm test
to run all testsnpm run [test-level]
to run individual test levels, where [level] isunit
|integration
|acceptance
npm run find-test [search-term]
to grep for specific tests
Business Units are programs: Denver WDI (1), Boulder WDI (2), etc.
/api/v1/business-units
/api/v1/business-units/:business_unit_id
/api/v1/business-units/:business_unit_id/cohorts
/api/v1/business-units/:business_unit_id/cohorts/:cohort_id
/api/v1/cohorts/:cohort_id
/api/v1/students
/api/v1/students/:student_id
/api/v1/business-units/:business_unit_id/cohorts/:cohort_id/students
/api/v1/cohorts/:cohort_id/students
/api/v1/standards
/api/v1/standards/:standard_id
/api/v1/performances
/api/v1/performances/:performance_id
/api/v1/daily-plans
/api/v1/daily-plans/:daily_plan_id
/api/v1/instructors
/api/v1/instructors/:instructor_id