spb/worthdoing Public
Autonomous investigation agent that discovers, challenges, and ranks things genuinely worth doing — Claude + Firecrawl, Next.js 16, PostgreSQL
TypeScript 91.5%
SQL 5.8%
CSS 2.2%
1/**2 * WorthDoing.ai3 * Author: Simon-Pierre Boucher4 * Contact: contact@spboucher.ai5 * File: src/app/api/opportunities/route.ts6 * Description: List opportunities across investigations for the Explore page.7 */8import { NextResponse } from "next/server";9import { desc, eq } from "drizzle-orm";10import { db } from "@/lib/db/client";11import { opportunities, investigations } from "@/lib/db/schema";1213export const dynamic = "force-dynamic";1415export async function GET() {16 const rows = await db17 .select({18 id: opportunities.id,19 title: opportunities.title,20 summary: opportunities.summary,21 status: opportunities.status,22 worthScore: opportunities.worthScore,23 evidenceConfidence: opportunities.evidenceConfidence,24 createdAt: opportunities.createdAt,25 investigationId: opportunities.investigationId,26 objective: investigations.objective,27 })28 .from(opportunities)29 .innerJoin(investigations, eq(investigations.id, opportunities.investigationId))30 .orderBy(desc(opportunities.worthScore))31 .limit(100);32 return NextResponse.json({ opportunities: rows });33}34