chore: remove internal docs from repo, update public documentation

Remove docs/superpowers/, .claude/ config, and PRD.md from version
control (kept locally via .gitignore). Update README, CHANGELOG,
VitePress docs, and .env.example to reflect recent features: Files
page, teams, admin settings, persistent storage, and various API
improvements.
This commit is contained in:
Siddharth Kumar Sah
2026-03-26 01:11:40 +08:00
parent 3b4f522bf4
commit 627ff8a82c
99 changed files with 853 additions and 15277 deletions
+5 -2
View File
@@ -47,11 +47,12 @@ Shared TypeScript types, constants (like `APP_VERSION` and tool definitions), an
### API (`apps/api`)
A Fastify v5 server that handles:
- File uploads and temporary workspace management
- File uploads, temporary workspace management, and persistent file storage
- Tool execution (routes each tool request to the image engine or AI bridge)
- Pipeline orchestration (chaining multiple tools sequentially)
- Batch processing with concurrency control via p-queue
- User authentication, API key management, and rate limiting
- User authentication, teams, API key management, and rate limiting
- Admin settings (tool visibility, feature flags, cleanup config, branding)
- Swagger/OpenAPI documentation at `/api/docs`
- Serving the built frontend as a SPA in production
@@ -61,6 +62,8 @@ Key dependencies: Fastify, Drizzle ORM, better-sqlite3, Sharp, Zod for validatio
A React 19 single-page app built with Vite. Uses Zustand for state management, Tailwind CSS v4 for styling, and Lucide for icons. Communicates with the API over REST and SSE (for progress tracking).
Pages include a tool workspace, a Files page for managing persistent uploads and results, an automation/pipeline builder, and an admin settings panel.
The built frontend gets served by the Fastify backend in production, so there is no separate web server in the Docker container.
### Docs (`apps/docs`)
+2 -1
View File
@@ -26,6 +26,7 @@ All configuration is done through environment variables. Every variable has a se
| `STORAGE_MODE` | `local` | `local` or `s3`. Only local storage is currently implemented. |
| `DB_PATH` | `./data/stirling.db` | Path to the SQLite database file. |
| `WORKSPACE_PATH` | `./tmp/workspace` | Directory for temporary files during processing. Cleaned up automatically. |
| `FILES_STORAGE_PATH` | `./data/files` | Directory for persistent user files (uploaded images, saved results). |
### Processing limits
@@ -76,5 +77,5 @@ services:
The Docker container uses two volumes:
- `/data` -- Persistent storage for the SQLite database. Mount this to keep users, API keys, and saved pipelines across container restarts.
- `/data` -- Persistent storage for the SQLite database and user files. Mount this to keep users, API keys, saved pipelines, and uploaded images across container restarts.
- `/tmp/workspace` -- Temporary storage for images being processed. This can be ephemeral, but mounting it avoids filling up the container's writable layer.
+10 -9
View File
@@ -61,18 +61,19 @@ Start the dev server:
pnpm dev
```
This starts both the API server and the React frontend. The app opens at `http://localhost:5173` by default during development.
This starts both the API server and the React frontend. Open `http://localhost:1349` in your browser.
## What you can do
Once logged in, the sidebar lists every available tool. Pick one, upload an image, adjust the settings, and download the result.
The sidebar lists every tool. Pick one, upload an image, tweak the settings, download the result.
A few things to try first:
Some things to try first:
- **Resize** an image to specific dimensions or a percentage
- **Remove a background** using the AI-powered background removal tool
- **Compress** a photo to reduce file size before uploading it somewhere
- **Convert** between formats (JPEG, PNG, WebP, AVIF, TIFF)
- **Batch process** a folder of images through any tool
- Resize an image to specific dimensions or a percentage
- Remove a background with the AI tool
- Compress a photo before uploading it somewhere
- Convert between formats (JPEG, PNG, WebP, AVIF, TIFF)
- Batch process a folder of images through any tool
- Save results to the Files page for later
Every tool in the UI is also available through the [REST API](../api/rest), so you can script your workflows or integrate Stirling Image into other systems.
Every tool is also available through the [REST API](../api/rest), so you can script workflows or plug Stirling Image into other systems.