Skip to content

Latest commit

 

History

History
204 lines (126 loc) · 7.44 KB

README.md

File metadata and controls

204 lines (126 loc) · 7.44 KB

Ember Octane Workshop: Shlack

This is the project used for the Mike North's Ember Octane course, where we build a chat app together step-by-step

Prerequisites

You will need the following things properly installed on your computer.

Getting Set Up

There are a few things you need to ensure you have installed, in order to be ready for this course.

Node.js

You’ll need a relatively recent version (v10.0 or newer ideally) of Node.js installed. On OS X, a great way of doing this without disturbing your existing dev environment is to install NVM.

Install & Update Script

Follow the NVM installation instruction to get set up. Installation instructions are here. If you are installing NVM for the first time, but sure to check your terminal for further instructions.

You’ll know everything is set up properly when you can run:

nvm --version # might look like "0.34.0"
node --version # might look like "v10.15.3"

Ember-CLI

Ember-CLI is the official Ember.js build tool. It handles things like:

  • Running a development web server
  • Running tests
  • Code generation
  • Compiling static assets

We can install ember-cli globally by running

npm install -g ember-cli

Now you should be able to run

ember --version

and see something like

# NOTE: your version numbers may be different. This is fine!
ember-cli: 3.10.0
node: 11.6.0
os: darwin x64

Visual Studio Code

Particularly if you’ve never tried it before, you should install Microsoft Visual Studio Code. Some fantastic extensions that I use regularly include

Clone the Project

git clone [email protected]:mike-north/ember-octane-workshop.git shlack

Install dependencies

cd shlack
yarn install

Start the development server

ember serve
  • Visit your app at http://localhost:4200
    • You will see a Congratulations message if the app is correctly spun up
  • Visit your tests at http://localhost:4200/tests
  • Your app runs on localhost :4200 by default. You can customize this via --port <port-number>

Code Generators

Make use of the many built-in Ember-CLI generators to get files that follow the latest practices (with matching tests_. To see available generators, run ember help generate

Running Tests

You may ues either of the following two commands to run the entire test suite:

  • ember test
  • ember test --server

Linting

  • yarn lint:hbs
  • yarn lint:js
  • yarn lint:js --fix

Building

Depending on whether you want an un-minified development build or a minified production build (takes longer, but results in smaller file sizes) you may run either of the following

  • ember build # development
  • ember build --environment production # production

Troubleshooting

  • Be sure your watchman is up-to-date by running brew install watchman or follow the documentation embercli

Further Reading / Useful Links

How this starting point was created

We could create a new Ember app by running the following command (you don't need to run this):

ember new <app-name>

This would create a project based on the default Ember.js app blueprint.

If we want to create an Ember Octane app, Ember Octane being the newest version of Ember.js, we can use the official Ember Octane blueprint instead by running:

ember new -b @ember/octane-app-blueprint <app-name>

This workshop project is basically a new ember app, with the following packages pre-installed for your convenience:

ember install ember-cli-tailwind ember-on-modifier ember-cli-pretender

Added the files in the server folder, and the db.json to provide a development JSON API, and created the notes folder and markdown files inside it.

Thank You!

A lot of people helped in incredibly significant ways to make this curriculum possible. Special thanks to the following people for going way above and beyond

Project Reviews & Refactors

Lisa Huang-North - LinkedIn | GitHub | Twitter

Comprehensive review, usability and “newcomer acceptance testing”

John Robinson ( LinkedIn | GitHub | Twitter )

Semantic HTML, a11y

Robert Jackson - LinkedIn | GitHub | Twitter

Ember Core Review

Chris Garret - LinkedIn | GitHub | Twitter

Ember Core Review

Curriculum

Shankar Sridhar - LinkedIn | GitHub

Huge contributions to the workshop notes

Starting Point HTML/CSS

Adam Wathan ( LinkedIn | GitHub | Twitter )

Used his HTML/CSS to make this workshop’s starting point

Legal

© 2019 LinkedIn

Licensing

The code in this project is licensed as BSD-2-Clause license, and the written content in the ./notes folder is licensed under CC-BY-NC 2.0