Pascal Editor

Create and share 3D architectural projects with powerful web-based tools

22,763
Stars
2,888
Forks
45
Open Issues
122
Subscribers

Powerful Features for Architectural Design

🏗️

3D Building Editor

Create detailed architectural models with walls, floors, ceilings, and custom elements using an intuitive interface.

🎨

WebGPU Acceleration

Experience high-performance 3D rendering with WebGPU technology for smooth, real-time visualization.

🔧

Extensible Architecture

Built with a plugin system that allows custom node types, tools, and UI components for specialized workflows.

📐

Precision Tools

Advanced geometric systems including CSG operations, spatial grid management, and accurate placement validation.

💾

Local Persistence

Works offline with local storage using the CLI, keeping your projects safe and accessible anywhere.

🤖

AI Integration

Model Context Protocol support for AI-powered design assistance and automation through agent skills.

Modern Technology Stack

React 19

Latest React features for building dynamic UIs

Three.js

WebGPU renderer for high-performance 3D graphics

React Three Fiber

Declarative Three.js integration with React

Zustand

Lightweight state management

Next.js 16

Full-stack React framework

Turborepo

Monorepo management and build optimization

TypeScript

Type-safe development experience

Bun

Fast package manager and runtime

Getting Started

Install Pascal Editor locally with Node.js 22.13 or newer:

npx @pascal-app/cli editor

This command starts the editor and an authenticated MCP service in the background, selects collision-free loopback ports, and keeps projects in ~/.pascal/data/pascal.db.

For Development:

# Install dependencies
bun install

# Run development server
bun dev

This builds packages and starts the Next.js editor dev server at http://localhost:3002 with hot reload enabled.

Modular Architecture

Core Packages

@pascal-app/core Schema & State
@pascal-app/viewer 3D Rendering
@pascal-app/editor Editing Tools
@pascal-app/nodes Built-in Elements
@pascal-app/cli Local Runtime

Key Features

  • ✓ Flat node hierarchy with parent-child relationships
  • ✓ Zustand store with persistence and undo/redo
  • ✓ Dirty node system for efficient updates
  • ✓ Spatial grid for collision detection
  • ✓ Event bus for inter-component communication
  • ✓ Plugin system for extensibility

Core Contributors