telecode

0.0.3 • Public • Published

Node Knockout Quickstart

Hello, Node Knockout hackers!

Seven years ago, before I ran Heroku's Node.js platform, I started learning node when a friend convinced me to join his team in the first Node Knockout. We submitted an awesome, ambitious entry that was riddled with bugs.

I entered the next year, and the next year, and didn't place until year three, but I had an amazing experience every time. Node Knockout is a great way to push yourself, to learn, to have fun, and to hang out with friends.

From my own experience, my biggest piece of advice for teams is: scope your design to what you think you can accomplish in 8 hours. Then, you might have a shot at finishing mostly-bug-free in 48.

Right behind that would be: do not wait until the last minute to deploy your application. Start from something basic, get it running in production, and then push it periodically as you work on it.

It can be helpful to start from a known-good reference, so I've put together this extremely minimal quick-start with instructions to take you from zero to "Hello, world," with some ideas about where you might go afterwards. If you find yourself stuck early on, this is a known-good point from which you can get un-stuck.

If you're more comfortable with the patterns in create-react-app, there's a documented react/node starter pack that gets you set up with a backend Node service and a static frontend React app as well.

Getting set up

  1. Register your Node Knockout team.
  2. Install Node.js 8.9.1 locally.
  3. Install the Heroku CLI and log in with your free account.

Creating your NKO app

First, give your app a name and pull the quick start code:

$ git init my-nko-idea
$ cd my-nko-idea
$ git pull https://github.com/hunterloftis/nko-quickstart.git

Then, create an app on Heroku and check that you get "Hello, Node Knockout:"

$ heroku create my-nko-idea
$ git push heroku master
$ heroku open

If everything looks good, save your app name in your Node Knockout Team page, which will then give you 500 additional free dyno hours from Heroku for you to add to your account. You can also add any other team members who should be able to deploy:

$ heroku access:add other@team-members.com
$ git remote add origin (your node knockout github url)
$ git push origin master

Developing locally

First, install dependencies:

$ npm install

Then, start your app in dev-mode, open localhost, and edit away:

$ npm start

Deploying changes

To deploy updates to your app:

$ git commit -am 'something awesome'
$ git push heroku master
$ heroku open

You might also want to stream your app's logs in the background:

$ heroku logs --tail

Leveraging the Ecosystem

I encourage you to use Heroku's ecosystem of free add-ons so you can focus entirely on what makes your app unique during the competition. I've listed a few here, but there are many more:

Readme

Keywords

none

Package Sidebar

Install

npm i telecode

Weekly Downloads

1

Version

0.0.3

License

Richard, Ilia, Ethel, and Conner

Last publish

Collaborators

  • twitchard