Haystack is a bookmark knowledge base and AI chat app built with Vite, Nitro v3 (h3 v2), TanStack Router, React, Tailwind CSS v4, Better Auth, Prisma, Pinecone, and Trigger.dev.
Install dependencies with Bun:
bun installCopy .env.example to .env and provide:
DATABASE_URL=BETTER_AUTH_SECRET=BETTER_AUTH_URL=http://rig:3003GROQ_API_KEY=PINECONE_API_KEY=FIRECRAWL_API_KEY=TRIGGER_SECRET_KEY=Generate the Prisma client and start the app:
bun run db:generate
bun run devThe development server runs at http://rig:3003.
bun run dev— run the Vite/Nitro development server on port 3003bun run build— create the production buildbun run preview— preview the production buildbun run typecheck— run TypeScript without emitting filesbun run db:generate— generate the Prisma clientbun run db:migrate— create and apply development migrationsbun run db:deploy— apply production migrationsbun run auth:generate— update the Better Auth Prisma schemabun run trigger:dev— run Trigger.dev locallybun run ui:add @iconiq/b-button— add an editable Iconiq UI component from the registry
Iconiq UI is configured as a shadcn-compatible registry in components.json.
Use the namespaced component address when adding components:
bun run ui:add @iconiq/b-buttonThe generated files are copied into src/components/ui so they remain editable
in this project. The registry is available at https://iconiqui.com/r/{name}.json.