What can you build with Codehooks?
One project can be an app, an automation, an integration or all of them at once.
Build apps
Your frontend, API and database in one project. Good for dashboards, internal tools and app backends.
Building apps →Automate workflows
Scheduled jobs, background workers and multi-step workflows, written in real code with retries and state.
Automations →Connect anything
Receive webhooks, call other APIs and keep systems in sync, with signature checks and storage built in.
Integrations and webhooks →How do the pieces fit together?
Here's one project handling an order from payment to dashboard. Every box is part of the same deploy, and every step uses the same storage.
- ConnectWebhook endpointChecks the signature, saves the order and replies at once.
- AutomateQueueHolds the order until a worker is free.
- AutomateWorkerFulfils the order in the background.
- BuildAPIServes the orders to your app.
- BuildFrontendA dashboard your team opens in the browser.
Show the code for this project (one file, about 60 lines)
import { app, Datastore } from 'codehooks-js';
import { verify } from 'webhook-verify';
// Connect: Stripe calls this endpoint, so it skips the API key check
app.auth('/webhook/*', (req, res, next) => next());
app.post('/webhook/stripe', async (req, res) => {
const secret = process.env.STRIPE_WEBHOOK_SECRET;
if (!verify('stripe', req.rawBody, req.headers, secret)) {
return res.status(401).json({ error: 'Invalid signature' });
}
const conn = await Datastore.open();
// Stripe retries events, so skip any event ID seen in the last week
const kv = { keyspace: 'stripe-events' };
if (await conn.get(req.body.id, kv)) {
return res.json({ received: true });
}
const order = await conn.insertOne('orders', {
eventId: req.body.id,
status: 'new',
});
await conn.enqueue('fulfil', { orderId: order._id });
await conn.set(req.body.id, 'done', { ...kv, ttl: 7 * 24 * 60 * 60 * 1000 });
res.json({ received: true });
});
// Automate: a worker handles each order in the background
app.worker('fulfil', async (req, res) => {
const { orderId } = req.body.payload;
const conn = await Datastore.open();
// call your shipping or CRM API here
await conn.updateOne('orders', orderId, { $set: { status: 'done' } });
res.end();
});
// ...and a cron job checks for stuck orders every morning
app.job('0 7 * * *', async (req, res) => {
const conn = await Datastore.open();
const stuck = await conn.getMany('orders', { status: 'new' }).toArray();
console.log(`${stuck.length} orders still open`);
res.end();
});
// Build: an API (protected by API key or JWT by default)
app.get('/api/orders', async (req, res) => {
const conn = await Datastore.open();
const orders = await conn.getMany('orders', {}, { limit: 50 }).toArray();
res.json(orders);
});
// ...and the frontend that calls it, served from the same deploy
app.static({
route: '/',
directory: '/dist',
default: 'index.html',
notFound: '/index.html',
});
export default app.init();
Works with the coding agent you already use
Describe what you want and your agent builds it on Codehooks. Codehooks is built around a CLI, so Claude Code, Codex, Cursor or any agent that can run shell commands can create, deploy and debug a project for you.
Build a feature request board. People can post ideas and vote on them, and ideas with no votes are archived after 30 days.
coho promptreads the Codehooks API referencecoho create featureboardcreates the projectnpm installinstalls codehooks-jsindex.jsAPI routes for ideas and votes, plus a nightly archive jobpublic/index.htmlthe board people usecoho deploydeploys frontend, API and job togethercoho log -fchecks the first requests
✓ Live at https://featureboard-2b39.codehooks.io
Run coho prompt first so your agent has the full API reference, or install the Claude Code plugin for templates and API context. Set up your agent →
What's built in?
Every project includes these from the first deploy. You use them from your code, so there are no extra services to sign up for or connect.
How fast can you get something live?
A few minutes after installing the CLI you have a live API with a database behind it. Every change after that is one command, and the deploy takes under 5 seconds.
npm install -g codehooks
coho login
coho create myproject # creates a CRUD API and deploys it
cd myproject
npm install
coho deploy # after each change, live in seconds
Built on Codehooks
Event pipelines, AI-backed APIs and app backends that developers have shipped

For one of our portfolio companies' clients, we needed a quick way to capture webhook events from their order system.
Codehooks was amazingly simple to deploy and use. In a matter of minutes we set up a new project with a simple API to store and process the incoming data.

Codehooks is a great tool! In record time we built a backend and AI-enabled API which processes live events and data from our sonars.
The data is now easily accessible in a dashboard for our customers. I love the simplicity and the fact that we can iterate so quickly.

Codehooks powers the backend of my iOS app Fraud Monitor, processing real-time events for ML training, scam detection, and user feedback.
I chose it for its developer-first CLI, elegant APIs, and rock-solid data model — and I've stayed for the flawless uptime and peace of mind. I'm a fan.
What does Codehooks cost?
Each plan has a flat monthly price. You can run as many requests, jobs and deploys as your plan's rate limits allow, and the bill stays the same (there are no per-request fees).
Development
Free
Pro
$19/month
Team
$99/month
Need more? Add developers ($5), database ($0.10/GB), file storage ($0.02/GB), domains ($10), or spaces ($10) anytime.
Need an SLA? Contact us for Team plan SLA options.
Frequently Asked Questions
Common questions about building with Codehooks.
What can I build with Codehooks?
What's included out of the box?
Do I need to set up any infrastructure?
coho deploy, which takes under 5 seconds, and the platform runs it with everything above already available.Can my AI coding agent build it for me?
coho create, write the code and coho deploy from the terminal. Run coho prompt to give the agent the full API reference, or point it at llms.txt. Claude Code users can add the Codehooks plugin for templates and API context. See AI agent setup for the details. We're also building a remote MCP server, so agents that can't run shell commands will be able to create, deploy and manage projects too. Until it ships, the CLI is the way to go.How is this different from Zapier, Make or n8n?
Can Codehooks both receive and send webhooks?
How is this different from Svix or Hookdeck?
Where is my data stored?
How does authentication and security work?
coho jwks , and every API call is verified against it. For something simpler, such as a shared password on an admin route, your coding agent can write the check in an app.auth() hook. API keys and secrets are encrypted. Paid plans can restrict access by IP address. We provide encryption at rest and are GDPR compliant.