Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Multi-tenant control panel for BTCPay Server - manage stores, invoices, Lightning, and exports via a Vue SPA and Laravel (Greenfield API).
翻訳待ち
Loading the full README. The saved excerpt is shown below.
satflux.io - BTCPay control panel & business invoicing
Multi-tenant web app for merchants to run BTCPay Server stores and Pro business invoicing (companies, accounting documents, expenses) through a Vue SPA backed by Laravel and the Greenfield API.
Current app version: 2.0.0 (see package.json; /api/version reads the same value).Read the full README ↗Website: satflux.io
Multi-tenant web app for merchants to run BTCPay Server stores and Pro business invoicing (companies, accounting documents, expenses) through a Vue SPA backed by Laravel and the Greenfield API.
Current app version: 2.0.0 (see package.json; /api/version reads the same value).
COMPLIANCE_SCREENING_ENABLED - see docs/OFAC_COMPLIANCE.md) for operators who accept fiat (e.g. Stripe to bank account) and need geo/list checksSlovak eFaktura status: a complete provider integration has not been verified. Satflux is currently not presented as a ready solution for mandatory Slovak e-invoicing. UBL export alone does not deliver an invoice. Further SK eFaktura development is paused pending a provider decision and complete integration verification. Existing integration code and settings are retained; see docs/SK_EFAKTURA.md.
When VITE_INVOICING_LOCAL_FIRST=true and INVOICING_LOCAL_FIRST=true, core invoicing data lives in the browser (Evolu SQLite, E2EE). Optional relay sync via VITE_EVOLU_RELAY_URL. Server APIs remain for PDF render, e-mail, e-faktura, BTCPay bridges, and one-time import from server for legacy PostgreSQL data.
Rollout guide: docs/INVOICING_LOCAL_FIRST_ROLLOUT.md. Module overview: docs/BUSINESS_INVOICING.md.
| Layer | Stack |
|---|---|
| Backend | Laravel 12, PHP 8.3+, Sanctum (SPA cookie auth), PostgreSQL, Redis |
| HTTP client | Laravel HTTP / Greenfield-style integration with BTCPay |
| Frontend | Vue 3, TypeScript, Vite, Tailwind CSS, Pinia, Vue Router, vue-i18n (EN / SK / ES) |
| Local-first | Evolu (@evolu/vue, @evolu/web) for invoicing SQLite + E2EE relay sync |
| Hybrid UI | Inertia.js (@inertiajs/vue3) where used alongside the SPA |
| Realtime | Laravel Reverb (optional; see env / deployment) |
| Dev / prod | Docker Compose (docker-compose.yml) - nginx, php-fpm, postgres, redis |
package.json engines)Clone the repository
Environment file
cp .env.example .env
Configure .env - database, BTCPAY_BASE_URL, BTCPAY_API_KEY, webhooks, invoicing flags, etc. For local SPA auth over HTTP:
SANCTUM_STATEFUL_DOMAINS=localhost,localhost:8000,localhost:8080,127.0.0.1,127.0.0.1:8000,127.0.0.1:8080
SESSION_DOMAIN=
SESSION_SECURE_COOKIE=false
SESSION_SAME_SITE=lax
Local-first invoicing (optional): set VITE_INVOICING_LOCAL_FIRST=true, INVOICING_LOCAL_FIRST=true, and rebuild the frontend (npm run build).
Start containers
docker-compose up -d
PHP dependencies
docker-compose exec php composer install
Application key
docker-compose exec php php artisan key:generate
Migrations
docker-compose exec php php artisan migrate
Node dependencies
npm install
Frontend
npm run devnpm run buildAfter changing .env or config
docker-compose exec php php artisan optimize:clear
http://localhost:8080/apilocalhost:5432 (per compose mapping)localhost:6379 (per compose mapping)This is the beginning of the README. Read the rest at the original. Read the full README ↗