TodoMVC++ is the companion application for Zero to Production with Node.js. To learn more about how this application works, check out the video course on Frontend Masters.
This application is based on TodoMVC, and specifically on a Vue.js implementation by Evan You.
This application has been tested on Node.js 6 and npm 3 - these packages should be available for download here - choose the "Current" version for download.
Once you have Node and npm installed and this repository downloaded, you'll need to install the application's dependencies. Do this with:
npm install
For development you'll probably want to install the following modules globally:
npm install -g grunt-cli sequelize-cli
To run this application locally, you'll require a Postgres database. On a Mac, the easiest path to installing Postgres is Homebrew. Once installed, grab Postgres with:
brew update
brew install postgres
If Postgres is installed using the method above, you should now have a few Postgres administrative commands on your system path. Begin by firing up another Terminal tab and starting the database:
postgres -D /usr/local/var/postgres
Next, create the development and test databases:
createdb todos
createdb todos-test
If Postgres is not installed locally, you can setup a free instance as follows:
- visit https://elephantsql.com
- login and setup a free tiny turtle instance
- goto "Details" and copy the url. It should look something like this postgres://abcdefg:icRAC...
- in the project, copy
config/test.js
toconfig/user.js
- set
config.databaseUrl
to your copied postgres url - don't forget to run
sequelize db:migrate
Apply the database migrations:
sequelize db:migrate
Copy over static assets:
grunt collect_static
To run the application in development mode:
grunt
To run the application simulating production settings:
NODE_ENV=production
grunt collect_static
npm start
MIT