This is the project used for the Mike.Works Web Security for Web Developers course.
Course outline and slides
What are the pieces?
- node-sass-middleware for Sass compilation
- express for serving HTML and CSS (compiled from Sass)
- commander as a foundation for a CLI to run exerises
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 (v4.5 or newer, v7 ideally) of node.js installed. On OS X, a great way of doing this without disturbing your existing dev environment is to install NVM. Installation instructions are here.
Youโll know everything is set up properly when you can run
nvm --version # might look like "0.31.4"
node --version # might look like "v7.7.3"
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
- vscode-icons
- Sublime Text Keymap - Install if youโre used to sublime text keyboard shortcuts
Check out and setup the project for this workshop
git clone [email protected]:mike-works/web-security-fundamentals.git websec
cd websec
npm install
Troubleshooting
What if I have an older version of Node.js?
You may run into problems during the workshop! An easy way to deal with this is to...
- install nvm by running
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash
or Wget:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash
- then restart your terminal
- then run
nvm install stable
nvm use stable
nvm alias default stable
Please install sqlite3 package manually
?
What if I get an error like If you use OS X, it can be installed with homebew
brew install sqlite3
Windows and Linux users, please install the appropriate official release.
How to use it
This workshop builds on a single example project, step-by-step. You can start the project by running
npm start
License
While the general license for this project is the BSD 3-clause, the exercises themselves are proprietary and are licensed on a per-individual basis, usually as a result of purchasing a ticket to a public workshop, being a participant in a private training, being a current LinkedIn engineering employee or having a Front End Masters membership.
Here are some guidelines for things that are OK and NOT OK, based on our understanding of how these licenses work:
OK
- Using everything in this project other than the exercises (or accompanying tests) to build a project used for your own free or commercial training material
- Copying code from build scripts, configuration files, tests and development harnesses that are not part of the exercises specifically, for your own projects
- As an owner of an individual license, using code from tests, exercises, or exercise solutions for your own non-training-related project.
NOT OK (without express written consent)
- Using this project, or any subset of exercises contained within this project to run your own workshops
- Writing a book that uses the code for these exercises
- Recording a screencast that contains one or more of this project's exercises
Copyright
ยฉ 2018 Mike.Works, All Rights Reserved