{"id":15091628,"url":"https://github.com/knotx/knotx","last_synced_at":"2026-04-02T02:07:33.358Z","repository":{"id":57735731,"uuid":"60755660","full_name":"Knotx/knotx","owner":"Knotx","description":"Knot.x is a highly-efficient and scalable integration framework designed to build backend APIs","archived":false,"fork":false,"pushed_at":"2022-03-28T18:11:22.000Z","size":15928,"stargazers_count":126,"open_issues_count":16,"forks_count":26,"subscribers_count":36,"default_branch":"master","last_synced_at":"2025-06-15T13:04:19.274Z","etag":null,"topics":["adobe-cq","adobe-experience-manager","aem","handlebars","java-8","knotx","microservices","reactive","rxjava","vertx"],"latest_commit_sha":null,"homepage":"https://knotx.io","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/Knotx.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":null,"security":null,"support":null}},"created_at":"2016-06-09T07:00:31.000Z","updated_at":"2024-05-04T15:59:40.000Z","dependencies_parsed_at":"2022-08-23T15:21:54.977Z","dependency_job_id":null,"html_url":"https://github.com/Knotx/knotx","commit_stats":null,"previous_names":["cognifide/knotx"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/Knotx/knotx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Knotx%2Fknotx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Knotx%2Fknotx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Knotx%2Fknotx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Knotx%2Fknotx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Knotx","download_url":"https://codeload.github.com/Knotx/knotx/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Knotx%2Fknotx/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260844861,"owners_count":23071653,"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":["adobe-cq","adobe-experience-manager","aem","handlebars","java-8","knotx","microservices","reactive","rxjava","vertx"],"created_at":"2024-09-25T10:42:14.939Z","updated_at":"2026-04-02T02:07:33.307Z","avatar_url":"https://github.com/Knotx.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"[![][license img]][license]\n[![][central-repo img]][central-repo]\n[![][gitter img]][gitter]\n\n\u003e If you are directed here from https://github.com/Cognifide/knotx or you are looking for \nKnot.x 1.X version please see this repository Tags, the latest 1.6.0 version code is available \n[here](https://github.com/Knotx/knotx/tree/1.6.0) along with the \n[documentation](https://github.com/Knotx/knotx/tree/1.6.0/documentation/src/main/wiki).\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"http://knotx.io/img/logo-knotx.png\" alt=\"Knot.x Logo\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003ehttp://knotx.io\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  web integration framework\n\u003c/p\u003e\n\nKnot.x is an open source framework integrating content from different sources like headless or \ntraditional CMS, with systems like CRM, e-commerce or search engines.\n\nThe heart of Knot.x is the [HTTP Server](https://github.com/Knotx/knotx-server-http) that uses \n[Fragment Processing](https://github.com/Knotx/knotx-fragments-handler) to connect many data sources\ninto one customer experience (like HTML, JSON or PDF) in the [configurable, reactive, scalable and fault-tolerant way](http://knotx.io/blog/configurable-integrations/).\n\nKnot.x comes also with a [distribution](https://github.com/Knotx/knotx-stack) that enables quick start\nwith the framework, is a project structure and supports deployment automation (see the \n[Cookbook](https://github.com/Knotx/knotx-cookbook) and [Docker images](https://hub.docker.com/u/knotx)).\nWith the [Starter Kit](https://github.com/Knotx/knotx-starter-kit) template project, you can setup your project in a few minutes.\n\nWe build Knot.x on top of [Vert.x](http://vertx.io/), known as one of the leading toolkits for performant,\nevent-driven applications. It uses asynchronous programming principles which allows it to process a\nlarge number of requests using a single thread. Asynchronous programming is a style promoting the\nability to write non-blocking code (no thread pools). The platform stays responsive under heavy and\nvarying load and is designed to follow [Reactive Manifesto](http://www.reactivemanifesto.org/) principles.\n\n## How to start\n\nSee [knotx.io](http://knotx.io/tutorials) for tutorials and examples.\nSee [Knot.x Example Project](https://github.com/Knotx/knotx-example-project) for usage case examples.\nSee [Knot.x Starter Kit](https://github.com/Knotx/knotx-starter-kit) template project.\nSee https://github.com/Knotx extensions for user and developer documentation.\n\nFor more information on Knot.x and where Knot.x fits into the big picture please see http://knotx.io.\n\n## Community / Issues\n\nAll feature requests and bugs can be filed as issues on [GitHub](https://github.com/Knotx/knotx/issues).\nDo not use Github issues to ask questions, post them on the\n[User Group](https://groups.google.com/forum/#!forum/knotx) or [Gitter Chat](https://gitter.im/Knotx/Lobby).\n\n### GitHub issues labels\nKnot.x project have couple of custom labels for [issues board](https://github.com/Knotx/knotx/issues) \n(also issues for each repository) to make it easier manage the tickets. Some of them are:\n- `configuration` - tickets that have impact on Knot.x configuration and deployment.\n- `discussion` - this is an open discussion over a feature (that e.g. may break compatiblity) - everyone \nis welcome to participate with comments and ideas.\n- `performance` - tickets that have impact on system performance, e.g. some improvement.\n- `wiki` - stuff with documentation e.g. missing documentation or wiki structure update.\n\n## Backlog and Releasing\n\n### Release Semantic Versioning\nKnot.x releases follow [Semantic Versioning 2.0.0](https://semver.org/) guide.\nEach release has a version number `MAJOR.MINOR.PATCH`. Those numbers are incremented when:\n- **MAJOR** version when Knot.x introduce incompatible API changes or major architecture refactoring,\n- **MINOR** version when Knot.x introduces new complex functionality in a backwards-compatible manner, MINOR dependencies updates (e.g. Vert.x or RxJava), and\n- **PATCH** version when Knot.x introduces backwards-compatible bug fixes, small improvements or PATCH dependencies updates (e.g. Vert.x or RxJava).\n\n#### Changes tracking\nKnot.x provides two sources of tracking the changes:\n- `CHANGELOG.md` for each repository, where all notable changes for the module are documented with links to the tickets and detailed description.\n- `Upgrade Notes` section in the [release blog](https://knotx.io/blog/), where all crucial changes that concerns users during the migration (e.g. additional parameters, bugfix and workarounds, API/configuration changes, dependency upgrades like Vert.x or RxJava) are pointed out.\n\n### When to migrate\n- **MAJOR** - new project start or planned migration - migration may require a significant effort.\n- **MINOR** - if you need some improvements that are in this release, planned migration - migration \nmay require a minor effort.\n- **PATCH** - as often as possible, no compatibility break, only bugfixes or very small improvements \nthat does not change any system logic - migration should not take any effort.\n\n### Bugfixes support and releasing\nKnot.x as an Open Source project supports **the last MINOR** release with bugfixes released regularly \nas **PATCH** releases, until the next **MINOR** or **MAJOR** release.\n\n### Work in progress and milestones\nKnot.x roadmap is build of milestones. All **MAJOR** or **MINOR** improvements are developed on feature\nbranches that are reviewed and merged to the current `milestone/goal-of-milestone` branch which is \nfrequently updated with `master` branch (that contains bugfixes and small improvements that are \nsubject of **PATCH** releases). \n\nWhen all milestone goals are finished, **MAJOR** or **MINOR** release is announced, milestone\nbranch is merged to `master` branch and new Knot.x version is released.\n\nWe treat `master` branch as a stable branch that is always ready to release.\n\n### Clear milestones, progress and branching\nWe are working on the next major/minor versions using milestone goals.\nYou may always see the current milestone goal in [Knot.x Roadmap board](https://github.com/orgs/Knotx/projects/3) in the `Current milestone` column.\nThis board contains:\n- `Backlog` that contains all areas that require some investigation and are candidates for the future milestones.\n- `Next milestone` - all candidates for the next milestone.\n- `Current milestone` - tickets representing the goal of the milestone we are currently working at. When all milestone goals are finished, we release the next version of Knot.x.\n\n## License\n\n**Knot.x** is licensed under the [Apache License, Version 2.0 (the \"License\")](https://www.apache.org/licenses/LICENSE-2.0.txt)\n\n[license]:https://github.com/Knotx/knotx/blob/master/LICENSE\n[license img]:https://img.shields.io/badge/License-Apache%202.0-blue.svg\n\n[central-repo]:http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22io.knotx%22\n[central-repo img]:https://img.shields.io/maven-central/v/io.knotx/knotx-root.svg?label=Maven%20Central\n\n[gitter]:https://gitter.im/Knotx/Lobby\n[gitter img]:https://badges.gitter.im/Knotx/knotx-extensions.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fknotx%2Fknotx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fknotx%2Fknotx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fknotx%2Fknotx/lists"}