Oracle3
Open-source trading engine and MCP server for prediction markets. Fee-aware no-arbitrage trading across related contracts, live on Kalshi, Polymarket and Solana or on paper.
Household finance dashboard for Ivan and Vero
FinanceTypeScript · CSSGitHub @ipanmanuel-botOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Household finance dashboard for managing income, expenses, accounts, budgets,
funds/goals, and shared household finances.
• Next.js 16 (App Router) + TypeScript
• Tailwind CSS 4
• Neon (serverless Postgres)
• Auth.js (NextAuth) with Google OAuth
• Vitest
• Vercel (deploy target)
• pnpm dev — Next.js dev server
• pnpm build — production build
• pnpm start — run production build
• pnpm test — run vitest suite
• pnpm typecheck — TypeScript check
• pnpm lint — ESLintRead the full README ↗Household finance dashboard for managing income, expenses, accounts, budgets, funds/goals, and shared household finances.
pnpm install
cp .env.example .env.local # fill in DATABASE_URL + Google OAuth values
pnpm dev
Scripts:
pnpm dev — Next.js dev serverpnpm build — production buildpnpm start — run production buildpnpm test — run vitest suitepnpm typecheck — TypeScript checkpnpm lint — ESLintThe Money Inbox can import transactions from Gmail. The architecture is in place; to actually connect your Gmail you need Google OAuth credentials.
Everything works without this setup via the "Sync fixture messages (dev)"
button on /inbox — same pipeline, bundled sample bank emails.
Create (or pick) a project at https://console.cloud.google.com.
APIs & Services → Library → enable Gmail API.
APIs & Services → OAuth consent screen:
https://www.googleapis.com/auth/gmail.readonly.APIs & Services → Credentials → Create Credentials → OAuth client ID:
http://localhost:3000/api/gmail/oauth/callback.Copy the client id + secret into .env.local:
AUTH_GOOGLE_CLIENT_ID=…
AUTH_GOOGLE_CLIENT_SECRET=…
AUTH_GOOGLE_REDIRECT_URI=http://localhost:3000/api/gmail/oauth/callback
Generate a token-encryption key:
openssl rand -hex 32
Store it as TOKEN_ENCRYPTION_KEY in .env.local. OAuth refresh tokens are
AES-256-GCM encrypted with this key before being written to Postgres.
Restart pnpm dev. The Connect Gmail button on /inbox becomes active.
Only parsers in src/lib/parsers/ know how to turn an email into a
transaction. Phase 7 ships one parser (BCA). Adding a bank is a new file
implementing BankParser plus one line in src/lib/parsers/registry.ts.
Low-confidence or unrecognised messages are stored in imported_messages
with parse_status = 'partial' | 'unknown' | 'failed' and never become a
transaction row — fabrication is not allowed (see
docs/financial-logic.md §15).
Before changing anything, read the relevant spec:
docs/financial-logic.md — transaction and money-movement semanticsdocs/product-spec.md — product behavior and UI directiondocs/gmail-integration.md — Gmail import architectureProject-wide rules and MVP scope live in CLAUDE.md.