erajs
erajs copied to clipboard
A Text-based Game Engine written in JS and with Python as game scripts.
Language:
en
jp
zh
Era.js
Latest Version: v0.3.0-alpha.220622
The following contents is a description of the development target.
The current progress is subject to the progress shown in Roadmap
The current progress is subject to the progress shown in Roadmap
Overview
Description Updated on: 220622

Era.js is a next-generation cross-platform rich text game engine built by TypeScript + Python3, with Python3 as the game script. It is developed based on both web & desktop platform and Span Charm opinionated style library.
Notice
🚧 Work In Heavy Progress. Ultra-Experimental. 🚧
Development Philosophy
- Make full use of HTML5 technology to create a gorgeous, neat, rich, full of design sense of the game front end, only for text-based game;
- Carefully set up the API so that game developers can worry less about things that have nothing to do with content or gameplay;
- [WIP] All code cross-platform;
- The development environment, packaging and deployment must be simple and reliable;
- Be friendly to re-development;
- In principle, do not cut off any functionality provided by the technology used.
- Use the latest technology.
Features
- Easy to Operate
- Introduced HTML5 interface logic, easy to get started.
- Easy to Develop
- API design is intuitive, concise and comprehensive;
- The engine is development-friendly and modification-friendly;
- Typography, graphics, video, audio and other functions will be supported by the game engine native in the future.
Tech Stack
Core
- The front-end language:TypeScript
- User Interface Framework: Vue.js 3
- Responsive style library: Span Charm(opinionated style)
- The Back-end language(& Game Script): Python 3
Application Container for Desktop
Application Container for Mobile
Platform Support
| Platform Support | Web | Windows | MacOS | Linux | Android | iOS |
|---|---|---|---|---|---|---|
| Engine dev | × | ○ | ? | ○ | × | × |
| Game dev | × | ○ | ? | ○ | × | × |
| Game re-dev | ○ | ○ | ○ | ○ | ○ | ○ |
| Game run | × | ○ | ? | ○ | × | × |
Directory Structure
- Assets: Accessory code improves engine usability
- docs: Documents
- Engine: Engine Folder
- SDK: Software Development Kit
- UtilityScripts: Tool scripts improve engine flow
Thanks
Thanks to qsjl11's pyera project for providing inspiration and reference of API naming for this project;