/ever-gauzy

Ever® Gauzy™ - Open 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 Teams platform for Work & Project Management. Please check https://github.com/ever-co/ever-teams and make it ⭐ on GitHub! It's built with React / ReactNative (Expo) stack and connects to headless Ever Gauzy Platform APIs.

🌟 What is it

Ever® Gauzy™ - Open Business Management Platform for Collaborative, 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 Collaborative, On-Demand and Sharing Economies - Ever® Platform™.

✨ 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

A more detailed list of the features available in the platform:

  • Dashboard (provides an overview of different metrics, such as company income/expenses, employee bonuses, etc.)
  • Time Management / Time Tracking / Activity Tracking / Timesheets
  • Employees Management (register of company employees/contractors, rates of employees, etc.)
  • Employee 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.

🌼 Screenshots

Show / Hide Screenshots

Web UI

overview

Desktop Timer UI (Standard)

timer

Desktop Timer UI (Expanded)

timer

🔗 Links

📊 Activity

Alt

💻 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 the password is admin
  • Content of demo DB resets on each deployment to the 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 is available at https://app.gauzy.co.

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

Staging

  • Gauzy Platform Staging builds (using CI/CD, from the stage branch) are available at https://stage.gauzy.co
  • We are using the Staging environment to test releases before they are deployed to the 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 the Ever Gauzy Platform in 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 you to connect to the external database (e.g. PostgreSQL) or external API (if you have Gauzy Server with API / DB installed on a 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 running Time & Activity Tracking for employees/contractors 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 the 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 an 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 an "Employee" perspective (such a user is an Employee and can track time).
  • If you install Gauzy Server, it is possible to connect to it using a 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 on the Desktop Apps Wiki Page and about our Server on 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 (the file contains default env variables definitions). Important: the file .env.compose is different from .env.sample in some settings, please make sure you use the 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 the following:

  • PostgreSQL - Primary Database.
  • Pgweb - Cross-platform client for PostgreSQL DBs, available on http://localhost:8081.
  • ElasticSearch - Search Engine.
  • Dejavu - Web UI for ElasticSearch, available on http://localhost:1358.
  • MinIO - Multi-Cloud ☁️ Object Storage (AWS S3 compatible).
  • Jitsu - Jitsu is an open-source Segment alternative. Fully-scriptable data ingestion engine for modern data teams.
  • Redis - In-memory data store/caching (also used by Jitsu)
  • Cube - "Semantic Layer" used for Reports, Dashboards, Analytics, and other BI-related features, with UI available on http://localhost:4000.

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 the 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 is 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 a 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 seeded with a minimum set of initial data if no users are 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 amounts 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. Notes: the platform will work without Redis using an in-memory caching strategy instead of distributed one (recommended for testing/demo purposes only). Please note however that Redis is required for Jitsu.
  • 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 using Wasabi or AWS S3 storage or another S3-compatible cloud storage.
  • Optionally (recommended for production) install and run Jitsu. Note: the platform will work without Jitsu, however, data ingestion will be disabled for additional analyses / real-time pipelines.
  • Optionally (recommended for production) install and run Cube. Note: the platform will work without Cube, however some advanced (dynamic) reporting and data processing capabilities will be disabled.

Production

  • See Setup Gauzy for Client Server for more information about production setup on your servers.
  • For simple deployment 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 are explained in our Wiki.

This software is available under the 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 a full list of our contributors tracked by Github.

⭐ Star History

Star History Chart

❤️ Powered By

©️ Copyright

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