Files
brainstorming/app/composables/useAuth.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

21 lines
487 B
TypeScript

export function useAuth() {
const admin = useState('admin', () => false)
async function check() {
const data = await $fetch('/api/auth/me')
admin.value = data.admin
}
async function login(password: string) {
await $fetch('/api/auth/login', { method: 'POST', body: { password } })
admin.value = true
}
async function logout() {
await $fetch('/api/auth/logout', { method: 'POST' })
admin.value = false
}
return { admin, check, login, logout }
}