What is Ada?
AdaEngine is a game engine written in Swift for building 2D and 3D games and user interfaces. It combines a data-oriented ECS, rendering, physics, animation, and AdaUI. Build games in Swift, or use AdaScript with Ada Studio.
Games made with AdaEngine
Skeletal Garden
Skeletal Garden is a playable 3D demo with animated characters, textured props, lighting, shadows, and a landscape to explore.
Explore the whole garden
2D Demo
Medieval Arena is a pixel-art arena game with tile maps, movement, sword combat, and multiplayer gameplay written in AdaScript.
Ada Studio
Ada Studio is the companion editor for AdaEngine. Create projects, edit code and scenes, and run your games from a desktop or mobile workspace.
| Ada Studio Desktop | Ada Studio Mobile |
|---|---|
|
|
Design Goals
- Capable: Offer a complete 2D feature set.
- ECS: Ada is based on the data-oriented paradigm using a self-written ECS. Ada has been inspired by Apple's RealityKit framework.
- Simple: Ada is easy to use, and our main goal is to enable a quick start and deliver quick results.
📕 Docs
- API Docs: Ada's API docs, which are automatically generated from the doc comments in this repo.
- Tutorials: Ada's official tutorials with how to start your first project.
- Building & Contributing Guides: Building, Contributing
- Architecture Decision Records: Accepted architectural decisions and their implementation status.
- Playground Mascot: Character guide, turnaround views and detailed generation prompts.
⭐️ Examples
- Ada Awesome Projects: Ada's official Awesome Projects page. Feel free to explore.
- Ada Examples: Ada's internal examples.
Getting started
We recommend checking out the Create your first project guide for a brief introduction.
To draw a plain window with standard functionality use:
import AdaEngine
@main
struct AdaEditorApp: App {
var body: some AppScene {
DefaultAppWindow()
.windowMode(.windowed)
.windowTitle("Ada")
}
}
👥 Community
If you want to discuss this library or have a question about how to use it to solve a particular problem, there are a number of places you can discuss with fellow
* For long-form discussions, we recommend the discussions tab of this repo.
👨💻 Contributing to Ada
You are welcome to contribute to Ada. Currently, it is under development, and we are working towards our roadmap goals. If you find a bug or have some improvements, we would be glad to see your pull request! See CONTRIBUTING.md for details.
🛠️ How to build
See the Building guide for development and integration steps.
Quick start: open Package.swift in Xcode 26.3 or build from the command line with swift build.