Oracle3
Oracle3: 예측시장 거래 엔진·MCP 서버
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Einfache, sichere und ruhige Rechnungserstellung für kleine bis mittelgroße Unternehmen.
Note: Der Brandname ist über die Umgebungsvariable
NEXT_PUBLIC_APP_NAMEkonfigurierbar.
Voraussetzungen: Docker, Supabase CLI, pnpm.
pnpm install
pnpm db:start # Postgres, Auth, REST, Storage, Studio, Mailpit in Docker
pnpm db:env # schreibt .env.local mit den Schlüsseln der lokalen Instanz
pnpm dev
Die App läuft auf http://localhost:3000. Anmelden mit dem Seed-Konto
[email protected] / Email123! — es hat Firma, Kontakte und Beispielrechnungen
(supabase/seed.sql).
Ports. Die lokale Instanz belegt bewusst 55320–55329 statt der Supabase-Standardreihe
54321–54329, damit sie neben anderen Supabase-Projekten laufen kann (siehe supabase/config.toml):
| Dienst | Port |
|---|---|
| API | 55321 |
| Postgres | 55322 |
| Studio | 55323 |
| Mailpit (Web) | 55324 |
Direktzugriff auf die Datenbank: postgresql://postgres:[email protected]:55322/postgres.
Ist einer der Ports bei dir belegt, ändere ihn in supabase/config.toml und passe
NEXT_PUBLIC_SUPABASE_URL in .env.local an.
Nützlich:
pnpm db:reset # Datenbank neu aufbauen: alle Migrationen, dann der Seed
pnpm db:stop # Container anhalten (Daten bleiben erhalten)
Mehrere Worktrees desselben Repos teilen sich diese eine Instanz — pnpm db:start meldet in
einem zweiten Worktree, dass sie schon läuft. Das ist gewollt, heißt aber: Ein db:reset wirkt
auf alle.
Dateien (PDF, XML, Logo) landen lokal im Bucket blitzrechnung von Supabase Storage, den die App
über dieselbe S3-Schnittstelle anspricht wie in Produktion Cloudflare R2. Die Werte stehen schon in
.env.local.example; die Schlüssel setzt pnpm db:env aus der laufenden Instanz ein — sie stehen
bewusst nicht im Repo. Nur der E-Mail-Versand braucht echte Zugangsdaten (AHASEND_*).
Orca. orca.yaml lässt jeden neuen Workspace scripts/orca-setup.sh ausführen: Es übernimmt
die .env.local aus dem Primary-Checkout (sonst die Vorlage) und installiert die Abhängigkeiten
mit der pnpm-Version aus packageManager in der package.json — dieselbe wie in CI und auf Vercel. Einmalig im
Primary-Checkout: pnpm db:env (und dort ergänzen, was nur dir gehört, etwa AHASEND_*). Die Datenbank startet das Skript nicht; es weist nur darauf hin, wenn sie nicht läuft.
supabase/migrations/ an (supabase link und supabase db push).env.local mit NEXT_PUBLIC_SUPABASE_URL und NEXT_PUBLIC_SUPABASE_ANON_KEY des Projekts anDie eigentliche PDF/ZUGFeRD-Generierung wird von einem separaten Service übernommen. Im MVP ist dies als TODO markiert in components/drafts/draft-editor.tsx.
Beim Finalisieren einer Rechnung:
blitzrechnung/
├── app/
│ ├── (app)/ # Geschützte Routen (erfordern Auth)
│ │ ├── drafts/ # Entwürfe
│ │ ├── invoices/ # Finalisierte Rechnungen
│ │ ├── customers/ # Kundenverwaltung
│ │ └── settings/ # Firmeneinstellungen
│ ├── login/ # Login-Seite
│ ├── signup/ # Registrierung
│ └── auth/ # Auth-Callbacks
├── components/
│ ├── drafts/ # Draft-Komponenten
│ ├── invoices/ # Invoice-Komponenten
│ ├── customers/ # Customer-Komponenten
│ └── settings/ # Settings-Komponenten
├── lib/
│ └── supabase/ # Supabase Client Utilities
├── types/ # TypeScript Types
└── supabase/
└── migrations/ # Datenbank-Migrationen
Private Projekt