Files
brainstorming/server/api/ideas/index.post.ts
Alejandro Martinez e7de636cf2 feat: initial brainstorming app — Nuxt 3 + SQLite + admin auth
Nuxt 3 app with:
- SQLite (better-sqlite3) for persistence
- Anonymous idea submission and voting
- Admin auth with session cookies
- AI analysis via Gemini API
- Nuxt UI components + Tailwind

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 14:15:45 +02:00

12 lines
423 B
TypeScript

import db from '../../utils/db'
export default defineEventHandler(async (event) => {
const { text, category } = await readBody(event)
if (!text?.trim()) {
throw createError({ statusCode: 400, statusMessage: 'Text is required' })
}
const cat = category || 'General'
const result = db.prepare('INSERT INTO ideas (text, category) VALUES (?, ?)').run(text.trim(), cat)
return { id: result.lastInsertRowid }
})