Skip to content

mitgdev/mitg.forge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

MiForge Example

Discord

MiForge is a portal/AAC inspired by tibia.com, focused on multi-world, performance, and Developer Experience (DX) for Crystal and Canary based servers.

πŸ”— Preview: https://miforge.mitg.dev

Project Status

Module Status Progress
AAC (API) 🟒 Active
AAC (Web) 🟒 Active
Client (OTC) πŸ”Ž Planned

Index


Overview

MiForge's goal is to be a complete and modern AAC for Tibia servers:

  • Panel inspired by the original tibia.com experience.
  • Support for multi-world and multi-server.
  • Focused on full-stack TypeScript, performance, and DirectX.
  • Designed to be open and extensible for the OT community.

Tutorials & Documentation


Features

Already Implementing / In Progress

  • πŸ§‘β€πŸ’» Account Management (login, account creation, lost account).
  • πŸ” Infrastructure for secure authentication (with 2FA/TOTP support on the roadmap).
  • 🎨 Themed frontend with Tibia-style layout.
  • 🧱 Monorepo with clear separation between API, Web, and shared packages.

Planned

  • πŸ“Š Rankings (XP, skills, frags, etc.).
  • πŸ“° News/Announcements module.
  • πŸ‘₯ Guild/Community system.
  • πŸ”‘ Advanced integration with Crystal/Canary (player status, worlds, etc.).
  • πŸš€ Dedicated Launcher & Client within the same MiForge ecosystem.

(The list above may change β€” see the Roadmap and issues for the most recent status.)


Architecture

MiForge is a TypeScript-first monorepo organized into:

  • apps/api – MiForge API
    • Bun + Hono
    • ORPC for typed contracts between front and back end
    • Prisma as ORM
    • tsyringe for dependency injection (services, repositories, clients, etc.)
  • apps/web – Portal frontend
    • React + Vite
    • Tailwind CSS
    • TanStack Router / TanStack Query
    • Custom UI in the style of tibia.com
  • packages/* – Shared packages
    • Zod schemas, shared types, SDK/API client, reusable components, etc.
  • docker/ – Supporting files for deploying the database/other services under development
  • docs/ – Documentation materials and assets (including screenshots)

Supporting tools:

  • PNPM for managing dependencies.
  • Turborepo for orchestrating builds, lint, tests, etc.
  • Husky + lint-staged + Biome for code standardization and commit hooks.
  • Integration with Sonar for static analysis.

Screenshots

Example of the login/Account Management screen:

MiForge Example


How to run in development

Prerequisites

  • Node.js / Bun installed
  • PNPM installed (corepack enable)
  • Docker + Docker Compose installed

Step-by-step

# 1. Clone the repository
git clone https://github.com/mitgdev/mitg.forge.git
cd mitg.forge

# 2. Copy the environment file and adjust the variables
cp .env.example .env
# edit .env with your settings (DB, Redis, etc.)

# 3. Start the dependencies (database, etc.)
docker compose up -d
# or
# docker-compose up -d

# 4. Install the monorepo dependencies
pnpm install

Contributing

Contributions are very welcome! πŸ’œ

  1. Fork the repository.
  2. Create a branch for your feature/fix:
git checkout -b my-feature
  1. Lint, build, and test your code locally:
  2. Open a Pull Request describing your changes.

Before contributing, please read:


License

This project is distributed under the license described in LICENSE.


Legal notice

Tibia is a registered trademark and property of CipSoft GmbH. MiForge is a community project and is not affiliated with, endorsed by, or supported by CipSoft.

About

AAC for Tibia Server (Crystal | Canary)

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •