16. Then continue studying anything you find interesting and trying to change the existing pages.
# Introduction
This should give you a quick crash course in how the framework operates while I work on better documentation and instructions.# bandolier-template
The Bandolier (aka `bando`) is an educational web framework featured in the Learn JavaScript the Hard Way course. The Bandolier contains all of the features a full stack developer would need to learn, but with smaller easier to understand implementations that are fully visible in the project. It includes implementations of:
The Bandolier (aka `bando`) is an educational web framework featured in the [Learn JavaScript the Hard Way](https://learnjsthehardway.com) course. The Bandolier contains all of the features a full stack developer would need to learn, but with smaller easier to understand implementations that are fully visible in the project. It includes implementations of:
* JSON APIs backends.
* JSON APIs backends.
* Multi-page and Single-page web UIs.
* Multi-page and Single-page web UIs.
@ -17,7 +15,8 @@ The Bandolier (aka `bando`) is an educational web framework featured in the Lear
* Helpful video processing in JavaScript.
* Helpful video processing in JavaScript.
* Template generators to get started with code.
* Template generators to get started with code.
* Full but simple database administrator in the browser.
* Full but simple database administrator in the browser.
@ -39,7 +38,7 @@ That will create a command you'll use to manage installs and updates of the [Ban
You should now be able to do this:
You should now be able to do this:
```
```shell
npx bando-up --version
npx bando-up --version
npx bando-up --help
npx bando-up --help
```
```
@ -48,7 +47,7 @@ If you can't then refer to the documentation for `ljsthw-bandolier`, _especially
If you can run the `npx bando-up` command then use it to create your first project:
If you can run the `npx bando-up` command then use it to create your first project:
```
```shell
npx bando-up create my-project
npx bando-up create my-project
```
```
@ -58,7 +57,7 @@ This will checkout the [Bandolier Template](https://git.learnjsthehardway.com/le
If you checked out your first project into `my-project` then do this:
If you checked out your first project into `my-project` then do this:
```
```shell
cd my-project
cd my-project
npm install
npm install
```
```
@ -67,13 +66,13 @@ That will move you into the project directory and install all of the required so
Once `npm install` finishes you can configure the application:
Once `npm install` finishes you can configure the application:
```
```shell
npm run knex migrate:latest
npm run knex migrate:latest
```
```
This will setup your database, and then you can finally do the initialize command to finish the setup:
This will setup your database, and then you can finally do the initialize command to finish the setup:
```
```shell
node bando.js init
node bando.js init
```
```
@ -81,7 +80,7 @@ This will configure some items, rerun the migrations just in case, and copy any
Open another Terminal window and start the app in `DANGER_ADMIN` mode:
Open another Terminal window and start the app in `DANGER_ADMIN` mode:
```
```shell
npm run DANGER_ADMIN
npm run DANGER_ADMIN
```
```
@ -97,7 +96,7 @@ The final test is switch back to the browser and refresh the page to see that yo
In theory you shouldn't need playwright to download browsers, so just tell it not to.
In theory you shouldn't need playwright to download browsers, so just tell it not to.
```
```shell
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 npm install
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 npm install
```
```
@ -107,7 +106,7 @@ This isn't as needed on Linux as OSX, because the Playwright project forces peop
If this doesn't work then this might https://github.com/nodejs/node-gyp/blob/main/docs/Updating-npm-bundled-node-gyp.md which says that npm updates don't update the node-gyp it uses internally. Depending on your version you will have to run different commands, but this works for 7,8, and 9 versions:
If this doesn't work then this might https://github.com/nodejs/node-gyp/blob/main/docs/Updating-npm-bundled-node-gyp.md which says that npm updates don't update the node-gyp it uses internally. Depending on your version you will have to run different commands, but this works for 7,8, and 9 versions: