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.
Accounts, spending, budgets, goals and investments in one clear view.
Translation pending
FinanceJavaScript · TypeScriptGitHub @Jasurbek-ShomurodovOnlineOwner 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.
A private, multilingual personal-finance workspace built with React, Next.js and Supabase PostgreSQL. English, Russian and Uzbek share consistent money and Tashkent date formatting.Read the full README ↗A private, multilingual personal-finance workspace built with React, Next.js and Supabase PostgreSQL. English, Russian and Uzbek share consistent money and Tashkent date formatting.
See implementation status and remaining work. The current schema includes migrations through 072. Apply only unapplied migrations in order; live migration status is not inferred from repository files. See record reliability and restoration for the new upgrade and restore limits.
Use Node.js 24 (minimum supported version: 22.13). Run npm ci, copy .env.example to .env.local, and configure your own Supabase URL and publishable key. Enable the desired sign-in providers in Supabase. Never commit credentials.
For a fresh database, run database/setup.sql once in Supabase. For an existing database, apply only unapplied schema migrations from migrations/ in ascending numeric order. Migration 033_correct_four_plan_start_dates.sql is an installation-specific data repair, not a schema prerequisite: run it only for the original owner's explicitly requested correction. It deliberately fails when those four plans are absent; skip it for other installations. Do not run the fresh setup over an existing installation. See the planning upgrade for migrations 018–023.
npm run dev: portable Vinext development server on localhost.npm run build:production: production Next.js build used by Vercel.npm run build: alternative Sites/Vinext build.npm test: calculation, validation, API and isolated PostgreSQL tests; no live database is used.npm run typecheck: TypeScript check (run after production build to generate route types).npm run test:integration: local HTTP auth integration test; requires a production build and permission to bind loopback ports. This does not use a browser or real account.npm run lint: repository lint check.GitHub Actions runs the test suite, production build, type check and auth integration check for pushes and pull requests. PGlite is a development dependency used for isolated SQL tests.
APP_ORIGIN is required for auth email links; PUBLIC_SIGNUP_ENABLED defaults to disabled. Configure the Supabase token-hash email templates and Resend SMTP sender described in the email setup guide. Server-side account deletion also requires SUPABASE_SERVICE_ROLE_KEY.
SUPABASE_URL and SUPABASE_PUBLISHABLE_KEY are required for account data. TWELVE_DATA_API_KEY enables stock prices and benchmark feeds. Market requests preserve saved values when prices are unavailable.
Background capture additionally requires server-only CRON_SECRET and SUPABASE_SERVICE_ROLE_KEY. The Vercel schedule invokes /api/cron/portfolio-snapshots daily at 18:00 UTC (23:00 Tashkent). It cannot run while developing locally without an external scheduler. Missing quotes or FX prevent incomplete totals from overwriting snapshots; failed captures return a non-success status for monitoring. No historical prices are invented.
See the competitive feature research, the public-launch audit, workspace improvements and migration 035, Vercel setup, currency handling, portfolio history and benchmark calculations. Project conventions are in AGENTS.md.
Accounts can also start in the Telegram bot and sign in on the web with the same phone number; see the Telegram accounts guide.