MeshyForge:基于 Meshy API 的 AI 3D 资产工作室
nhlutterodt/meshyforge
MeshyForge 是一个基于 Meshy API 的 AI 3D 资产工作室,支持文本生成 3D 与图像生成 3D,并提供重网格、重贴图、绑定、动画等后处理功能。它内置资产库、任务监控与多色 3MF 打印工具,API 密钥通过操作系统钥匙串存储,采用 Tauri 2 + React 19 构建,以 MIT 协议开源。
AI-powered 3D asset studio for generating, managing, and exporting 3D models via the Meshy API.
Screenshot
Features
- Text-to-3D & Image-to-3D — Generate 3D models from text prompts or reference images
- Post-processing — Remesh, retexture, convert, resize, rig, and animate models
- Image Generation — Text-to-image and image-to-image for reference creation
- Print Tools — Multi-color 3MF, mesh analysis, and repair
- Creative Lab — Seven two-stage prototype-to-build workflows
- Asset Library — Gallery with 3D preview, tagging, search, and batch export
- Task Monitor — Real-time progress tracking with OS notifications
- Secure API Key Storage — OS keychain integration (no plaintext keys on disk)
Prerequisites
- Node.js 22+ (with npm)
- Rust 1.75+ (install via rustup)
- Windows: WebView2 Runtime (pre-installed on Windows 10/11)
- macOS: Xcode Command Line Tools
- Linux:
webkit2gtkand related dependencies (see Tauri prerequisites)
Setup
Quick Start
# Clone the repository git clone https://github.com/nhlutterodt/meshyforge.git cd meshyforge # Install frontend dependencies npm install # Run in development mode npm run tauri dev
On first launch, open Settings and enter your Meshy API key. MeshyForge validates it and stores it in the operating system credential store; no environment file is used.
Windows-Specific Setup
Windows contributors should follow these steps to avoid common pitfalls.
1. Install Prerequisites
# Install Rust toolchain winget install --id Rustlang.Rustup # Install Node.js (if not already installed) winget install --id OpenJS.NodeJS
After installing Rust, refresh your PATH so cargo and rustc are available in the current terminal:
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")
Verify the installations:
node --version # Should print v22 or higher rustc --version # Should print 1.75.0 or higher cargo --version # Should match rustc
2. npm SSL Certificate Issue (Norton Antivirus)
If you use Norton Antivirus (or another security suite that injects its own CA certificates), npm install may hang with an unable to get local issuer certificate error. This happens because Norton sets NODE_EXTRA_CA_CERTS to its own certificate file, which overrides Node's built-in root store.
Fix: Export all Windows root certificates to a PEM file and point npm at it:
# Export all Windows root certs to a PEM file $certs = Get-ChildItem "Cert:\LocalMachine\Root" $pemPath = "$env:USERPROFILE\node-extra-ca-certs.pem" $pemContent = "" foreach ($cert in $certs) { $pemContent += "-----BEGIN CERTIFICATE-----`n" $pemContent += [Convert]::ToBase64String($cert.RawData, [Base64FormattingOptions]::InsertLineBreaks) $pemContent += "`n-----END CERTIFICATE-----`n`n" } [System.IO.File]::WriteAllText($pemPath, $pemContent) # Configure npm to use the exported certs npm config set cafile "$env:USERPROFILE\node-extra-ca-certs.pem" # Also set the environment variable for the current user [System.Environment]::SetEnvironmentVariable("NODE_EXTRA_CA_CERTS", "$env:USERPROFILE\node-extra-ca-certs.pem", "User")
You only need to do this once per machine. After that, npm install should proceed normally.
3. Install Dependencies & Run
npm install npm run tauri dev
4. First-Launch API Key
When the app launches, go to Settings, paste your Meshy API key, and click Save. The key is stored in the Windows Credential Manager — no .env file, no plaintext on disk. You only need to do this once per machine.
Note: This project was developed in a private repository. The public repository starts from a clean commit to ensure no sensitive data is exposed. The full development history is preserved in the private archive.
Build
# Build production installer for the current platform npm run tauri build # The installer will be in src-tauri/target/release/bundle/
Download
Download the latest release for your platform:
- Windows (x64): MeshyForge-x64.msi
- macOS (Apple Silicon): MeshyForge-ARM64.dmg
- macOS (Intel): MeshyForge-Intel.dmg
- Linux (x64): MeshyForge-x64.AppImage
See all releases: Releases page
Documentation
- User Guide
- Security Policy
- Technical Design Document
- Tech Stack Specification
- UI/UX Documentation
- Coding Standards
- Feature Requirements
- Repository Expectations
- Implementation Execution Plan
Tech Stack
| Layer | Technology |
|---|---|
| Desktop Framework | Tauri 2 (Rust backend) |
| Frontend | React 19 + TypeScript 5.7 |
| Build Tool | Vite 6 |
| Styling | Tailwind CSS 4 + shadcn/ui |
| State | Zustand (UI) + TanStack Query (server) |
| 3D Preview | React Three Fiber + Three.js |
| Database | SQLite (rusqlite) |
| Secret Storage | OS Keychain (keyring crate) |
| Testing | Vitest + Testing Library + Playwright |
See the Tech Stack Specification for the full technology baseline.
License
MIT
来源:GitHub · github.com