- Docker (containerization and deployments)
- Postgres (database)
- Node.js 7.10.0+ (API runtime)
- NPM 5.0.0+ (API package manager)
- Express.js (API middleware framework)
- Sequelize.js (API ORM library)
- Polymer (UI framework)
- Bower (UI package manager)
The only prerequisite is Docker. Once installed, all commands can be executed through the various Docker containers.
- API:
docker-compose run --rm api npm install
These commands only need to be executed once on a clean database:
- Create Tables:
docker-compose run --rm api npm run sequelize db:migrate
- Insert Data:
docker-compose run --rm api npm run sequelize db:seed:all
The database port is mapped to your host machine via Docker Compose so feel free to use your favorite database tools to poke around inside of it.
docker-compose up
- Navigate to the desired URL in your favorite web browser:
- UI URL: http://ui.cordcutting.docker
- API URL: http://api.cordcutting.docker
docker-compose run --rm ui bower --allow-root <command>
This one comes in handy when messing around with Sequelize stuff
docker-compose stop db; docker-compose rm -f db; docker-compose run --rm api npm run sequelize db:migrate
There aren't any tests yet but we'll have some soon!