Emil 3ec0884de4 refactor: make JournalEntryForm reusable with embedded mode
Add props for initialLines, initialDate, initialDescription, sourceType,
sourceId, submitUrl, embedded, and onEntryCreated to support embedding the
form in dialogs. Auto-fill line description from account name. Improve
AccountCombobox to only emit valid account numbers and reset on blur.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 12:59:21 +01:00
2026-02-21 11:39:45 +01:00
2026-02-21 11:39:45 +01:00
2026-02-18 11:27:41 +01:00
2026-02-13 14:00:46 +01:00
2026-02-19 09:48:02 +01:00

erp-base

Swedish accounting SaaS for sole traders (enskild firma) and limited companies (aktiebolag). Implements double-entry bookkeeping compliant with Swedish accounting law (Bokforingslagen), including VAT handling, tax reporting, and 7-year document retention.

Tech Stack

  • Framework: Next.js 16 (App Router), React 19, TypeScript (strict)
  • Database: Supabase (PostgreSQL + RLS + magic link auth)
  • Styling: Tailwind CSS 4 + shadcn/ui
  • Hosting: Vercel
  • Integrations: Enable Banking (PSD2), Anthropic SDK, OpenAI (embeddings), Resend (email), web-push (VAPID)

Getting Started

npm install
npm run dev

Commands

npm run dev          # Start development server
npm run build        # Production build
npm run lint         # ESLint
npm test             # Run all Vitest tests

Documentation

See CLAUDE.md for comprehensive project documentation including architecture, bookkeeping engine, extension development, and database conventions.

S
Description
Accounted — svensk bokföringsmotor (AGPL, BAS 2026, BFL-compliant, 150+ MCP tools). Finance-kapacitet brevet ERPNext. ADR-ENGAGEMENT-001-tillägg.
Readme AGPL-3.0 55 MiB
Languages
TypeScript 93%
PLpgSQL 5.8%
JavaScript 0.4%
HTML 0.3%
MDX 0.2%
Other 0.1%