# SignalDesk Demo App for YC AI Growth Hackathon
A realtime agentic lead intelligence board, built on Convex for the AI Growth
Hackathon by Orange Slice. Drop in a company, get a buying signal score, a one
line summary, and a cold email draft, streamed live to every open client.
This is an open source demo app for the hackathon. Fork it, run it in five
minutes, and build your project on top.
- Repo: https://github.com/waynesutton/signdesk-demo-hackathon-app
- Hackathon: https://events.ycombinator.com/OrangeSliceHackathon
## Why this starter
- Realtime by default. Open two tabs, add a lead, watch both update. No websocket
code on your side.
- Ships on Convex. The `@convex-dev/static-hosting` component serves the built
React app from Convex storage, so there is no second host to manage.
- Bring your own OpenAI key. Set it securely with the Convex CLI. Until then the
app runs in demo mode with deterministic mock enrichment, so it works on first
run.
- Auth ready, auth off. Convex Auth wires up in minutes when you want it. See
docs/AUTH.md.
## What it does
1. You add a company with an optional website and a note about what they might
buy.
2. A Convex action enriches it with OpenAI (or the mock): a buying signal score
from 0 to 100, a hot, warm, or cold tier, a one line summary, and a cold
outreach email draft.
3. Status streams from queued to enriching to ready, live across all clients.
4. A live activity feed shows every event as it happens.
This maps to the hackathon tracks for signal detection, lead building, and cold
outbound. Pair it with the Orange Slice CLI agent (`npx orangeslice@latest`) for
prospecting and enrichment from your terminal: https://www.orangeslice.ai/agents
## Quick start
```bash
npm install
npx convex dev # first run writes VITE_CONVEX_URL to .env.local
npm run dev # in a second terminal
```
Open the local URL, add a company, then open a second tab to see realtime sync.
Switch on real AI by setting your own key on the backend:
```bash
npx convex env set OPENAI_API_KEY sk-your-key
```
Full guide: docs/SETUP.md
## Dev vs prod with Convex
Convex gives you two deployments per project, each its own database and env vars.
- Dev is for building. Run `npx convex dev` while you work. It is the target for
any command without `--prod`.
- Prod is your live, shareable app. You push to it on purpose, and you target it
with `--prod`.
If a command has `--prod`, it changes your live app. If not, it changes dev.
`npm run deploy` is a production action. Never run `npx convex deploy` during
normal development. See docs/SETUP.md for the full command table.
## Deploy
Preview a build on your dev deployment without touching the live app:
```bash
npm run deploy:static:dev
```
Ship the live app to production. This builds, deploys the backend to prod, and
uploads the static files:
```bash
npx convex login # once
npm run deploy # production
```
Your app goes live at `https://<your-deployment>.convex.site`. For production AI,
set the key on prod too:
```bash
npx convex env set OPENAI_API_KEY sk-your-key --prod
```
To put it on GitHub and get a public live URL step by step, follow
docs/LAUNCH.md.
## Tech stack
- React, Vite, TypeScript
- Convex queries, mutations, scheduler, and a Node action
- `@convex-dev/static-hosting` for hosting
- OpenAI, bring your own key
- Convex Auth, optional, off by default
## Project layout
See `files.md` for a description of every file. The short version:
- `convex/` the backend: schema, functions, the OpenAI action, hosting wiring.
- `src/` the React UI: board, add form, lead cards, activity feed, settings.
- `docs/` setup and auth guides.
- `design.md` the design system reference.
- `.agents/skills/` agent skills for setup and enabling auth.
## Agent skills
Point Cursor, Claude Code, or Codex at these skills to move fast:
- `signaldesk-setup` set up and run the app from a fresh clone.
- `signaldesk-enable-auth` add Convex Auth to your fork.
## Resources
- Repo: https://github.com/waynesutton/signdesk-demo-hackathon-app
- Convex docs: https://docs.convex.dev
- Convex docs index for LLMs: https://docs.convex.dev/llms.txt
- Convex AI code generation and rules: https://docs.convex.dev/ai/overview
- Static hosting component: https://www.convex.dev/components/static-hosting
- Static hosting integration notes: https://www.convex.dev/components/static-hosting/static-hosting.md
- Convex Auth: https://labs.convex.dev/auth
- Orange Slice CLI agent: https://www.orangeslice.ai/agents
- AI Growth Hackathon by Orange Slice: https://events.ycombinator.com/OrangeSliceHackathon
## License
Apache-2.0