{"id":20704654,"url":"https://github.com/holon-platform/platform","last_synced_at":"2025-04-23T01:28:43.528Z","repository":{"id":38549187,"uuid":"93078300","full_name":"holon-platform/platform","owner":"holon-platform","description":"The Holon Platform is a Java development ecosystem to create and maintain high quality, enteprise-grade web applications and services. Get started using the platform BOM.","archived":false,"fork":false,"pushed_at":"2023-11-14T14:12:16.000Z","size":195,"stargazers_count":14,"open_issues_count":0,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-29T20:51:09.409Z","etag":null,"topics":["framework","full-stack","holon","holon-platform","java","java-8","java-api","platform","platform-architecture","platform-bom","web-application","web-application-framework","web-framework","web-platform"],"latest_commit_sha":null,"homepage":"https://holon-platform.com","language":null,"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/holon-platform.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null}},"created_at":"2017-06-01T16:36:24.000Z","updated_at":"2023-09-13T13:52:40.000Z","dependencies_parsed_at":"2023-11-14T15:30:19.489Z","dependency_job_id":"4850a9fa-1f9f-4530-b702-f0666c6d7df6","html_url":"https://github.com/holon-platform/platform","commit_stats":null,"previous_names":[],"tags_count":42,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fplatform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fplatform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fplatform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holon-platform%2Fplatform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/holon-platform","download_url":"https://codeload.github.com/holon-platform/platform/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250351628,"owners_count":21416353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["framework","full-stack","holon","holon-platform","java","java-8","java-api","platform","platform-architecture","platform-bom","web-application","web-application-framework","web-framework","web-platform"],"created_at":"2024-11-17T01:14:18.296Z","updated_at":"2025-04-23T01:28:43.510Z","avatar_url":"https://github.com/holon-platform.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Holon Platform\n\n\u003e Latest release: [5.7.0](#obtain-the-artifacts)\n\nThe [Holon Platform](https://holon-platform.com) is a __Java__ development ecosystem to create and maintain high quality, enteprise-grade web applications and services.\n\nSome of the main platform key points are:\n\n* __Provides \"real\" Java API__: the Holon platform is designed as a real Java API, with the aim to leverage all new Java 11 features and to create strong abstraction layers to ensure implementation details encapsulation, high productivity and long-term maintanability with a minimal application upgrade effort to follow the platform evolution.\n\n* It's __modular and full-stack__ at the same time: the Holon platform provides a full-stack application development environment, but you can select only the components or modules you need and replace or extend them leveraging on the high configurability and extensibility features ensured by the platform architecture.\n\n* The __`Property` data model__: the Holon platform property data model architecture allows to use an application data model which is independent from the persistence technology and make it a shared asset for all application layers, from the backend to the UI, avoiding code duplication and using a consistent API to manage it.\n\n* It's __extensible by design__: the Holon platform components are designed to be highly extensible, configurable and integrable with other frameworks or libraries. This way it is the platform which must fit your needs, and not vice-versa.\n\nThe platform is organized in __modules__: each module corresponds to a GitHub repository and it is composed by a number of _artifacts_. All the modules depends from the _core_ module, and any other module (and its _artifacts_) can be used independently, to suit each project/application needs with a lightweight dependency set.\n\nSee the [Modules](#modules) section for a list of the available platform modules.\n\n## Code structure\n\nSee [Holon Platform code structure and conventions](CODING.md) to learn about the _\"real Java API\"_ philosophy with which the project codebase is developed and organized.\n\n## Getting started\n\n### System requirements\n\nThe Holon Platform is built using __Java 11__, so you need a JRE/JDK version 11 or above to use the platform artifacts.\n\n### Releases\n\nSee [releases](https://github.com/holon-platform/platform/releases) for the available releases.\n\n### Platform distribution versioning\n\nThe Holon platform use the [Semantic Versioning](http://semver.org) system and each platform _module_ is versioned following the semantic versioning convention.\n\nThe platform distribution artifact, which contains the Maven _BOM (Bill Of Materials)_ to provide all the platform modules artifacts, is bound to all the __latest modules version__ at the platform release time. For this reason, the following convention is used for the platform distribution versioning:\n\n* When a new platform _module_ version is released, a new platform distribution version is released too, and the platform overall version is incremented according to the _module_ version: if it is a _patch version_ release, the platform _patch version_ is incremented; if it is a _minor version_ release, the platform _minor version_ is incremented instead.\n\n* When more than one platform _module_ version changes, the most significative version change is taken into account: if the _minor version_ of a module is changed, the platform _minor version_ is incremented; if only the _patch version_ of the modules is changed, the platform _patch version_ is incremented instead.\n\n* The platform _major version_ number is incremented for breaking and not backward-compatible API changes. In this case, all the platform _modules_ will be versioned with the new  _major version_ number.\n\n* The platform _patch version_ number can be incremented even if there are not any module version changes, for example to release a documentation or BOM project fix.\n\n### Obtain the artifacts\n\nThe [Holon Platform](https://holon-platform.com) is open source and licensed under the [Apache 2.0 license](LICENSE.md). All the artifacts (including binaries, sources and javadocs) are available from the [Maven Central](https://mvnrepository.com/repos/central) repository.\n\nThe easiest way to obtain the Holon Platform artifacts is by using the __platform BOM (Bill Of Materials)__, which provides a complete set of dependencies of the latest release of each module.\n\n_Platform Maven BOM:_\n```xml\n\u003cdependencyManagement\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003ecom.holon-platform\u003c/groupId\u003e\n        \u003cartifactId\u003ebom\u003c/artifactId\u003e\n        \u003cversion\u003e5.7.0\u003c/version\u003e\n        \u003ctype\u003epom\u003c/type\u003e\n        \u003cscope\u003eimport\u003c/scope\u003e\n    \u003c/dependency\u003e\n\u003c/dependencyManagement\u003e\n```\n\nWith the platform _BOM_ imported in your dependency management section, you can declare and obtain the artifacts you need without specifying the artifact version, which will be the latest version provided by the platform _BOM_. For example:\n\n_Declaring the holon-core dependency:_\n```xml\n\u003cdependencies\u003e\n  \u003cdependency\u003e\n    \u003cgroupId\u003ecom.holon-platform.core\u003c/groupId\u003e\n    \u003cartifactId\u003eholon-core\u003c/artifactId\u003e\n  \u003c/dependency\u003e\n\u003c/dependencies\u003e\n```\n\nSee the [Modules](#modules) section for a list of the available platform modules.\n\n## Getting help\n\n* Check the [platform documentation](https://docs.holon-platform.com/current/reference).\n\n* Explore the [Holon platform website](https://holon-platform.com) for tutorials, learning resources, news and articles.\n\n* Ask a question on [Stack Overflow](http://stackoverflow.com). We monitor the [`holon-platform`](http://stackoverflow.com/tags/holon-platform) tag.\n\n* A [commercial support](https://holon-platform.com/services) is available too.\n\n## Examples\n\nSee the [Holon Platform examples](https://github.com/holon-platform/holon-examples) repository for a set of example projects.\n\n## Contribute\n\nSee [Contributing to the Holon Platform](https://github.com/holon-platform/platform/blob/master/CONTRIBUTING.md).\n\n[![Gitter chat](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/holon-platform/contribute?utm_source=share-link\u0026utm_medium=link\u0026utm_campaign=share-link) \nJoin the __contribute__ Gitter room for any question and to contact us.\n\n## License\n\nAll the [Holon Platform](https://holon-platform.com) modules are _Open Source_ software released under the [Apache 2.0 license](LICENSE).\n\n## Modules\n\n* [Holon Core module](https://github.com/holon-platform/holon-core)\n* [Holon Reactor module](https://github.com/holon-platform/holon-reactor)\n* [Holon JSON module](https://github.com/holon-platform/holon-json)\n* [Holon JAX-RS module](https://github.com/holon-platform/holon-jaxrs)\n* [Holon JDBC module](https://github.com/holon-platform/holon-jdbc)\n* [Holon JPA module](https://github.com/holon-platform/holon-jpa)\n* [Holon JDBC Datastore module](https://github.com/holon-platform/holon-datastore-jdbc)\n* [Holon JPA Datastore module](https://github.com/holon-platform/holon-datastore-jpa)\n* [Holon JPA QueryDSL module](https://github.com/holon-platform/holon-datastore-jpa-querydsl)\n* [Holon MongoDB Datastore module](https://github.com/holon-platform/holon-datastore-mongo)\n* [Holon Vaadin Flow module](https://github.com/holon-platform/holon-vaadin-flow)\n* [Holon Vaadin 8 module](https://github.com/holon-platform/holon-vaadin)\n* [Holon Vaadin 7 module](https://github.com/holon-platform/holon-vaadin7)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholon-platform%2Fplatform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fholon-platform%2Fplatform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholon-platform%2Fplatform/lists"}