{"id":32957729,"url":"https://github.com/annetteplatform/annette","last_synced_at":"2026-01-14T01:54:49.400Z","repository":{"id":43096035,"uuid":"299372871","full_name":"annetteplatform/annette","owner":"annetteplatform","description":"Platform to build distributed, scalable, enterprise-wide business applications","archived":false,"fork":false,"pushed_at":"2024-06-21T13:14:48.000Z","size":2719,"stargazers_count":19,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-11-16T18:01:32.479Z","etag":null,"topics":["akka","annette-platform","distributed-systems","ecosystem","enterprise","headless","kubernetes","lagom","lagom-framework","microservice","microservices","microservices-architecture","reactive","scala"],"latest_commit_sha":null,"homepage":"https://annetteplatform.github.io/","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/annetteplatform.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2020-09-28T16:48:14.000Z","updated_at":"2024-12-09T19:54:58.000Z","dependencies_parsed_at":"2024-11-15T00:38:43.597Z","dependency_job_id":"efc3ac98-ce3a-4c03-964d-1c5b1878a216","html_url":"https://github.com/annetteplatform/annette","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/annetteplatform/annette","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annetteplatform%2Fannette","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annetteplatform%2Fannette/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annetteplatform%2Fannette/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annetteplatform%2Fannette/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/annetteplatform","download_url":"https://codeload.github.com/annetteplatform/annette/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/annetteplatform%2Fannette/sbom","scorecard":{"id":197522,"data":{"date":"2025-08-11","repo":{"name":"github.com/annetteplatform/annette","commit":"0d52ec223203b85d94e490790d48904a6c62c4f1"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.8,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 1/12 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: deploy/docker/camunda/Dockerfile:1: pin your Docker image by updating camunda/camunda-bpm-platform:run-7.19.0 to camunda/camunda-bpm-platform:run-7.19.0@sha256:1a32f1404c2b5cbe7d0858f0ef866ffe4c563d4e5613afbc6971aeac897f46e8","Warn: containerImage not pinned by hash: deploy/docker/keycloak/Dockerfile:1: pin your Docker image by updating quay.io/keycloak/keycloak:22.0.0 to quay.io/keycloak/keycloak:22.0.0@sha256:1882e5b5b881ec9370a5b2048b4c9e8b877d98eabad5d7a82af12efc697c59da","Warn: containerImage not pinned by hash: deploy/docker/postgres/Dockerfile:1: pin your Docker image by updating postgres:15.3 to postgres:15.3@sha256:8775adb39f0db45cf4cdb3601380312ee5e9c4f53af0f89b7dc5cd4c9a78e4e8","Info:   0 out of   3 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-16T22:06:08.399Z","repository_id":43096035,"created_at":"2025-08-16T22:06:08.399Z","updated_at":"2025-08-16T22:06:08.399Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28408692,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T00:40:43.272Z","status":"ssl_error","status_checked_at":"2026-01-14T00:40:42.636Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["akka","annette-platform","distributed-systems","ecosystem","enterprise","headless","kubernetes","lagom","lagom-framework","microservice","microservices","microservices-architecture","reactive","scala"],"created_at":"2025-11-12T23:00:31.030Z","updated_at":"2026-01-14T01:54:49.395Z","avatar_url":"https://github.com/annetteplatform.png","language":"Scala","readme":"# Annette Platform Community Edition\n\nAnnette Platform is a platform to build business applications. It is designed to be highly available. \nAnnette Platform is “cloud-native” as it has been designed scale out in large, distributed environments,\nand works well inside containers. It uses in-memory calculation and non-blocking processing \ntechnologies to provide high performance. Annette Platform has been build on microservice architecture. \nEach microservice runs multiple instances that form a cluster to provide load balancing and scaling.\n\nAnnette Platform Community Edition (Annette CE) is open source version of Annette Platform Enterprise Edition \n(Annette EE). Annette CE contains the base functionality and key features of Annette EE. Since it has no \nbackward compatibility restrictions, some of the Annette Platform features could be implemented in a more \nadvanced way. \n\nAnnette Platform is backed by [IP Lobachev](https://lobachev.biz/), [AmberLabs](https://amberlabs.ru/) and\n[ArtNet](https://artnet.tech/), software companies that develop business applications using the platform \nand provide commercial support.\n\n## Features\n\nAnnette platform provides set of microservices and libraries that helps to build enterprise wide digital ecosystem.\nThis ecosystem can contain a number of applications that share commonly used data and have seamless integration. \nThis helps Annette users to communicate, collaborate and make them more productive. \n\nThe technological features:\n\n* High performance provided by implementation of [Reactive Manifesto](https://www.reactivemanifesto.org/) principles.\n* High scalability provided by [Akka](https://akka.io/) clustering technologies and [Kubernetes](https://kubernetes.io/) \n  production-grade container orchestration.  \n* Cloud native allows deploying Annette applications in on-premise, private cloud or public cloud environments. \n* Enterprise-wide platform\n* Extendable architecture based on microservices\n* Support of unlimited number frontend applications\n* Support of unlimited number API Gateways for serving frontend applications and external integration services\n* Distributed cluster architecture of microservices and API Gateways\n* External \u0026 internal authentication\n* External \u0026 internal authorization\n* Embedded Elastic Search integration\n  \n\nBusiness features:\n* High performance that provides quick response and high user satisfaction (customer, employees, business partners)\n* High scalability that allows you to optimize costs and scale computing resources in accordance with the needs\n* Low time-to-market due to rapid development and implementation of new services\n* Low total cost of ownership\n* A unified ecosystem that combines various applications on the Annette platform into a single business environment \n  through Single Sign On and shared data.\n* Powerful authorization system implements a fine-grained role based access control (RBAC) and allows flexible permission\n  assignment expressed with business terms such as organizational hierarchy and employee business roles.\n* A unified person repository that stores all users, employees, partners, contacts etc. in single repository and share \n  it between Annette applications\n* An organizational repository that stores organizations data with their respective organizational structures, hierarchies, \n  units, positions, business roles and manager-subordinate relationships     \n* Multilanguage and localization support allows to use Annette platform in multinational corporations.  \n* Flexible attribute system that allows creating custom attributes, assigning them to various business entities such as person, \n  organization unit, organizational position etc. and provides powerful full text search capabilities.  \n\nAnnette is stable and mature platform. It is battle tested in large environments with hundreds of concurrent users. \nThere are number of applications that has been developed using it, such as:\n* TELE2 Logistics System for SAP ERP on HANA — user friendly interface for performing logistics operations (material \n  procurements, movements and consumption) in SAP HANA (approx. 700 users);\n* MIMC Application Processing System — system for registration and expert evaluation applications to Moscow International \n  Medical Cluster (approx. 100 users);\n* Construction Project Management System for Moscow Construction Department — system to manage construction projects in \n  Moscow (more than 10000 users);\n* Construction Worker’s Safety Control System for Moscow Construction Department — IoT hardware and software solution, \n  based on LoRaWAN technologies, to control worker’s presence, location and safety on construction sites \n  (more than 3000 users);\n* Eldorado MVideo Enterprise Portal (EM Life) — enterprise collaboration and communication system integrated with \n  SAP HCM, SAP BW and others corporate information systems at one of Russian largest retailer MVideo Eldorado \n  (approx. 30000 users). EMLife won Russian Intranet Award in nomination Intranet of the Year and international silver \n  award Intranet 2020    \n \n\n## Get started\n\nSee [Get started](https://annetteplatform.github.io/get-started/).\n\n## Installation\n\nTo run Annette Platform in Docker perform the following steps:\n\n1. Clone repository\n\n```bash\ngit clone https://github.com/annetteplatform/annette.git\n```\n\n2. Go to Docker deploy directory `deploy/docker` in project directory\n\n```bash\ncd annette/deploy/docker\n```\n\n3. Run deploy script to deploy platform in Docker Compose\n\n```bash\n./deploy.sh\n```\n\n4. After all services become up and have the healthy state run demo ignition script to populate database with demo data\n\n```bash\n./demo-ignition.sh\n```\n\n6. After demo ignition completes open Annette Console [http://localhost:8500](http://localhost:8500) (login: `kristina.fisher`, password: `abc`).\nKeycloak administration console is running at [http://localhost:8080](http://localhost:8080) (login: `admin`, password: `admin`).\n\n\n## Documentation \n\nDetailed documentation can be found on [Annette Platform](https://annetteplatform.github.io/) site.\n\n\n## License\n\nAnnette Platform Community Edition is Open Source and available under the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0)\n\n## Legal\n\nCopyright 2013 - 2020 Valery Lobachev and the Annette Contributors. All rights reserved.\n","funding_links":[],"categories":["Table of Contents"],"sub_categories":["Distributed Systems"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fannetteplatform%2Fannette","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fannetteplatform%2Fannette","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fannetteplatform%2Fannette/lists"}