-
Notifications
You must be signed in to change notification settings - Fork 0
Contributing
Open Planner Studio is open source under the LGPL-3.0 license and part of the OpenAEC-Foundation family of desktop apps. Contributions are welcome.
| Layer | Technology |
|---|---|
| Desktop shell | Tauri 2 (Rust) |
| Frontend | React 19 + TypeScript |
| Rendering | HTML5 Canvas 2D |
| State | Zustand + Immer |
| Styling | TailwindCSS 4 + component CSS |
| i18n | react-i18next (14 languages) |
| Build | Vite 7 |
The Rust shell is deliberately thin: all IFC parsing and serialization, scheduling and rendering live in TypeScript. IFC 4.3 is the native file format — loading a project parses IFC, saving serializes the whole app state back to IFC.
- Node.js (with npm)
- Rust plus the Tauri 2 prerequisites for your OS — only needed for the desktop build; the browser build needs Node alone.
# Install dependencies
npm install
# Start the browser dev server (http://localhost:3007)
npm run dev
# Build the production web bundle
npm run build
# Run the desktop app
npm run tauri:dev
# Build desktop installers
npm run tauri:buildtsc (run via npm run build) is the main static check — TypeScript is in strict mode. The
behavioural suite covers CPM and calendar scheduling:
bash tests/planning/run.shRun it after changing scheduling code.
See the repository's README.md and CLAUDE.md for a tour of the source tree — the main areas are
src/components (React shell), src/engine (Canvas renderer and CPM scheduler), src/services
(IFC, import/export, print, updater), src/state (Zustand store) and src/i18n (14 languages).
To extend the app without modifying the core, write an extension — see Extensions Authoring.
By contributing you agree that your contributions are licensed under the project's LGPL-3.0 license.
public/docs/en/ and docs/wiki/ — direct wiki edits are overwritten on the next release.
Open Planner Studio · LGPL-3.0 · part of the OpenAEC-Foundation
Open Planner Studio
Getting started
Guides
- Planning & WBS
- Relations & constraints
- Calendars & hour planning
- Resources, histogram & leveling
- Baselines & progress
- Critical path & advanced analysis
- Import/export
- Reports & printing
- Keyboard shortcuts & controls
Reference
- Task dialog
- Calendar dialog
- Resource calendar
- Leveling options
- Baseline management
- External links
- Codes & fields (structure)
- Filters
- Choosing columns
- Saving and loading layouts
- Project information
- Settings
- Managing and installing extensions
- Recovering after a crash
- Keyboard shortcut reference
Project