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
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.
🚧 Work In Heavy Progress. Ultra-Experimental. 🚧
- 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.
- 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.
- 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
Platform Support | Web | Windows | MacOS | Linux | Android | iOS |
---|---|---|---|---|---|---|
Engine dev | × | ○ | ? | ○ | × | × |
Game dev | × | ○ | ? | ○ | × | × |
Game re-dev | ○ | ○ | ○ | ○ | ○ | ○ |
Game run | × | ○ | ? | ○ | × | × |
- Assets: Accessory code improves engine usability
- docs: Documents
- Engine: Engine Folder
- SDK: Software Development Kit
- UtilityScripts: Tool scripts improve engine flow
Thanks to qsjl11's pyera project for providing inspiration and reference of API naming for this project;