Sample Video Frame
00: Gearing Up
This exercise is currently under development, and you should watch the videos that I've created to find out how to install everything. What I'm doing is I am actually installing node and all the things you need in the videos. Then when those are done I will come back and write a textual description of how to do it. But in the beginning the videos are much, much better for seeing how to install something.
In the video for your platform I will show you how to install these three things:
- Visual Studio Code
- Geany Editor
- NodeJS LTS
- Your terminal. Try Windows Terminal on Windows. Terminal on OSX.
These aren't very difficult to install, so you can probably figure out how to do it if you've done any software installation before. The only difficulty would probably be with finding your Terminal if you've never found it before. On Mac OS X it is simply called Terminal. On Windows it's called PowerShell. If you use Linux, I assume you know what your terminal is since usually so much work is done in Linux through the command line.
If you are an experienced programmer, then feel free to use any text editor you like and only install Node.
Special Automated Windows Installer
I've created a set of installer scripts for windows that will automate installing most of the tools you need do any kind of programming you want. To install JavaScript, first open a PowerShell windows and run these two commands:
irm https://learncodethehardway.com/setup/base.ps1 -outfile base.ps1
powershell -executionpolicy bypass .\base.ps1
This will install many base tools you'll need like Windows Terminal, Geany, and a basic C/C++ compiler for extensions.
Once that runs close this PowerShell and start a new one. In this new PowerShell run these two commands:
irm https://learncodethehardway.com/setup/nodejs.ps1 -outfile nodejs.ps1
powershell -executionpolicy bypass .\nodejs.ps1
This will install Node.js and you're done. You can now close this PowerShell and use the Windows Start menu to start Windows Terminal by typing "terminal" into the search.
NOTE There are other scripts that install other languages, so if you need installs for Rust, Zig, Crystal, C, C++, and many others check out the git project page for more. All of these installers use winget and choco to do the installs, so you can use those tools directly instead of my scripts if you want.
Installing ljsthw-bandolier
At the end of 2022 I created a tool to simplify the rest of this course called the ljsthw-bandolier. It's a very simple tool that solves a big problem with installing code for the project, such as all of the code used in this course. I wrote it to help install and manage the flagship web framework The Bandolier but it can be used to install any git repository to your system.
WARNING TO ARM MAC USERS If you have an M1 or M2 Mac then you are going to have problems. This will possibly install correctly, but if you run into problems please message me at @lzsthw on Twitter or email me and PLEASE give me screenshots or copy-paste the errors. I can't fix it without those.
Since you'll most likely want the code--and you'll need this command in later sections of the course--we'll install it now and get all of the code for this module:
npm install git+https://git.learnjsthehardway.com/learn-javascript-the-hard-way/ljsthw-bandolier.git
If you run this and you get an error on Windows about the SSL certificate being expired then run
git update-git-for-windows -g
. This will open the graphical installer for windows. Follow the prompts, but when you get to the panel about whether to use OpenSSL or Windows Secure Channel, choose Secure Channel. Then close yourcmdr
window and start it again.
After this you should be able to use npm list
to see the package ljsthw-bandolier
like this:
ljsthw-bandolier@0.1.2 (git+https://git.learnjsthehardway.com/learn-javascript-the-hard-way/ljsthw-bandolier.git#HEXNUMBER
Then you can use a new command called npx bando-up
to install projects for the course. Here's how you install the code for this module:
npx bando-up create --using js-level-1-code --keep-git ljsthw-js-level-1
This will checkout my js-level-1-code project to your local computer in the ljsthw-js-level-1
directory so you can refer to it if you get stuck. I highly recommend you only keep this around for reference, or to compare my code to yours if you're having trouble. I wouldn't work on the code in this directory unless you have a specific reason.
Register for Learn JavaScript the Hard Way
Register today for the course and get the all currently available videos and lessons, plus all future modules for no extra charge.