{"id":13454304,"url":"https://github.com/hcengineering/platform","last_synced_at":"2026-04-14T03:01:00.597Z","repository":{"id":36960045,"uuid":"392073243","full_name":"hcengineering/platform","owner":"hcengineering","description":"Huly — All-in-One Project Management Platform (alternative to Linear, Jira, Slack, Notion, Motion)","archived":false,"fork":false,"pushed_at":"2026-04-12T06:03:26.000Z","size":313039,"stargazers_count":25320,"open_issues_count":795,"forks_count":1820,"subscribers_count":78,"default_branch":"develop","last_synced_at":"2026-04-12T06:08:22.957Z","etag":null,"topics":["applicant-tracking-system","chat-application","crm","crm-platform","hrms","human-resources","issue-management","issue-tracker","jira-alternative","project-management","qms","support","team-management","team-platform","wiki"],"latest_commit_sha":null,"homepage":"https://huly.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hcengineering.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-08-02T19:39:23.000Z","updated_at":"2026-04-12T05:36:58.000Z","dependencies_parsed_at":"2023-09-27T18:27:30.030Z","dependency_job_id":"6331632d-8c07-425c-9ddd-042ca9f344d4","html_url":"https://github.com/hcengineering/platform","commit_stats":{"total_commits":5398,"total_committers":86,"mean_commits":62.76744186046512,"dds":0.7945535383475362,"last_synced_commit":"6e53e76fbbe692c95f1c99c641f9b157b0f7d003"},"previous_names":["hcengineering/platform","hcengineering/anticrm"],"tags_count":999,"template":false,"template_full_name":null,"purl":"pkg:github/hcengineering/platform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hcengineering%2Fplatform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hcengineering%2Fplatform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hcengineering%2Fplatform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hcengineering%2Fplatform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hcengineering","download_url":"https://codeload.github.com/hcengineering/platform/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hcengineering%2Fplatform/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31779947,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["applicant-tracking-system","chat-application","crm","crm-platform","hrms","human-resources","issue-management","issue-tracker","jira-alternative","project-management","qms","support","team-management","team-platform","wiki"],"created_at":"2024-07-31T08:00:52.876Z","updated_at":"2026-04-14T03:01:00.580Z","avatar_url":"https://github.com/hcengineering.png","language":"TypeScript","readme":"# Huly Platform\n\n[![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/huly_io?style=for-the-badge)](https://x.com/huly_io)\n![GitHub License](https://img.shields.io/github/license/hcengineering/platform?style=for-the-badge)\n\n⭐️ Your star shines on us. Star us on GitHub!\n\n## About\n\nThe Huly Platform is a robust framework designed to accelerate the development of business applications, such as CRM systems.\nThis repository includes several applications, such as Chat, Project Management, CRM, HRM, and ATS.\nVarious teams are building products on top of the Platform, including [Huly](https://huly.io) and [TraceX](https://tracex.co).\n\n![Huly](https://repository-images.githubusercontent.com/392073243/6d27d5cc-38cd-4d88-affe-bb88b393180c)\n\n## Self-Hosting\n\nIf you're primarily interested in self-hosting Huly without the intention to modify or contribute to its development, please use [huly-selfhost](https://github.com/hcengineering/huly-selfhost).\nThis project offers a convenient method to host Huly using `docker`, designed for ease of use and quick setup. Explore this option to effortlessly enjoy Huly on your own server.\n\n## Activity\n\n![Alt](https://repobeats.axiom.co/api/embed/c42c99e21691fa60ea61b5cdf11c2e0647621534.svg 'Repobeats analytics image')\n\n## API Client\n\nIf you want to interact with Huly programmatically, check out our [API Client](./packages/api-client/README.md) documentation. The API client provides a typed interface for all Huly operations and can be used to build integrations and custom applications.\n\nYou can find API usage examples in the [Huly examples](https://github.com/hcengineering/huly-examples) repository.\n\n## Table of Contents\n\n- [Huly Platform](#huly-platform)\n  - [About](#about)\n  - [Self-Hosting](#self-hosting)\n  - [Activity](#activity)\n  - [API Client](#api-client)\n  - [Table of Contents](#table-of-contents)\n  - [Pre-requisites](#pre-requisites)\n  - [Verification](#verification)\n  - [Fast start](#fast-start)\n  - [Branches \\\u0026 Contributing](#branches--contributing)\n  - [Authentication](#authentication)\n  - [Installation](#installation)\n  - [Build and run](#build-and-run)\n  - [Run in development mode](#run-in-development-mode)\n  - [Update project structure and database](#update-project-structure-and-database)\n  - [Troubleshooting](#troubleshooting)\n  - [Build \\\u0026 Watch](#build--watch)\n  - [Tests](#tests)\n    - [Unit tests](#unit-tests)\n    - [UI tests](#ui-tests)\n  - [Package publishing](#package-publishing)\n  - [Additional testing](#additional-testing)\n\n## Pre-requisites\n\n- Before proceeding, ensure that your system meets the following requirements:\n  - [Node.js](https://nodejs.org/en/download/) (v20.11.0 is required)\n  - [Docker](https://docs.docker.com/get-docker/)\n  - [Docker Compose](https://docs.docker.com/compose/install/)\n\n## Verification\n\nTo verify the installation, perform the following checks in your terminal:\n\n- Ensure that the `docker` commands are available:\n\n```bash\ndocker --version\ndocker compose version\n```\n\n## Fast start\n\n```bash\nsh ./scripts/fast-start.sh\n```\n\n## Branches \u0026 Contributing\n\n- The `main` branch is the default branch used for production deployments.\n  Changes to this branch are made from the `staging` branch once a version is ready for community use.\n\n- The `staging` branch is used for pre-release testing.\n  It is stable enough for testing but not yet ready for production deployment.\n\n- The `develop` branch is used for development and is the default branch for contributions.\n\nWe periodically merge `develop` into `staging` to perform testing builds. Once we are satisfied with the build quality in our pre-release deployment, we merge changes into `main` and release a new version to the community.\n\n## Authentication\n\nThis project uses GitHub Packages for dependency management. To successfully download dependencies, you need to generate a GitHub personal access token and log in to npm using that token.\n\nFollow these steps:\n\n1. Generate a GitHub Token:\n- Log in to your GitHub account\n- Go to **Settings** \u003e **Developer settings** \u003e **Personal access tokens** (https://github.com/settings/personal-access-tokens)\n- Click **Generate new token**\n- Select the required scopes (at least `read:packages`)\n- Generate the token and copy it\n\n2. Authenticate with npm:\n```bash\nnpm login --registry=https://npm.pkg.github.com\n```\n\nWhen prompted, enter your GitHub username, use the generated token as your password\n\n## Installation\n\nYou need Microsoft's [rush](https://rushjs.io) to install the application.\n\n1. Install Rush globally using the command:\n\n```bash\nnpm install -g @microsoft/rush\n```\n\n2. Navigate to the repository root and run the following commands:\n\n```bash\nrush install\nrush build\n```\n\nAlternatively, you can just execute:\n\n```bash\nsh ./scripts/presetup-rush.sh\n```\n\n## Build and run\n\nDevelopment environment setup requires Docker to be installed on system.\n\nSupport is available for both amd64 and arm64 containers on Linux and macOS.\n\n```bash\ncd ./dev/\nrush build    # Will build all the required packages.\n# rush rebuild  # could be used to omit build cache.\nrush bundle   # Will prepare bundles.\nrush package  # Will build all webpack packages.\nrush validate # Will validate all sources with typescript and generate d.ts files required for ts-node execution.\nrush svelte-check # Optional. svelte files validation using svelte-check.\nrush docker:build   # Will build Docker containers for all applications in the local Docker environment.\nrush docker:up # Will set up all the containers\n```\n\nBe aware `rush docker:build` will automatically execute all required phases like build, bundle, package.\n\nAlternatively, you can just execute:\n\n```bash\nsh ./scripts/build.sh\n```\n\nBy default, Docker volumes named dev_db, dev_elastic, and dev_files will be created for the MongoDB, Elasticsearch, and MinIO instances.\n\nAdd the following line to your /etc/hosts file\n\n```plain\n127.0.0.1 huly.local\n::1 huly.local\n```\n\nAccessing the URL \u003chttp://huly.local:8087\u003e will lead you to the app in development mode.\n\nLimitations:\n\n- Local installation does not support sending emails, thus disabling functionalities such as password recovery and email notifications.\n\n## Run in development mode\n\nDevelopment mode allows for live reloading and a smoother development process.\n\n```bash\ncd dev/prod\nrush validate\nrushx dev-server\n```\n\nThen go to \u003chttp://localhost:8080\u003e\n\nSelect \"Sign up\" on the right panel and click the \"Sign up with password\" link at the bottom. Enter the new user's credentials, then proceed to create a workspace for them.\n\n## Update project structure and database\n\nIf the project's structure is updated, it may be necessary to relink and rebuild the projects.\n\n```bash\nrush update\nrush build\n```\n\n## Troubleshooting\n\nIf a build fails, but the code is correct, try to delete the [build cache](https://rushjs.io/pages/maintainer/build_cache/) and retry.\n\n```bash\n# from the project root\nrm -rf common/temp/build-cache\n```\n\n## Build \u0026 Watch\n\nFor development purpose `rush build:watch` action could be used.\n\nIt includes build and validate phases in watch mode.\n\n## Tests\n\n### Unit tests\n\n```bash\nrush test # To execute all tests\n\nrushx test # For individual test execution inside a package directory\n```\n\n### UI tests\n\n```bash\ncd ./tests\nrush build\nrush bundle\nrush docker:build\n## creates test Docker containers and sets up test database\n./prepare.sh\n## runs UI tests\nrushx uitest\n```\n\nTo execute tests in the development environment, please follow these steps:\n\n```bash\ncd ./tests\n./create-local.sh ## use ./restore-local.sh if you only want to restore the workspace to a predefined initial state for sanity.\ncd ./sanity\nrushx dev-uitest # To execute all tests against the development environment.\nrushx dev-debug -g 'pattern' # To execute tests in debug mode with only the matching test pattern.\n```\n\n## Package publishing\n\n```bash\nnode ./common/scripts/bump.js -p projectName\n```\n\n## Additional testing\n\nThis project is tested with BrowserStack.\n\n\u003csub\u003e\u003csup\u003e\u0026copy; 2025 \u003ca href=\"https://hardcoreeng.com\"\u003eHardcore Engineering Inc\u003c/a\u003e.\u003c/sup\u003e\u003c/sub\u003e\n","funding_links":[],"categories":["TypeScript","project-management","Productivity","support","Table of Contents"],"sub_categories":["Project Management","Other"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhcengineering%2Fplatform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhcengineering%2Fplatform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhcengineering%2Fplatform/lists"}