Licence
Apache-2.0
Version
0.4.38
Deps
2
Size
18 kB
Vulns
0
Weekly
404
creek
Deploy full-stack apps to the edge. Database, realtime sync, and AI — all built in.
Install
npx creek deployOr install globally:
npm install -g creekDeploy
creek deploy # Auto-detect framework, build, deploy
creek deploy --template landing # Clone + build + deploy a Vite + React starter
creek deploy ./dist # Deploy a pre-built directory
creek dev # Local development serverServer Runtime
import { db, kv, storage, ai } from "creek";
// Database — managed D1, no config needed
const users = await db.query("SELECT * FROM users");
await db.mutate("INSERT INTO users (id, name) VALUES (?, ?)", id, name);
// Define tables — auto-created on first request (powered by d1-schema)
db.define({
users: {
id: "text primary key",
email: "text unique not null",
name: "text not null",
},
});Schema with d1-schema
Use d1-schema for declarative table definitions:
npm install d1-schemaimport { define } from "d1-schema";
await define(env.DATABASE, {
todos: {
id: "text primary key",
text: "text not null",
completed: "integer default 0",
_indexes: ["completed"],
},
});Tables auto-created on first use. No migration files, no CLI commands.
Realtime
import { LiveRoom, useLiveQuery, usePresence } from "creek/react";
function App() {
return (
<LiveRoom id={roomId}>
<TodoApp />
</LiveRoom>
);
}
function TodoApp() {
const { data: todos, mutate } = useLiveQuery("/api/todos", {
initialData: [],
});
const addTodo = (text) =>
mutate(
{ method: "POST", path: "/api/todos", body: { text } },
(prev) => [{ text, completed: 0 }, ...prev],
);
}Hono Middleware
import { room } from "creek/hono";
app.use("/api/*", room());
// c.var.room is now available — broadcasts scoped to this roomCLI Commands
| Command | Description |
|---|---|
creek deploy |
Deploy to production |
creek dev |
Local development server |
creek logs |
Read recent logs (--follow for live tail) |
creek rollback |
Rollback to previous deployment |
creek domains |
Manage custom domains |
creek env |
Manage environment variables |
creek login |
Authenticate |
creek init |
Initialize a new project |
Links
- Documentation
- GitHub
- d1-schema — Declarative D1 schema management
License
Apache-2.0