Skip to content

Playground for experimenting with and sharing short Amaranth programs on the web

License

Notifications You must be signed in to change notification settings

amaranth-lang/playground

Repository files navigation

Amaranth Playground

This repository contains the source code for the Amaranth Playground, a web application that introduces developers to the Amaranth HDL with zero installation required.

Technical details

This application is built on:

The amount of dependencies is intentionally kept minimal. All code processing tasks (TypeScript compilation, minification, bundling, polyfilling/transpilation, serving in development) are performed by esbuild, which is amazingly flexible and useful.

Development

Requires Node.js and npm. Install them and run:

npm install
npm run serve

This will start a local server at http://localhost:8000/ (or a subsequent port if this one is in use). Any modifications to the source will cause the application to be reloaded with the modifications applied.

If you are using Visual Studio Code, you can also use Shift+Ctrl+B instead.

Deployment

The latest commit in the main branch is deployed to the gh-pages branch, except in the amaranth-lang/playground repository. (This lets you show the changes made in your fork to others without them building the application on their machine.)

The latest commit in the live branch is deployed to the main branch of amaranth-lang/amaranth-lang.github.io, which is published at https://amaranth-lang.org/play/. To publish latest changes from the main branch, run git push origin main:live.

License

This application is released under the two-clause BSD license.