Structured
automating from unstructured 3D models to structured 3D models that is engineer-grade and manufacturable
Core trick
Converts unstructured 3D models into structured, manufacturable CAD-style geometry with a Python backend.
Description
automating from unstructured 3D models to structured 3D models that is engineer-grade and manufacturable
README excerpt
# Struct Local Development Setup
Complete guide to run Struct with local backend.
## Prerequisites
- Node.js 18+ (for frontend)
- Python 3.9+ (for backend)
- pip (Python package manager)
## Quick Start
### 1. Setup Backend
```bash
cd backend
python -m venv venv
source venv/bin/activate # On macOS/Linux
pip install -r requirements.txt
```
### 2. Setup Frontend
```bash
# Already done if you've run npm install
npm install
```
### 3. Configure Environment
```bash
# Copy example env file
cp .env.example .env.local
# Edit .env.local and add your Marble API key (optional)
# NEXT_PUBLIC_WLT_API_KEY=your_key_here
```
### 4. Start Development Servers
**Option A: Use the startup script (recommended)**
```bash
./start-dev.sh
```
**Option B: Start manually**
Terminal 1 (Backend):
```bash
cd backend
source venv/bin/activate
python main.py
```
Terminal 2 (Frontend):
```bash
npm run dev
```
## Access the Application
- **Frontend**: http://localhost:3000
- **Backend API**: http://localhost:8000
- **API Documentation**: http://localhost:8000/docs
## Architecture
```
┌─────────────────┐
│ Frontend │
│ Next.js │
│ localhost:3000│
└────────┬────────┘
│ HTTP
▼
┌─────────────────┐
│ Backend │
│ FastAPI │
│ localhost:8000│
└────────┬────────┘
│
▼
┌─────────────────┐
│ CadQuery │
│ STEP Export │
└─────────────────┘
```
## API Endpoints
### Generate CadQuery (Async)
```bash
# 1. Submit job
curl