A comprehensive Professional Services Automation platform designed for Managed Service Providers (MSPs). This open-source solution helps MSPs streamline operations, manage client relationships, track time and billing, and improve service delivery.
- Asset Management: Track and manage client assets, maintenance schedules, and relationships
- Billing & Invoicing: Flexible billing cycles, international tax support, and automated invoicing
- Client Management: Comprehensive client profiles and relationship tracking
- Document Management: Centralized document repository with version control
- Project Management: Project tracking, task management, and resource allocation
- Support Ticketing: Incident tracking and resolution management
- Time Management: Time tracking, timesheet approval, and utilization reporting
- Reporting & Analytics: Customizable reports and business intelligence
- Security: Role-based access control (RBAC) and attribute-based access control (ABAC)
- International Tax Support: Handle complex tax scenarios across jurisdictions
- Composite taxes
- Threshold-based tax rates
- Tax holidays
- Reverse charge mechanisms
- Flexible Billing Cycles: Customizable per company
- Weekly, bi-weekly, monthly, quarterly options
- Proration support
- Approval-based time entry billing
- Unapproved time entry rollover
- Frontend: Next.js application
- Backend: Node.js server
- Database: PostgreSQL with row-level security
- Real-time Collaboration: Hocuspocus integration
- Authentication: NextAuth.js
- UI Components: Radix-based component library
For detailed setup instructions, please refer to our Complete Setup Guide. The guide covers:
- Prerequisites and system requirements
- Installation steps for both Community and Enterprise editions
- Environment configuration
- Security setup
- Verification steps
- Complete Setup Guide - Step-by-step setup instructions
- Configuration Guide - Detailed configuration options
- Development Guide - Development workflow and best practices
- Docker Compose Structure - Container orchestration
- Secrets Management - Secure credentials handling
- Configuration Standards - Coding and config standards
- Entrypoint Scripts - Service initialization
alga-psa/
├── docker-compose.yaml # Base docker configuration
├── docker-compose.ce.yaml # Community Edition config
├── docker-compose.ee.yaml # Enterprise Edition config
├── ee/ # Enterprise Edition
│ └── setup/
│ └── docker-compose.yaml
├── helm/ # Kubernetes configurations
├── hocuspocus/ # Real-time collaboration server
└── server/
├── public/ # Static assets
├── src/
│ ├── app/ # Next.js pages
│ ├── components/ # React components
│ │ ├── ui/ # Shared UI components
│ │ └── features/# Feature-specific components
│ ├── lib/ # Core business logic
│ └── types/ # TypeScript definitions
└── migrations/ # Database migrations
We use Vitest for testing. Run the test suite:
npm run test
# Run specific tests
npm run test -- path/to/test/file.test.ts
This project uses multiple licenses:
- Documentation (
docs/
): Creative Commons Attribution 4.0 International License (CC BY 4.0) - Enterprise Edition (
ee/
): Seeee/LICENSE
- All other content: GNU Affero General Public License Version 3 (AGPL-3.0)
See LICENSE.md for details.
We welcome contributions! Please see our Contributing Guide for details on how to get started.
Copyright (c) 2024 Nine Minds LLC