/ever-gauzy

Ever® Gauzy™ - Open-Source Business Management Platform (ERP/CRM/HRM)

Primary LanguageTypeScriptOtherNOASSERTION

Ever Gauzy Platform

visitors License: AGPL v3 Gitpod Ready-to-Code

💡 What's New

We released Ever Gauzy Teams platform for Work & Project Management.
Please check https://github.com/ever-co/ever-gauzy-teams and make it ⭐ on GitHub!
It's built with React / ReactNative stack and connects to headless Ever Gauzy Platform APIs.

🌟 What is it

Ever® Gauzy™ - Open-Source Business Management Platform for On-Demand and Sharing Economies.

  • Enterprise Resource Planning (ERP) software.
  • Customer Relationship Management (CRM) software.
  • Human Resource Management (HRM) software with employee Time and Activity Tracking functionality.
  • Work and Project Management software.

overview

Ever® Gauzy™ Platform is a part of our larger Open Platform for On-Demand and Sharing Economies - Ever® Platform™.

🌼 Screenshots

Show / Hide Screenshots

Web UI

overview

Desktop Timer UI (Standard)

timer

Desktop Timer UI (Expanded)

timer

✨ Features

Main features:

  • Human Resources Management (HRM) with Time Management / Tracking and Employees Performance Monitoring
  • Customer Relationship Management (CRM)
  • Enterprise Resource Planning (ERP)
  • Projects / Tasks Management
  • Sales Management
  • Financial and Cost Management (including Accounting, Invoicing, etc)
  • Inventory, Supply Chain Management and Production Management

More detailed list of the features available in the platform:

  • Dashboard (provides overview of different metrics, such as company income / expenses, employees bonuses, etc.)
  • Time Management / Time Tracking / Activity Tracking / Timesheets
  • Employees Management (register of company employees / contractors, rates of employees, etc.)
  • Employees Onboarding / Candidates Interviews
  • Contacts Management (Clients / Customers / Leads / etc.)
  • Schedules / Appointments / Events
  • Project Management / Tasks
  • Goals / KPI / Objectives / Key Results
  • Sales Pipelines
  • Proposals
  • Accounting / Invoicing / Estimates
  • Billing
  • Payments
  • Income / Expenses Management
  • Time Off Management / Holidays / Approvals
  • Inventory
  • Equipment / Sharing
  • Multiple Organizations Management
  • Organization Departments and Teams
  • Organization Clients and Vendors
  • Help Center / Knowledge Base
  • Tags / Labels
  • Reports / Insights / Analytics
  • Organization and Employee Public Pages
  • Integrations (Upwork, HubStaff, etc.)
  • Email History / Email Templates
  • Data Import / Export
  • Roles / Permissions
  • Multi-currency
  • Multi-lingual
  • Dark / Light / Corporate / Material and other Themes

Read more about Gauzy and how to use it at your company, on-demand business, freelance business, agency, studio or in-house teams.

🔗 Links

💻 Demo, Downloads, Testing and Production

Demo

Ever Gauzy Platform Demo at https://demo.gauzy.co.

Notes:

  • Default super-admin user login is admin@ever.co and password is admin
  • Content of demo DB resets on each deployment to demo environment (usually daily)
  • Demo environment deployed using CI/CD from the develop branch

Downloads

You can download Gauzy Platform, Gauzy Server or Desktop Apps (Windows/Mac/Linux) from the official Downloads page.

In addition, all downloads are also available from the following pages:

Production (SaaS)

Ever® Gauzy™ Platform SaaS available at https://app.gauzy.co.

Note: it's currently in Alpha version / in testing mode, please use with caution!

Staging

  • Gauzy Platform Staging builds (using CI/CD, from the stage branch) are available at https://stage.gauzy.co
  • We are using Staging environment to test releases before they are deployed to production environment
  • Our pre-releases of desktop / server apps are built from this environment and can be configured manually (in settings) to connect to Stage API: https://apistage.gauzy.co

Server & Desktop Apps

We have Gauzy Server and two Desktop Apps (for Windows/Mac/Linux):

  • Ever® Gauzy™ Server - includes Gauzy API, SQLite DB (or connects to external PostgreSQL) and serves Guazy frontend. It allows to quickly run Gauzy Server for multiple clients (browser based or Desktop based). It's recommended option if you want to setup Ever Gauzy Platform in the small to medium organizations.

  • Ever® Gauzy™ Desktop App - includes Gauzy frontend (UI), Gauzy API, SQLite DB, etc., all-in-one! It allows to quickly run the whole Gauzy solution locally, both UI and Timer (for time tracking, optionally of course). In addition, it allows to connect to the external database (e.g. PostgreSQL) or external API (if you have Gauzy Server with API / DB installed on different computer or if you want to connect to our live API). It's recommended option if you want to try Gauzy quickly / for personal use or if you want to connect to Gauzy Server in the "client-server" configuration (and use Desktop App instead of web browser).

  • Ever® Gauzy™ Desktop Timer App - allows to run Time & Activity Tracking for employees (agent) with screenshots and activity monitoring. Recommended to setup by organization employees as long as they are not interested in other Gauzy Platform features (e.g. accounting) and only need to track work time.

More information about our Server & Desktop Apps:

  • Download for your OS from the official Downloads page or see section "Download" above for other links to our releases pages.
  • Setup Gauzy Server with default choices in Setup Wizard and run it.
  • You can also setup Gauzy Desktop App (can run independently or connect to Gauzy Server) or Gauzy Desktop Timer App (should be connected to Gauzy Server)
  • You can login with admin@ever.co and password admin to check Admin functionality if you installed Gauzy Server or Gauzy Desktop App. Note: such Admin user is not an employee, so you will not be able to track time.
  • You can login with employee@ever.co and password 123456 to check Employee related functionality in Gauzy UI or to run Desktop Timer from "Employee" perspective (such user is an Employee and can track time).
  • If you install Gauzy Server, it is possible to connect to it using browser (by default on http://localhost:4200) or using Gauzy Desktop Apps (make sure to configure Desktop apps to connect to Gauzy API on http://127.0.0.1:3000/api because it's where Gauzy Server API runs by default).
  • You can read more information about our Desktop Apps in the Desktop Apps Wiki Page and about our Server in the Server Wiki Page.

🧱 Technology Stack and Requirements

For Production, we recommend:

Note: thanks to TypeORM, Gauzy will support lots of DBs: SQLite (default, for demos), PostgreSQL (development/production), MySql, MariaDb, CockroachDb, MS SQL, Oracle, MongoDb and others, with minimal changes.

See also README.md and CREDITS.md files in relevant folders for lists of libraries and software included in the Platform, information about licenses and other details

📄 Documentation

Please refer to our official Platform Documentation and to our Wiki (WIP).

🚀 Quick Start

With Docker Compose

  • Clone repo.
  • Make sure you have Docker Compose installed locally.
  • Copy .env.compose file into .env file in the root of mono-repo (file contains default env variables definitions). Important: file .env.compose is different to .env.sample in some settings, please make sure you use correct one!
  • Run docker-compose -f docker-compose.demo.yml up, if you want to run the platform using our prebuild Docker images. (Note: it uses latest images pre-build automatically from head of master branch using Github CI/CD.)
  • Run docker-compose up, if you want to build everything (code and Docker images) locally. (Note: this is extremely long process, option above is much faster.)
  • ☕ time... It might take some time for our API to seed fake data in the DB during the first Docker Compose run, even if you used prebuild Docker images.
  • Open http://localhost:4200 in your browser.
  • Login with email admin@ever.co and password: admin for Super Admin user.
  • Login with email employee@ever.co and password: 123456 for Employee user.
  • Enjoy!

Together with Gauzy, Docker Compose will run following:

Manually

Required

  • Install NodeJs LTS version or later, e.g. 18.x.
  • Install Yarn (if you don't have it) with npm i -g yarn.
  • Install NPM packages and bootstrap solution using command yarn bootstrap.
  • If you will need to make code changes (and push to Git repo), please run yarn prepare:husky.
  • Adjust settings in the .env.local which used in local runs.
  • Alternatively, you can copy .env.sample to .env and change default settings there, e.g. database type, name, user, password, etc.
  • Run both API and UI with single command: yarn start.
  • Open Gauzy UI on http://localhost:4200 in your browser (API runs on http://localhost:3000/api).
  • Login with email admin@ever.co and password: admin for Super Admin user.
  • Login with email employee@ever.co and password: 123456 for Employee user.
  • Enjoy!

Notes:

  • during the first API start, DB will be automatically seed with minimum set of initial data if no users found.
  • you can run seed any moment manually (e.g. if you changed entities schemas) with yarn seed command to re-initialize DB (warning: unsafe for production!).
  • it is possible to run generation of extremely large amount of fake data for demo purposes / testing with yarn seed:all (warning: takes ~10 min to complete)

Optional / Recommended for Production

  • Optionally (recommended for production) install and run PostgreSQL version 14 or later. Note: other DB can be configured manually in TypeORM. The default DB is set to SQLite (recommended for testing/demo purposes only).
  • Optionally (recommended for production) install and run Redis. Note: the platform will work without Redis using in-memory caching strategy instead of distributed one (recommended for testing/demo purposes only).
  • Optionally (recommended for production) install and run ElasticSearch. Note: the platform will work without ElasticSearch using DB build-in search capabilities (recommended for testing/demo purposes only).
  • Optionally install and run MinIO or LocalStack. Note: the platform will work without MinIO / LocalStack or other S3 compatible storage using local filesystem based storage (recommended for testing/demo purposes only). For production, we recommend to use Wasabi or AWS S3 storage.
  • Optionally (recommended for production) install and run Cube.

Production

  • See Setup Gauzy for Client Server for more information about production setup on your servers.
  • For simple deployments scenarios (e.g. for yourself or your own small organization), check our Kubernetes configurations, which we are using to deploy Gauzy demo into DigitalOcean k8s cluster.
  • In addition, check Gauzy Pulumi project (WIP), it makes complex Clouds deployments possible with a single command (pulumi up). Note: it currently supports AWS EKS (Kubernetes) for development and production with Application Load Balancers and AWS RDS Serverless PostgreSQL DB deployments. We also implemented deployments to ECS EC2 and Fargate Clusters in the same Pulumi project.

💌 Contact Us

🔐 Security

Ever® Gauzy™ follows good security practices, but 100% security cannot be guaranteed in any software! Ever® Gauzy™ is provided AS IS without any warranty. Use at your own risk! See more details in the LICENSE.

In a production setup, all client-side to server-side (backend, APIs) communications should be encrypted using HTTPS/WSS/SSL (REST APIs, GraphQL endpoint, Socket.io WebSockets, etc.).

If you discover any issue regarding security, please disclose the information responsibly by sending an email to mailto:security@ever.co or on huntr and not by creating a GitHub issue.

🛡️ License

We support the open-source community. If you're building awesome non-profit/open-source projects, we're happy to help and will provide (subject to acceptance criteria) Ever Gauzy Enterprise edition license and free hosting option! Feel free to contact us at mailto:ever@ever.co to make a request. More details explained in our Wiki.

This software is available under following licenses:

The default Ever® Gauzy™ Platform license, without a valid Ever® Gauzy™ Platform Enterprise or Ever® Gauzy™ Platform Small Business License agreement, is the Ever® Gauzy™ Platform Community Edition License

Please see LICENSE for more information on licenses. You can also compare our offering

FOSSA Status

™️ Trademarks

Ever® is a registered trademark of Ever Co. LTD. Ever® Demand™, Ever® Gauzy™ and Ever® OpenSaaS™ are all trademarks of Ever Co. LTD.

The trademarks may only be used with the written permission of Ever Co. LTD. and may not be used to promote or otherwise market competitive products or services.

All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.

🍺 Contribute

  • Please give us ⭐ on Github, it helps!
  • You are more than welcome to submit feature requests in the separate repo
  • Pull requests are always welcome! Please base pull requests against the develop branch and follow the contributing guide.

💪 Thanks to our Contributors

See our contributors list in CONTRIBUTORS.md. You can also view full list of our contributors tracked by Github.

©️ Copyrigh

Copyright © 2019-present, Ever Co. LTD. All rights reserved

huntr Circle CI codecov Codacy Badge DeepScan grade Known Vulnerabilities Total alerts Language grade: JavaScript FOSSA Status Crowdin

🔥 P.S