More Premium Hugo Themes Premium Svelte Themes

Permacoop

Open source and eco-designed ERP solution for worker-owned businesses.

Permacoop

Open source and eco-designed ERP solution for worker-owned businesses.

Author Avatar Theme by fairnesscoop
Github Stars Github Stars: 263
Last Commit Last Commit: Mar 21, 2025 -
First Commit Created: Dec 18, 2023 -
Permacoop screenshot

Overview

Permacoop is an open source and eco-design ERP solution designed specifically for worker-owned businesses. It offers a range of features including tasks management, projects management, customers management, calendar functionalities, human resources management, meal tickets, leaves management, cooperators/employee management, savings records, accounting, quotations, daily rates, invoicing, contacts management, and credits. This solution is built using Node.js, Nestjs, TypeORM, Typescript, and Svelte/SvelteKit/Sapper (legacy) frameworks, and it utilizes PostgreSQL as a database. Permacoop also provides API documentation and a client interface for easy interaction.

Features

  • Tasks Management: Efficiently manage tasks within your worker-owned business.
  • Projects Management: Effectively track and manage various projects.
  • Customers Management: Keep track of customer information and interactions.
  • Calendar: Plan and manage timesheets, appointments, and other calendar activities.
  • Human Resources: Manage employee-related information and processes.
  • Meal Tickets: Track and manage meal ticket allocation and usage.
  • Leaves Management: Easily handle leave requests and track leave balances.
  • Cooperators/Employee Management: Manage employee information and details.
  • Savings Records: Keep track of savings records and contributions.
  • Accounting: Manage financial records and transactions.
  • Quotations: Create and manage quotations for potential projects or services.
  • Daily Rates: Set and manage daily rates for various tasks and positions.
  • Invoicing: Generate and manage invoices for customers.
  • Contacts Management: Store and manage contact information for clients, partners, and suppliers.
  • Credits: Keep track of credit transactions and balances.

Installation

To install the Permacoop ERP solution, follow these steps:

Prerequisites:

  • Ensure that PostgreSQL is installed on your system. Alternatively, you can use Docker and Docker Compose to run PostgreSQL using the provided docker-compose.yml file.
  • Install Node.js 16.x and ensure that node-gyp is installed globally. You can run npm install -g node-gyp to install it.

Quickstart:

  1. Install the dependencies by running the following command in your terminal:
npm install
  1. Start the servers, database, and other services by running the following command:
npm run start:all
  1. In a separate terminal, run the database migrations using the following command:
npm run migration:run
  1. Seed the database with fake data by running the following command:
npm run seed
  1. The default user “John Doe” will be created during the seeding process.

  2. The server and client will be started. You can access the API documentation at http://localhost:3000/api and the client interface at http://localhost:3001/.

Helpers:

  • To view all available commands, run:
npm run help

Building and Serving:

  • To serve the built server and client locally, run:
npm run serve

Tests:

  • To run tests, use the following command:
npm run test
  • For end-to-end (E2E) tests, you will need to install additional dependencies first. Run the following command to install the dependencies:
npm run e2e:install
  • Run E2E tests using the following command:
npm run e2e:test

Code Quality:

  • To run automatic code formatting, run:
npm run format
  • To run linters and code checks, use:
npm run lint

Database Migrations:

  • To generate a migration from the current state of the code, run:
npm run migration:generate -- <migration-name>

Security:

  • The client must send the user apiToken in the Authorization header when making requests to protected resources. Use the following format: Authorization: Bearer <apiToken>.
  • To retrieve the apiToken, make a POST request on /login with a user email and password.

Summary

Permacoop is an open source ERP solution designed for worker-owned businesses. It offers a comprehensive set of features including tasks management, projects management, customers management, calendar functionalities, human resources management, meal tickets, leaves management, cooperators/employee management, savings records, accounting, quotations, daily rates, invoicing, contacts management, and credits. With its technical stack consisting of Node.js, Nestjs, TypeORM, Typescript, and Svelte/SvelteKit/Sapper (legacy), Permacoop provides a powerful tool for eco-friendly and worker-owned businesses to efficiently and effectively manage their operations.