-<span class=navbar-toggler-icon></span></button><div class="collapse navbar-collapse" id=navbarToggler><ul class="navbar-nav mr-auto mt-2 mt-lg-0"><li class=nav-item><a class=nav-link href=/about.html>About</a></li><li class=nav-item><a class=nav-link href=/blog.html>Blog</a></li><li class=nav-item><a class=nav-link href=/gallery.html>Gallery</a></li><li class=nav-item><a class=nav-link href=/download.html>Download</a></li><li class=nav-item><a class=nav-link href=/docs.html>Documentation</a></li><li class=nav-item><a class=nav-link href=/community.html>Community</a></li></ul></div></nav><div class="position-relative overflow-hidden p-3 p-md-5 m- md-3 text-center bg-dark bg-grid"><div class="col-md-8 p-lg-5 mx-auto my-5 text-white"><h1 class="title display-4 font-weight-normal">EndBASIC</h1><p class="lead font-weight-normal">BASIC interpreter + DOS environment, reimagined.</p><a class="btn btn-primary btn-lg" href=https://repl.endbasic.dev/ target=_new>Launch interpreter</a></div></div><article class=container-fluid><div class="row my-3 mx-lg-1 p-3 index-tile"><div class=col-lg-6><img src=/images/front-intro-console.png></div><div class=col-lg-6><div class=copy><h2>Back to basics</h2><p>EndBASIC is an interpreter for a BASIC-like language and is inspired by Amstrad's Locomotive BASIC 1.1 and Microsoft's QuickBASIC 4.5. Like the former, EndBASIC intends to provide an interactive environment that seamlessly merges coding with immediate visual feedback. Like the latter, EndBASIC offers higher-level programming constructs and strong typing.</p><p>EndBASIC's primary goal is to offer a simplified and restricted DOS-like environment to learn the foundations of programming and computing, and focuses on features that quickly reward the learner. These include a built-in text editor, commands to manipulate the screen, commands to interact with shared files, and even commands to interact with the hardware of a Raspberry Pi.</p></div><p><a class="btn btn-primary btn-lg" href=about.html>💌 Motivation letter 💌</a><br><a class="btn btn-primary btn-lg" href=docs.html>📘 Read the docs 📘</a></p></div></div><div class="row my-3 mx-lg-1 p-3 index-tile"><div class=col-lg-6><img src=/images/2025-06-06-endbox-pair.jpg width=640></div><div class=col-lg-6><h2>A microcomputer just for EndBASIC</h2><div class=copy><p>EndBASIC is not just an interpreter project: it's a retro microcomputer too! The EndBOX, shown above, is an embedded device that boots straight into EndBASIC, offering you a quick programming playground and a game-producing platform.</p></div><p><a class="btn btn-primary btn-lg" href=/2025/06/unveiling-the-endbox.html>📣 Read the unveiling 📣</a><br><a class="btn btn-primary btn-lg" href=https://www.buymeacoffee.com/jmmv>💰 Make this happen 💰</a></p></div></div><div class="row my-3 mx-lg-1 p-3 index-tile"><div class=col-lg-6><img src=/images/front-games-arka.png></div><div class=col-lg-6><h2>Play and edit games</h2><div class=copy><p>A major goal of EndBASIC is to provide a playful environment in which to recreate old-style and simple videogames with ease, all while learning the foundations of programming. Proof of this is that, in just a couple hundred lines of code, you can replicate classics like Pong, Arkanoid, or Snake, and even implement more complex programs like Conway's Game of Life.</p></div><p><a class="btn btn-primary btn-lg" href=gallery.html>📐️ Browse projects 📐️</a></p></div></div><div class="row my-3 mx-lg-1 p-3 index-tile"><div class=col-lg-6><p><img src=/images/front-web-cloud.png></p></div><div class=col-lg-6><h2>Built for the web and the cloud</h2><div class=copy><p>EndBASIC is a web-native application that runs locally on your browser thanks to WASM. This allows you to enjoy the environment without having to install anything on your computer, and also lets you run the interpreter on mobile devices.</p><p>And... what are your creations if you are not able to share them with the world? In the 1980s, people shared their programs as magazine listings and you'd have to painfully type them in. That's a thing of the past though: EndBASIC lets you share your programs via a cloud file sharing service.</p></div><p><a class="btn btn-primary btn-lg" href=docs.html#cloud>☁️ Learn to share ☁️</a></p></div></div><div class="row my-3 mx-lg-1 p-3 index-tile"><div class=col-lg-6><img src=/images/front-rpi3-blink.png></div><div class=col-lg-6><h2>Tinker with hardware</h2><div class=copy><p>Outside of the web, EndBASIC can run as a local application on your desktop OS and currently supports Linux, macOS, Windows, and many other Unix-like systems. For the most part, the web and local interfaces expose the exact same features---with exceptions around hardware management.</p><p>Speaking of hardware management, EndBASIC is the perfect companion for a Raspberry Pi. With support for graphics, GPIO, and even an LCD, you can set up an exciting playful toy. Control physical buttons and LEDs, or run the aforementioned games on a tiny portable device.</p></div><p><a class="btn btn-primary btn-lg" href=download.html>👷 Download binaries 👷</a><br><a class="btn btn-primary btn-lg" href=docs.html#hw>🤖 Control hardware 🤖</a></p></div></div><div class="row my-3 mx-lg-1 p-3 index-tile"><div class=col-lg-6><pre>async fn parse_sample_input_and_extract_values() -> Result<()> {
0 commit comments