🌲 A programming environment in an HTML page
GPL-3.0 License
Verse is a browser-based coding tool that makes it simple to create programs and games and share them with others.
Verse is designed with beginners in mind. It's a great way to start learning to code. But even professional programmers will find it useful for sketching ideas, performing code katas, or bringing their side projects to life.
Try it out! Here's a simple program you can copy-paste to get started.
define({
*run() {
let name = yield waitForInput("Hello! What's your name?")
yield log('Nice to meet you, ' + name + '!')
yield wait(1)
yield retry(run())
}
})
In addition to accessing Verse online,
you can download past versions
from the releases page.
Just click the link for the verse.html
file of the version
you want.
To use the file, open it in a web browser. On most systems, you can double-click the file to open it.
Once you've downloaded a copy of Verse, you can use it anywhere—even without an Internet connection!
You can find the Verse Documentation, including "getting started" tutorials and a reference manual, here.
We value simplicity, speed, beauty, and openness. The principles Verse uses to support these values are described below.
And, perhaps most importantly...
Thanks to JS.ORG for providing the verse.js.org domain!
The rest of this document is intended for programmers who work on the code for Verse itself.
Thanks for your interest in contributing to Verse! At this point, what Verse really needs is not more code but more users.
I would greatly value your feedback on what works or doesn't work for you as you use Verse. Send me code, bug reports, and general frustrations. If you'd like to collaborate with me on some code over Skype or whatever, let me know via a Github issue.
If you really really want to work on something in this repo, the documentation is a good place to get started.
To work on the code for Verse itself, do the following:
yarn
to install dependencies.yarn run start
to open a development version of theyarn run test
to start theVerse is monolithic and lacks affordances for plugins. That's by design. Verse is intended to provide a self-contained programming experience that's consistent across time, space, operating systems, and browsers.
Of course, there is no one-size-fits-all approach to programming, and you will likely want to add things to Verse that reflect your own philosophy. We encourage you to do so by forking this repository and making whatever changes you want.
Forking follows much the same process as contributing, but instead of making a pull request for your changes, you'll want to distribute your version of Verse. Here's how to do that:
./build-standalone-html
script. This generatesbuild/index.html
file.build/index.html
in a browser to make sure it works.build/index.html
with the world. If you wantThe GNU General Public License requires you to make source code available for any copies of Verse (modified or unmodified) that you distribute. This can be as simple as providing a link to your GitHub repository.
Copyright © 2018, Ben Christel
Verse is distributed under the GNU General Public License, Version 3.
This goes without saying, but to clarify: you may distribute code you write using Verse under any license you choose. Verse imposes no restrictions on what you can do with code that you write. For more information, please see the license clarification.