ShroudEdit is the website, API, and desktop app for discovering and publishing Enshrouded community projects. This monorepo contains the frontend, Labrinth API, shared UI, app, and API client.
The ShroudEdit API accepts ShroudForge Blueprint (.sfbp) V7 files and stores them unchanged. The format and desktop OAuth S256 PKCE upload flow are described in the SFBP reference.
- Open the website
- Browse Enshrouded mods
- Browse World Editor blueprints
- Download the app
- Read the documentation
This repository uses pnpm workspaces and Turborepo.
- Install the repository's pnpm version and dependencies with
pnpm install. - Configure the frontend environment for the services you use locally.
- Start the website with
pnpm web:dev.
Read the root AGENTS.md and the project-level instructions before changing a project. Frontend setup covers website development; Labrinth setup covers API and database requirements.
| Path | Purpose |
|---|---|
apps/frontend |
ShroudEdit website |
apps/labrinth |
Rust API, accounts, projects, and version uploads |
apps/app and apps/app-frontend |
Desktop app and its frontend |
packages/api-client |
Shared API client |
packages/ui |
Shared Vue components |
packages/assets |
Shared icons, illustrations, and styles |
Monetization features are disabled by default. Set MONETIZATION_ENABLED=true for both the website and API to enable them again. The switch keeps the implementation and existing project data available while hiding the related routes and stopping their background jobs.
Before opening a pull request, read the applicable project instructions and contributing guide. Report bugs or request features through GitHub Issues.
Report security issues through the ShroudEdit security page.
Apps and packages may use different licenses. Check the license file for the component you use, such as frontend, Labrinth, API client, UI, or assets.