The Bandolier

An educational fullstack web development framework.

A belt full of web development ammunition. A full featured web framework designed to be studied. The Bandolier contains simple implementations of almost every feature found in other frameworks, but in small easily studied forms.

A project of Learn JavaScript the Hard Way

Production Capable

The Bandolier isn't "student grade". It's based on code used to power learnjsthehardway.com supporting thousands of users all watching thousands of hours of video. Yet, it's still easy to study and use. The Bandolier demonstrates that you don't have to be complicated to be useful.

Low Friction Progress

The code isn't hidden away in a convoluted tree of directories and node_modules. It's readily available for you to view, study, change, or even replace as you need. No only that but The Bandolier advocates copying, modifying, and replacing code as you learn. All of the components are loosely coupled and easily replaced. Don't like my ORM? Use your favorite. Want to write a Go backend? Go for it.

Full Featured

The Bandolier comes with nearly everything you need, and a lot of things modern web developers shouldn't have to implement. Authentication, standard bcrypt password storage, HLS Video Streaming, and icons are just a few of the convenient features. And, if you don't like how The Bandolier does it, then replace it.

Video

Easy video playback with aspect ratios.

WebTorrent

Sharing the load with WebTorrent.

HLS Streaming Video

Efficient streaming of video, even on platforms without HLS support.

Payments

Fully implemented support for Paypal, Stripe, and Bitcoin.

Authentication

Authentication with bcrypt secure password storage.

JSON APIs

Simple implementation of JSON API backends.

Database ORMs

Database access with a simple ORM and admin control panel.

UI Components

Full set of demo components to study and use.

Admin Dashboard

Simple admin dashboard for development and management.

Email

Email templates, sending emails, and testing your email setup.

Progressive Development

Other frameworks make you create 4, 5, or sometimes 10 different files just to get a "Hello World" going. The Bandolier requires 1 new file to start, and editing 1 other file. There's even a template generator to start all of your files in each step. Each new step in the development process requires only 1 or 2 new files, and everything keeps working as you work.

Learn a Personal Process

If you're just starting out it's hard to know what to do next. The Bandolier supports a personal development process that takes you from an initial UI to a working application in logical steps. The process is the result of watching thousands of beginners struggle with getting started, and has worked to help them start and finish their projects.

Photo by Ealdgyth

The Fastest Quick Start in the West*


npm install git+https://git.learnjsthehardway.com/learn-javascript-the-hard-way/ljsthw-bandolier.git
npx bando-up create my-project
cd my-project
npm install
npm run knex migrate:latest
node bando.js init
npm run DANGER_ADMIN


    
* Fast is defined as relative to the speed of node_modules LOL.

Read the Full Quick Start Guide

Current Status

The Bandolier is currently ready for testing and about 50% of the documnetation is written. You can currently access all of the documentation, and soon there will be a way to play with the administrator console.

Get Off Ya Phone

This app is a work in progress so warping it to your phone isn't done yet. You can just go straight to the docs and when you're serious go find a real computer and stop making people support your phone for reading professional documentation.