OlivERP is a modern, lightweight, and high-performance ERP (Enterprise Resource Planning) system designed for personal projects, freelancers, and small businesses. Originally built for personal use by Oli, this project is now open-source to help others manage their projects efficiently and to welcome community contributions.
- � Multi-Project Management: Manage multiple businesses or side-projects from a single dashboard.
- 📦 Inventory & Stock Tracking: Real-time stock levels with automatic movement triggers for sales and purchases.
- 💰 Financial Analytics:
- Track Revenue, Expenses, and Net Profit.
- Automatic Tax (IVA/VAT) balance calculation.
- Daily finance visualizations via integrated charts.
- 🛒 Sales & Purchase Management: Streamlined workflows for recording transactions and managing product units.
- 📊 Stock Intelligence: Predictive alerts for "Days of inventory remaining" and restock valuations.
- ⚡ Built for Speed: Powered by Astro for near-instant load times and a sleek developer experience.
- Framework: Astro 5.x (Static Site Generation & Server-Side Rendering)
- Styling: Tailwind CSS 4.x (Modern utility-first CSS)
- Database & Auth: Supabase (PostgreSQL + Realtime + Authentication)
- Hosting: Cloudflare (Edge-ready deployment)
- Visuals: Chart.js for data visualization
- State Management: Nano Stores
OlivERP features an automatic Demo Mode. This allows anyone to explore the full interface and functionality without needing to set up a database or account.
- How it works: If the Supabase environment variables are missing or undefined, the application automatically switches to Demo Mode.
- Mock Data: The system provides realistic sample data for projects, products, stock levels, and historical financial transactions.
- Zero Configuration: Perfect for testing the UI, exploring features, or contributing to the frontend without any backend overhead.
- Node.js (Latest LTS recommended)
- pnpm (Preferred) or npm
- A Supabase account
-
Clone the repository:
git clone https://github.com/martinezharo/erp.git cd erp -
Install dependencies:
pnpm install
-
Configure Environment Variables: Create a
.envfile in the root directory and add your Supabase credentials:PUBLIC_SUPABASE_URL=your_supabase_url PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key
-
Initialize the Database: Run the SQL provided in
structure.sqlin your Supabase SQL Editor to create the necessary tables, views, and triggers. -
Start Development Server:
pnpm dev
| Command | Action |
|---|---|
pnpm dev |
Starts local dev server at localhost:4321 |
pnpm build |
Build the production-ready site to ./dist/ |
pnpm preview |
Preview your build locally before deploying |
pnpm astro ... |
Run Astro CLI commands |
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
Please see CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
Distributed under the MIT License. See LICENSE for more information.
Built with ❤️ by Oli
