{title:"Video",icon:"video",description:"Easy video playback with aspect ratios.",url:"/client/#/bando/components/video/"},
{title:"WebTorrent",icon:"tornado",description:"Sharing the load with WebTorrent.",url:"/client/#/bando/components/WTVideo/"},
{title:"HLS Streaming Video",icon:"cast",description:"Efficient streaming of video, even on platforms without HLS support.",url:"/client/#/bando/components/HLSVideo/"},
{title:"Payments",icon:"dollar-sign",description:"Fully implemented support for Paypal, Stripe, and Bitcoin.",url:"/client/#/bando/components/"},
{title:"JSON APIs",icon:"curly-braces",description:"Simple implementation of JSON API backends.",url:"/client/#/docs/lib/api.js"},
{title:"Database ORMs",icon:"database",description:"Database access with a simple ORM and admin control panel.",url:"/client/#/bando/components/DataTable/"},
{title:"UI Components",icon:"layout",description:"Full set of demo components to study and use.",url:"/client/#/bando/components/"},
{title:"Admin Dashboard",icon:"keyboard",description:"Simple admin dashboard for development and management.",url:"/admin/#/"},
{title:"Email",icon:"mail",description:"Email templates, sending emails, and testing your email setup.",url:"/client/#/docs/lib/email.js"},
<h2class="center-text">An educational fullstack web development framework.</h2>
<pclass="center"style="--w: min(100%, 800px)">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.</p>
<h2class="center-text"style="font-size: 1.2em;">A project of <ahref="https://learnjsthehardway.com/">Learn JavaScript the Hard Way</a></h2>
</hero>
<text-photo>
<div>
<h1>Production Capable</h1>
<p>The Bandolier isn't "student grade". It's based on code used to power <ahref="https://learnjsthehardway.com">learnjsthehardway.com</a> supporting thousands of users all watching thousands of hours of <b>video</b>. <b>Yet, it's still easy to study and use.</b> The Bandolier demonstrates that you don't have to be complicated to be useful.</p>
<p>The code isn't hidden away in a convoluted tree of directories and <code>node_modules</code>. It's readily available for you to view, study, change, or even replace as you need. No only that but The Bandolier <b>advocates</b> 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 <ahref="https://go.dev/">Go</a> backend? Go for it. </p>
</div>
</text-photo>
<text-center>
<h2class="center-self">Full Featured</h2>
<pclass="no-flex center-self"style="--w: 50%">The Bandolier comes with nearly everything you need, and a lot of things modern web developers shouldn't have to implement. Authentication, standard <ahref="https://www.npmjs.com/package/bcryptjs">bcrypt</a> password storage, <ahref="/client/#/bando/components/HLSVideo/">HLS Video Streaming</a>, and <ahref="/client/#/icons/">icons</a> are just a few of the <ahref="/client/#/bando/components/">convenient features</a>. And, if you don't like how The Bandolier does it, then <b>replace it</b>.</p>
<pclass="center-self no-flex"style="--w: 50%">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. <b>There's even a template generator to start all of your files in each step.</b> Each new step in the development process requires only 1 or 2 new files, and everything keeps working as you work.</p>
<p>If you're just starting out it's hard to know what to do next. The Bandolier supports a <b>personal development process</b> 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.</p>
<p>This app is a work in progress so warping it to your phone isn't done yet. You can just go straight to <ahref="/client/#/">the docs</a> and when you're serious go find a real computer and stop making people support your phone for reading professional documentation.</p>