Create self-guided workshops using electron.
What you see here is a very early version of Adventuretron. Expect breaking changes.
To see an example of an Adventuretron workshop, check out this work in progress workshop that teaches creating Adventuretron workshops: adventuretron-adventure.
- basic i18n support.
- value, code, & file input challenges
- navigation & verification of challenges
All participants in the production of Adventuretron projects are expected to follow the code of conduct.
This project is inspired by a number of others:
- The original terminal-based packages for creating NodeSchool workshops: adventure & workshopper.
- jlord's awesome git-it-electron workshop.
- shader school & webgl-workshop by hughsk & mikolalysenko
After making javascripting and running a few nodeschool events, I've found that folks struggle with reading all the instructions in the terminal. In part this can be due to various cross-platform issues with specific versions of node. Additionally, trying to have colorized terminal output that is accessible for everybody seems weirdly difficult.
Electron can help with this. git-it-electron is a great example of how we can have clear, readable instructions in a cross-platform desktop app that still encourages people to learn using the same tools they'd regularly use doing this kind of work.
This is still early in development, so there are a few undecided elements of this project that you might be able to help with. Each item below has a corresponding issue.
I like imagining a robot named adventuretron
adventuring around the interwebs teaching technology & advancing digital equity. But it's not really a clear name. It does reasonably portray the origins and prior art of the project: a package based on adventure that depends on electron. Your thoughts?
Issue #1
There are some file system limitations to building apps that work on the web compared to building them as electron apps. But maybe those can be overcome? Issue #2
I expect there will be separate adventuretron modules for the main electron process and the renderer process. See an early sketch of how the API might look: Issue #3
Based in part on the i18n implementation in the workshopper-adventure module, I'm making localization in adventuretron a high priority. What will make translating adventuretron apps easiest for you? Issue #4