A secure, self-hosted billing and invoice management application built with React, TypeScript, and SQLite. Perfect for small businesses and freelancers who want complete control over their financial data.
# Clone the repository
git clone <your-repository-url>
cd slimbooks
# Generate secure secrets
./scripts/generate-secrets.sh
# Deploy with Docker
./scripts/deploy.sh
Streamline your financial management with powerful tools
Built with performance and developer experience in mind
Get Slimbooks up and running in no time
# Clone the repository
git clone <your-repository-url>
cd slimbooks
# Generate secure secrets
./scripts/generate-secrets.sh
# Deploy with Docker
./scripts/deploy.sh
Access your app at http://localhost:8080
# Prepare your Raspberry Pi
curl -fsSL https://raw.githubusercontent.com/rbenzing/slimbooks/main/scripts/setup-raspberry-pi.sh | bash
# Deploy the application
./scripts/deploy.sh
# Install dependencies
npm install
# Start development servers
npm run dev
Frontend: http://localhost:8080
• Backend: http://localhost:3002
Customize Slimbooks to fit your needs
The application uses environment variables for secure configuration:
# Security (REQUIRED - change in production)
JWT_SECRET=your-secure-64-character-secret
JWT_REFRESH_SECRET=your-secure-refresh-secret
SESSION_SECRET=your-secure-session-secret
# Network
CORS_ORIGIN=http://localhost:8080
PORT=3002
# Features
ENABLE_2FA=true
ENABLE_DEBUG_ENDPOINTS=false
Use ./scripts/generate-secrets.sh
to create secure secrets automatically.
Robust protection for your sensitive financial data
Protection against brute force attacks (100 req/15min)
Secure token-based auth with configurable expiration
Server-side validation prevents injection attacks
Comprehensive protection with Helmet.js
Automatic lockout after failed login attempts
Two-factor authentication for enhanced security
Request/response logging for security monitoring
Dive deeper into Slimbooks
Control your Slimbooks instance
docker-compose logs -f
/usr/local/bin/slimbooks-backup
./scripts/deploy.sh
./scripts/generate-secrets.sh