Tabularius AI is an application for importing, exploring, and analysing accounting data from Portuguese SAF-T (PT) files. It organises the workspace around Entity → Dossier / fiscal year → SAF-T import, preserving the source of the data used in each analysis.
Accounting calculations are deterministic. Artificial Intelligence is optional and adds interpretation and context to the results without replacing values calculated by the application.
For normal desktop use, download the latest Windows installer. No .NET SDK, SQL Server, or Docker setup is required.
- Management of accounting entities, dossiers, and fiscal years.
- Structured import and persistence of SAF-T (PT) files.
- Multiple imports per dossier with explicit source selection and traceability.
- Exploration of accounts, customers, suppliers, products, and tax data.
- General ledger exploration with detailed debit and credit lines.
- Sales invoices, working documents, stock movements, and payment documents.
- Deterministic Trial Balance, Income Statement, and Balance Sheet.
- Analytical workspace with overview, anomaly detection, account analysis, and VAT analysis.
- Detailed account and transaction investigation.
- Optional AI assistant and AI analytical reports with configurable providers.
- Dossier backup and restore.
- Authentication, user profiles, and role-based administration.
- Local single-user mode with SQLite.
- Multi-user server mode with SQL Server and Docker.
The current implementation does not claim formal validation of imported files against the official SAF-T (PT) XSD schema.
Tabularius AI can run locally for individual use or on a server for shared multi-user access.
For most Windows users, the recommended option is the installer available from the latest release. It provides a self-contained application and uses SQLite locally, with no SQL Server or Docker infrastructure required.
Developers can run the application directly from source with the .NET 9 SDK:
git clone https://github.com/ruialexrib/tabularius-ai.git
cd tabularius-ai
dotnet restore
dotnet run --project src/TabulariusAI.WebThe application stores local data in the SQLite database at data/tabularius.db.
For shared use, Tabularius AI can run with Docker Compose, using the ASP.NET Core application with SQL Server 2022 Express for persistent multi-user storage.
Clone the repository and create the environment configuration:
git clone https://github.com/ruialexrib/tabularius-ai.git
cd tabularius-ai
Copy-Item .env.example .envSet a strong SQL Server password in .env:
TABULARIUS_DB_PASSWORD=replace-with-a-strong-private-password
Start the application:
docker compose up -d --build
docker compose psOpen http://localhost:8080 in your browser. SQL Server data and application logs are stored in persistent Docker volumes.
On first startup, Tabularius AI automatically creates an administrator account:
| Field | Value |
|---|---|
| Username | admin |
admin@tabularius.local |
|
| Temporary password | LetMeIn |
| Role | Administrator |
The initial password is temporary. The application requires it to be changed before normal use of the account.
AI functionality is optional. When configured, it can be used to interact with dossier data and generate contextual interpretations of indicators presented throughout the analytical areas.
Tabularius AI can use local language models through Ollama, keeping model execution on infrastructure controlled by the user, or connect to remote AI providers and models when cloud-based inference is preferred. This allows the AI layer to be adapted to different privacy, infrastructure, performance, and cost requirements.
The language model is not the source of accounting totals. Values calculated deterministically by Tabularius AI take precedence over any interpretation generated by the model.
Contributions should be submitted through pull requests and remain focused on a clearly identifiable change.
Before submitting a contribution:
- create a branch from the latest
main; - keep the change small and focused;
- preserve traceability to the selected SAF-T import;
- never silently aggregate data from different imports;
- keep deterministic accounting calculations separate from generative AI;
- add tests when introducing behaviour that can reasonably be tested;
- ensure the project builds and existing tests continue to pass;
- use Portuguese from Portugal for the application UI and English for code, technical documentation, and commit messages;
- never commit passwords, API keys, tokens,
.envfiles, or real confidential accounting data.
Significant changes involving architecture, database schema, SAF-T parsing, security, deployment, or AI integrations should be discussed before implementation.
See CONTRIBUTING.md for the complete contribution guidelines.
Distributed under the MIT License.
Copyright © 2026 Rui Ribeiro.
