internal
Self-hosted internal accounting & client-finance management for small companies. Multi-tenant, Next.js 16 + Drizzle + Postgres.
Ficha actualizada 23 sept 2026, 16:08 · upstream 23 sept 2026, 15:58 · release sin release detectada
Qué es internal
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Internal keeps two sets of books — internal and external (內外帳) — in one ledger, tracking money owed to you on the other side: projects, contracts, subscriptions, invoices, and outstanding payments. It is an in-house tool for small companies rather than a general-purpose ERP.
The UI ships in English and Traditional Chinese (zh-TW), switchable per user from the sidebar. The codebase, documentation, and configuration are all in English.
- Small business accounting with dual-bookkeeping
- Client finance management including projects and contracts
- Subscription billing and receivables tracking
- Invoice generation and payment reminders via Google Calendar integration
- Multi-tenant organization management
- Dual books (internal/external ledger) with a book field on every transaction to keep both views synchronized
- Google Calendar integration for billing, collection, and invoicing dates — no cron needed
- MCP server exposes the ledger as an MCP endpoint for AI agent querying and recording transactions
- Bilingual UI (English + Traditional Chinese) with cookie-based locale switching without URL changes
- Multi-tenancy via better-auth organization plugin with org-level scoping
- No built-in payroll module — employees, payroll items, and pay runs are available but not fully integrated
- VAT period management is handled manually rather than through a dedicated VAT calendar feature
- File uploads to object storage (e.g. S3/MinIO) require manual configuration of the storage endpoint
- No native multi-currency support — all transactions must be recorded in one currency
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Build with `bun run build` and deploy as a standard Next.js app to any host that can serve static files and reach a Postgres database. The repo does not prescribe a specific deployment environment, but the vendor-neutral Docker image is available for self-hosted use. For production, consider using a managed Postgres instance (e.g., Railway, Supabase) or a serverless stack like Vercel + Supabase to reduce operational overhead.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.



