AI Knowledge Cloud is a free, curated collection of the best Work & Study tools designed to improve your productivity when building your next project.
In today's fast-paced tech world, keeping up with the constant stream of new software development tools can be challenging. That's where DevSuite comes in. The mission is simple: to help Work & Studys like you find the perfect tools to improve your workflow and bring your ideas to life more efficiently.
DevSuite is more than just a directory; it's a community-driven resource. Feel free to explore, discover, and contribute by submitting your favorite tools to the site. Your input is invaluable in helping to grow and maintain a comprehensive, up-to-date collection.
This project uses Bun as the package manager and runtime. Make sure you have Bun installed before proceeding.
To set up the project for development:
- Clone the repository
- Run
bun installin the root directory to install all dependencies - Set up the required environment variables (see below)
- Start the local infrastructure with
docker compose up -d postgres qdrant infinity - Either run
bun run db:pushfor an empty local database orSYNC_SOURCE_DATABASE_URL=... bun run db:bootstrap:devto clone the current cloud PostgreSQL data into local PostgreSQL - Create symlinks for the .env file (see Environment Variables section)
- Run
bun run devto start the web application in development mode
Refer to the .env.example file for a complete list of required variables.
All commands are run from the root of the project, from a terminal:
| Command | Action |
|---|---|
bun install |
Installs dependencies |
bun run dev |
Starts web app in development mode at localhost:5175 |
bun run build |
Build both apps for production |
bun run icons |
Generate SVG sprite and icon manifest from assets/icons |
bun run start |
Preview production build locally |
bun run lint |
Run linter |
bun run format |
Format code |
bun run typecheck |
Run TypeScript type checking |
bun run db:generate |
Generate Prisma client |
bun run db:studio |
Start Prisma Studio |
bun run db:push |
Push Prisma schema to database |
bun run db:pull |
Pull Prisma schema from database |
bun run db:reset |
Reset Prisma schema |
bun run db:bootstrap:dev |
Clone cloud PostgreSQL into local PostgreSQL, redact dev PII, sync schema, and rebuild local Qdrant |
bun run db:bootstrap:vps |
Clone cloud PostgreSQL into the VPS PostgreSQL, sync schema, and rebuild local Qdrant |
bun run db:verify:sync |
Compare source and target PostgreSQL schema/data after bootstrap |
DevSuite uses the following third-party services:
- Database: PostgreSQL in the local/VPS Compose stack, with cloud PostgreSQL used only as a bootstrap source during migration
- Background Jobs: Inngest
- File Storage: AWS S3
- Screenshots: ScreenshotOne
Make sure to set up accounts with these services and add the necessary environment variables to your .env file.
The primary deployment target is the bundled VPS Docker Compose stack.
For the first production cutover:
- Prepare the VPS stack and environment file
- Run
COMPOSE_ENV_FILE=/srv/stukit/shared/.env.production bash ./scripts/bootstrap-postgres.sh vps - Verify the imported PostgreSQL data and rebuilt Qdrant state
- Switch traffic to the VPS stack
- Retire the cloud PostgreSQL source and Vercel deployment after your rollback window closes
For a local containerized stack with the application, Caddy, PostgreSQL, PostgREST, Qdrant, and Infinity:
- Optionally copy
.env.exampleto.envand replace any placeholder values you actually use - Start the stack with
docker compose up --build
To bootstrap local PostgreSQL from the current cloud database:
- Set
SYNC_SOURCE_DATABASE_URLin.envor export it in your shell - Run
bun run db:bootstrap:dev
Local endpoints:
- App via Caddy:
http://localhost - PostgREST via Caddy:
http://localhost/postgrest/ - Qdrant via Caddy:
http://localhost/qdrant/ - Infinity via Caddy:
http://localhost/infinity/ - PostgreSQL direct port:
localhost:5432 - Qdrant direct port:
localhost:6333 - Infinity direct port:
localhost:7997
Notes:
- The compose stack defaults to local placeholder values for required app secrets, so it can boot without a fully populated
.env - The compose stack always points the app to the local PostgreSQL, Qdrant, and Infinity containers, even if your repo
.envcontains remote service URLs - The pg_dump/pg_restore bootstrap runs in a dedicated ops-only Compose service (
pg-tools), so you do not need host-installed PostgreSQL client tools bun run db:bootstrap:devrecreates the local PostgreSQL database, verifies the import, reapplies PostgREST grants, redacts developer-local email fields, pushes the Prisma schema, and rebuilds local Qdrant- Prisma schema sync is handled automatically by the
migrateservice before the app starts - PostgREST is configured against the same local PostgreSQL database and reads the Prisma-managed
publicschema - Infinity uses the upstream
michaelf34/infinity:latest-cpuimage with a persisted Hugging Face cache volume and defaults tosentence-transformers/all-MiniLM-L6-v2
DevSuite is licensed under the GPL-3.0 License.