Skip to content

MindustryTool/ProjectEditor

Repository files navigation

Project Editor

Offline-first Mindustry mod editor — edit metadata, manage assets, build logic graphs, and pack your mod, all from your browser.

TypeScript React TanStack Start Tailwind CSS shadcn/ui pnpm Turborepo

Features

Mod Editing
  • Edit mod metadata & content definitions
  • Manage assets & localization strings
  • JSON / HJSON editing with syntax highlighting
File System
  • Open / save local folders via the File System Access API
  • Import / export mods as ZIP archives
  • Autosave with persistent local workspace (IndexedDB + OPFS)
Visual Editors
  • Logic graph editor for processor code
  • Tech tree editor for content relationships
  • Content graph tools for dependency visualization
Offline First
  • Installable PWA with full local caching
  • Zero server dependency — everything runs client-side
  • Works fully disconnected after first load

Getting Started

Prerequisites

  • Node.js >= 22
  • pnpm >= 10
npm install -g pnpm

Installation

git clone https://github.com/your-org/project-editor.git
cd project-editor
pnpm install

Run

# Start all apps in development
pnpm dev

# Start only the web app (TanStack Start)
pnpm --filter @app/web dev

# Start only the desktop-style app
pnpm --filter @app/app dev

Build

pnpm build
pnpm typecheck

Project Structure

apps/
├── web/        TanStack Start (SSR browser app, PWA target)
└── app/        Vite + React (standalone / native wrapper target)

packages/
├── config/     Shared constants & defaults
├── core/       Business logic & project models
├── fs/         File System Access API adapter
├── state/      Zustand store for global state
├── storage/    IndexedDB / OPFS persistence layer
├── ui/         Shared React UI components (Button, FileTree, Editor)
├── utils/      Debounce, throttle, file-size formatting
├── validation/ Zod schemas for project & settings
└── zip/        fflate wrapper for ZIP compress/extract

tooling/
├── eslint/     Shared ESLint flat config
├── typescript/ Shared tsconfig presets
└── prettier/   Shared Prettier config

Website

Production: https://project-editor.mindustry-tool.com (placeholder)
Staging: https://staging.project-editor.mindustry-tool.com (placeholder)


License

Distributed under the MIT License. See LICENSE for details.


Support & Contact

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages