For engineering teams
Stop being capped by your machine. Parallelize your work without limits.
Everything runs on our machines, not yours. Whatever used to wait on your laptop doesn't anymore.
@@ -12,6 +12,18 @@ export async function GET(request) {
const { searchParams } = new URL(request.url);
- const orders = await db.select().from(ordersTable);
- return Response.json(orders);
+ const limit = Number(searchParams.get("limit") ?? 25);
+ const cursor = searchParams.get("cursor");
+ const orders = await db
+ .select()
+ .from(ordersTable)
+ .where(cursor ? lt(ordersTable.id, cursor) : undefined)
+ .orderBy(desc(ordersTable.id))
+ .limit(limit + 1);
+ const hasMore = orders.length > limit;
+ const rows = hasMore ? orders.slice(0, limit) : orders;
+ const next = hasMore ? last(rows).id : null;
+
+ return Response.json({ rows, next });
Orders
214 total
- #4182Nadia Rahman$128.00Paid
- #4181Theo Vance$64.00Paid
- #4180Lena Fischer$312.50Refunded
- #4179Marco Silva$96.00Paid
- #4178Amina Diallo$248.00Paid
- #4177Jonas Lind$52.25Pending
- #4176Iris Kovac$184.00Paid
[worker]orders.reindex queued, 1 job
[web]compiled /orders in 240ms
[nextjs]GET /orders 200 in 61ms
[postgres]SELECT orders.* FROM orders WHERE id < $1 LIMIT 26 (12ms)
[nextjs]GET /api/orders?limit=25&cursor=4183 200 in 38ms
One sandbox per branch. As many as you want
Every branch in flight, on one screen
Show friendly error for large uploads
No branch
Filter the customer list by status
No branch
Add a search box to the customer list
kosuke/search-box
+520 -2Running
Bump recharts to 3.8.1
PR #76+112 -40
1 failing
Bump @ai-sdk/google to 2.0.47
PR #96+8 -8
Passed
Bump stripe to 22.0.1
Merged
Bump lucide-react to 0.564.0
Merged
Prompt and test live
Add a pricing page with three plans and a yearly toggle.
On it, reading the plans in src/lib/billing
Writing app/pricing/page.tsx
Read the diff without leaving the tab
@@@@ -122,7 +122,7 @@ export function Home()
124 <motion.div
125- className="mb-8 flex justify-center sm:mb-12"
125+ className="mb-8 flex items-center justify-center gap-4"
The gap collapses under 640px, keep the stacked layout on mobile.
Every service, its own log stream
[setup]===== HOST SETUP SCRIPT =====
[postgres]database system is ready to accept connections
[redis]Ready to accept connections tcp
[web]ready on http://localhost:3000 in 1.4s
[worker]queue attached, 0 jobs pending
[proxy]ECONNREFUSED 127.0.0.1:5173, upstream not up
API
Or skip the browser. Drive it from the API
Sessions, file tree, diffs, git state, commit, push, submit for review. Every step a session goes through is an endpoint, so a backlog file can become eight open pull requests.