https://github.com/zatarain/crm-dupkiller
CRM DupKiller - Hack Night @ Cloudflare 2025 ft. Fiberplane, Claude, Elevenlabs
https://github.com/zatarain/crm-dupkiller
ai anthropic artificial-intelligence claude claude-ai cloudflare elevenlabs fiberplane hack-night-2025 hackathon london prototype
Last synced: 3 months ago
JSON representation
CRM DupKiller - Hack Night @ Cloudflare 2025 ft. Fiberplane, Claude, Elevenlabs
- Host: GitHub
- URL: https://github.com/zatarain/crm-dupkiller
- Owner: zatarain
- License: bsd-3-clause
- Created: 2025-06-19T08:48:50.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-20T23:52:50.000Z (about 1 year ago)
- Last Synced: 2025-06-21T00:30:04.738Z (about 1 year ago)
- Topics: ai, anthropic, artificial-intelligence, claude, claude-ai, cloudflare, elevenlabs, fiberplane, hack-night-2025, hackathon, london, prototype
- Language: TypeScript
- Homepage:
- Size: 1000 Bytes
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CRM DupKiller
This is the prototype I built during the Hack Night @ Cloudflare 2025 ft. Fiberplane, Claude \ Anthropic & Elevenlabs.
This repository includes an `SPEC.md` generated by the AI, but I also made some tweaks in the styling with Markdown.
Additionaly, when I interact with AI for coding I like to save and include the log of the conversation I had, so I added this in the `chat.ai.log.md`, so other people can follow if they are interested. All the quantities are fake.
Following screenshot is the preview of the generated dashboard:

## πͺΏ HONC
This is a project created with the `create-honc-app` template.
Learn more about the HONC stack on the [website](https://honc.dev) or the main [repo](https://github.com/fiberplane/create-honc-app).
There is also an [Awesome HONC collection](https://github.com/fiberplane/awesome-honc) with further guides, use cases and examples.
### Getting started
[D1](https://developers.cloudflare.com/d1/) is Cloudflare's serverless SQL database. Running HONC with a D1 database involves two key steps: first, setting up the project locally, and second, deploying it in production. You can spin up your D1 database locally using Wrangler. If you're planning to deploy your application for production use, ensure that you have created a D1 instance in your Cloudflare account.
### Project structure
```#
βββ src
β βββ index.ts # Hono app entry point
β βββ db
β βββ schema.ts # Database schema
βββ .dev.vars.example # Example .dev.vars file
βββ .prod.vars.example # Example .prod.vars file
βββ seed.ts # Optional script to seed the db
βββ drizzle.config.ts # Drizzle configuration
βββ package.json
βββ tsconfig.json # TypeScript configuration
βββ wrangler.toml # Cloudflare Workers configuration
```
### Commands for local development
Run the migrations and (optionally) seed the database:
```sh
# this is a convenience script that runs db:touch, db:generate, db:migrate, and db:seed
npm run db:setup
```
Run the development server:
```sh
npm run dev
```
As you iterate on the database schema, you'll need to generate a new migration file and apply it like so:
```sh
npm run db:generate
npm run db:migrate
```
### Commands for deployment
Before deploying your worker to Cloudflare, ensure that you have a running D1 instance on Cloudflare to connect your worker to.
You can create a D1 instance by navigating to the `Workers & Pages` section and selecting `D1 SQL Database.`
Alternatively, you can create a D1 instance using the CLI:
```sh
npx wrangler d1 create
```
After creating the database, update the `wrangler.toml` file with the database id.
```toml
[[d1_databases]]
binding = "DB"
database_name = "honc-d1-database"
database_id = ""
migrations_dir = "drizzle/migrations"
```
Include the following information in a `.prod.vars` file:
```sh
CLOUDFLARE_D1_TOKEN="" # An API token with D1 edit permissions. You can create API tokens from your Cloudflare profile
CLOUDFLARE_ACCOUNT_ID="" # Find your Account id on the Workers & Pages overview (upper right)
CLOUDFLARE_DATABASE_ID="" # Find the database ID under workers & pages under D1 SQL Database and by selecting the created database
```
If you havenβt generated the latest migration files yet, run:
```shell
npm run db:generate
```
Afterwards, run the migration script for production:
```shell
npm run db:migrate:prod
```
Change the name of the project in `wrangler.toml` to something appropriate for your project:
```toml
name = "my-d1-project"
```
Finally, deploy your worker
```shell
npm run deploy
```