DBRepairs is a simple, open-source repair-shop manager focused on the practical day-to-day workflow of repair workshops and service centres.
The project is a clean rewrite with a shared React/TypeScript interface. It can run as a Tauri 2 desktop application with local SQLite, or as a Docker server with a central PostgreSQL database.
- Create, edit, search and delete customers.
- Name, company, tax number, phone, email, address and notes.
- View the complete repair history directly from the customer record.
- Create a new customer directly while opening a repair.
- Create and edit repair jobs.
- Repair number generated automatically.
- Device type, brand, model, serial number and IMEI.
- Reported fault, accessories and general condition.
- Diagnosis and work performed.
- Estimated and final values.
- Internal notes.
- Search and filter repairs by status and open/closed state.
- Suggestions for previously used device types, brands and models.
Initial repair statuses:
- Received
- Diagnosis
- Waiting for customer
- Waiting for parts
- In repair
- Repaired
- Ready
- Delivered
- Cancelled
Every status change is stored with date and time. An optional note can be added to each status change.
- A4 portrait repair intake sheet.
- Two copies on the same page:
- workshop copy;
- customer copy.
- Dashed cut line between copies.
- Company identity and custom logo.
- Save a repair and immediately open the print preview.
Live overview with:
- open repairs;
- waiting for customer;
- ready for collection;
- closed today;
- latest repairs.
- Global application language.
- Portuguese (Portugal), English, Spanish and French.
- Company name, tax number, address, phone, email and logo.
- Manual SQLite database backup.
- CSV export for customers.
- CSV export for repairs.
- One central PostgreSQL database for simultaneous use from multiple computers.
- Browser interface reusing the desktop workflow and translations.
- Transactional HTTP API and automatic schema migrations.
- Docker Compose stack for a server or Portainer.
- Manual and scheduled PostgreSQL backups with configurable retention.
- Portable
.dbrepairsbackups for two-way transfer between SQLite and PostgreSQL.
- React
- TypeScript
- Vite
- Tauri 2
- Rust
- SQLite
- Node.js API and PostgreSQL (server edition)
- Docker Compose and nginx (server edition)
Download the .deb package and install it with:
sudo apt install ./DBRepairs_0.2.0_amd64.debDownload the .rpm package and install it with your distribution package manager, for example:
sudo dnf install ./DBRepairs-0.2.0-1.x86_64.rpmPrerequisites: Node.js, Rust and the platform dependencies required by Tauri 2.
npm install
npm run tauri devBuild:
npm run tauri buildNative packages should normally be built on the target operating system or through CI.
Copy .env.example to .env, set a strong POSTGRES_PASSWORD, then run:
docker compose up -d --buildOpen http://SERVER-IP:8080. See docker/README.md for Portainer, backup, restore and update instructions.
The desktop edition uses a local SQLite database. Application data is stored in the platform-specific application configuration directory.
Use the built-in backup function before moving or reinstalling systems.
The server edition stores shared data in its PostgreSQL Docker volume. Desktop and server data remain independent until a portable .dbrepairs backup is explicitly restored. This format transfers settings, statuses, customers, repairs and status history in either direction between SQLite and PostgreSQL.
See TRANSLATING.md.
The application uses one global language for the interface, forms, statuses and printed documents.
- Keep the workflow simple.
- Fast repair intake and lookup.
- Avoid unnecessary ERP complexity.
- SQLite by default.
- Desktop SQLite remains simple and independent.
- Docker/server edition reuses the same frontend and domain workflow.
- Easy community translations.
DBRepairs is licensed under GPL-3.0. See LICENSE.