{"id":15037033,"url":"https://github.com/activiti/activiti","last_synced_at":"2026-05-25T22:05:44.007Z","repository":{"id":4648471,"uuid":"5793738","full_name":"Activiti/Activiti","owner":"Activiti","description":"Activiti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. It's open-source and distributed under the Apache license. Activiti runs in any Java application, on a server, on a cluster or in the cloud. It integrates perfectly with Spring, it is extremely lightweight and based on simple concepts. ","archived":false,"fork":false,"pushed_at":"2026-04-27T08:29:22.000Z","size":132115,"stargazers_count":10527,"open_issues_count":678,"forks_count":6934,"subscribers_count":604,"default_branch":"develop","last_synced_at":"2026-04-27T10:28:02.031Z","etag":null,"topics":["activiti","bpm","bpmn","business-process","cloud","hxps","java","microservices","product-activiti","spring"],"latest_commit_sha":null,"homepage":"https://www.activiti.org","language":"Java","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/Activiti.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2012-09-13T11:34:43.000Z","updated_at":"2026-04-27T06:08:26.000Z","dependencies_parsed_at":"2026-02-16T14:05:12.486Z","dependency_job_id":null,"html_url":"https://github.com/Activiti/Activiti","commit_stats":{"total_commits":9136,"total_committers":310,"mean_commits":"29.470967741935485","dds":0.8896672504378283,"last_synced_commit":"c233e964bdd48de7c351fb6cd25336107bc61e7d"},"previous_names":[],"tags_count":2861,"template":false,"template_full_name":null,"purl":"pkg:github/Activiti/Activiti","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Activiti%2FActiviti","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Activiti%2FActiviti/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Activiti%2FActiviti/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Activiti%2FActiviti/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Activiti","download_url":"https://codeload.github.com/Activiti/Activiti/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Activiti%2FActiviti/sbom","scorecard":{"id":8385,"data":{"date":"2025-08-11","repo":{"name":"github.com/Activiti/Activiti","commit":"9d737faf394318225339d6d0b133efda0f57a75a"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":7.4,"checks":[{"name":"Maintained","score":10,"reason":"30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","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":"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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","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":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:45","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:46","Warn: no topLevel permission defined: .github/workflows/codeql.yml:1","Warn: no topLevel permission defined: .github/workflows/create-github-prerelease.yaml:1","Warn: no topLevel permission defined: .github/workflows/dependency-graph-submission.yml:1","Info: topLevel permissions set to 'read-all': .github/workflows/main_pull.yml:3","Warn: topLevel 'actions' permission set to 'write': .github/workflows/main_push.yml:4","Warn: topLevel 'checks' permission set to 'write': .github/workflows/main_push.yml:5","Warn: topLevel 'contents' permission set to 'write': .github/workflows/main_push.yml:6","Info: no jobLevel write permissions found"],"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":"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.txt:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"Pinned-Dependencies","score":10,"reason":"all dependencies are pinned","details":["Info:  18 out of  18 GitHub-owned GitHubAction dependencies pinned","Info:  10 out of  10 third-party GitHubAction 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":"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":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/main_push.yml:42"],"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":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (30) 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"}},{"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"}}]},"last_synced_at":"2025-08-14T14:03:38.852Z","repository_id":4648471,"created_at":"2025-08-14T14:03:38.852Z","updated_at":"2025-08-14T14:03:38.852Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32439301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T18:12:22.909Z","status":"ssl_error","status_checked_at":"2026-04-29T18:11:33.322Z","response_time":110,"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":["activiti","bpm","bpmn","business-process","cloud","hxps","java","microservices","product-activiti","spring"],"created_at":"2024-09-24T20:33:07.525Z","updated_at":"2026-04-29T19:01:13.394Z","avatar_url":"https://github.com/Activiti.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Activiti\n\n[![Join Us in Gitter](https://badges.gitter.im/Activiti/Activiti7.svg)](https://gitter.im/Activiti/Activiti7?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n[![CI](https://github.com/Activiti/Activiti/actions/workflows/main.yml/badge.svg)](https://github.com/Activiti/Activiti/actions/workflows/main.yml)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/8035801ae94c441981f363fa99824a33)](https://www.codacy.com/gh/Activiti/Activiti?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=Activiti/Activiti\u0026utm_campaign=Badge_Grade)\n[![ASL 2.0](https://img.shields.io/hexpm/l/plug.svg)](https://github.com/Activiti/Activiti/blob/develop/LICENSE.txt)\n[![CLA](https://cla-assistant.io/readme/badge/Activiti/Activiti)](https://cla-assistant.io/Activiti/Activiti)\n[![security status](https://www.meterian.io/badge/gh/Activiti/Activiti/security)](https://www.meterian.io/report/gh/Activiti/Activiti)\n[![stability status](https://www.meterian.io/badge/gh/Activiti/Activiti/stability)](https://www.meterian.io/report/gh/Activiti/Activiti)\n[![licensing status](https://www.meterian.io/badge/gh/Activiti/Activiti/licensing)](https://www.meterian.io/report/gh/Activiti/Activiti)\n\nHomepage: \u003chttp://activiti.org\u003e\n\nActiviti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. It's open-source and distributed under the Apache license. Activiti runs in any Java application, on a server, on a cluster or in the cloud. It integrates perfectly with Spring, it is extremely lightweight and based on simple concepts.\n\n\\***\\*NOTE: We moved to the master branch all the content of the development branch that we were using to design and code the next major version of the project. If you want to contribute with version 6.x please look at the 6.x branch.\\*\\***\n\nIf you want to read more about our Repositories structure you can read our [GitBook](https://activiti.gitbooks.io/activiti-7-developers-guide/content/).\n\n## Configuring IntelliJ\n\n- Force language level 21, to fail-fast when (accidentally) using features available only in newer Java versions.\n  - Open menu _File_, menu item _Project Structure_\n  - Click list item _Modules_, for each module, tab _Sources_, combobox _Language level_ should be automatically set to `21 ...`\n\n- Avoid that changes in some resources are ignored in the next run/debug (and you are forced to use mvn)\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _Compiler_, textfield _Resource patterns_: change to `!?*.java` (remove other content)\n\n- Avoid a `StackOverflowError` when building\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _Compiler_, tree item _Java Compiler_, textfield _Additional command line parameters_\n  - Add `-J-Xss1024k`\n\n- Recommended code style: use the [Google Java Style Guide](https://google.github.io/styleguide/javaguide.html) with editorconfig\n  - Download the IntelliJ code style xml from: [https://google.github.io/styleguide/intellij-java-google-style.xml]\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _Code Style_, click cogwheel and select _Import scheme_, then _IntelliJ code style xml_\n  - Browse where you downloaded the xml and open it. Check that GoogleStyle is the active scheme.\n    - Note: IntelliJ IDEA doesn't format your code automatically. You have to press Ctrl+Alt+L keyboard combination to trigger auto formatting when coding is done.\n  - There's an `.editorconfig` what has definition for indents, file encoding, line endings.\n  - If you disable it, you need to set the file encoding and number of spaces correctly manually.\n  - Eclipse code style xml: [https://google.github.io/styleguide/eclipse-java-google-style.xml]\n  - Eclipse needs [editorconfig-eclipse](https://marketplace.eclipse.org/content/editorconfig-eclipse) plugin in order to support EditorConfig files.\n\n- Set manually the correct file encoding (UTF-8 except for properties files) and end-of-line characters (unix):\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _Code Style_, tree item _General_\n    - Combobox _Line separator (for new files)_: `Unix`\n  - Click tree item _File Encodings_\n    - Combobox _Global Encoding_: `UTF-8`\n    - Combobox _Default encoding for properties files_: `ISO-8859-1`\n      - Note: normal i18n properties files must be in `ISO-8859-1` as specified by the java `ResourceBundle` contract.\n\n- Set manually the correct number of spaces when pressing tab:\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _Code Style_, tree item _General_\n  - Click tab _Java_\n    - Checkbox _Use tab character_: `off`\n    - Textfield _Tab size_: `4`\n    - Textfield _Indent_: `4`\n    - Textfield _Continuation indent_: `8`\n  - Open tab _XML_\n    - Checkbox _Use tab character_: `off`\n    - Textfield _Tab size_: `2`\n    - Textfield _Indent_: `2`\n    - Textfield _Continuation indent_: `4`\n\n- Set the correct file headers (do not include @author or a meaningless javadoc):\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _File templates_, tab _Includes_, list item `File Header`\n  - Remove the line _@author Your Name_.\n    - We do not accept `@author` lines in source files, see FAQ below.\n  - Remove the entire javadoc as automatically templated data is meaningless.\n\n- Set the correct license header\n  - Open menu _File_, menu item _Settings_ or menu _IntelliJ IDEA_, menu item _Preferences..._ if on a Mac\n  - Click tree item _Copyright_, tree item _Copyright profiles_\n    - Click import button to import the _Copyright profile_\n    - Select the file: [Alfresco_Software.xml](./ide-configuration/intellij-configuration/copyright/Alfresco_Software.xml)\n  - Click tree item _Copyright_\n    - Combobox _Default project copyright_: `Alfresco Software`\n\n# FAQ\n\n- Why do you not accept `@author` lines in your source code?\n  - Because the author tags in the java files are a maintenance nightmare\n    - A large percentage is wrong, incomplete or inaccurate.\n    - Most of the time, it only contains the original author. Many files are completely refactored/expanded by other authors.\n    - Git is accurate, that is the canonical source to find the correct author.\n\n  - Because the author tags promote _code ownership_, which is bad in the long run.\n    - If people work on a piece they perceive as being owned by someone else, they tend to:\n      - only fix what they are assigned to fix, instead of everything that's broken\n      - discard responsibility if that code doesn't work properly\n      - be scared of stepping on the feet of the owner.\n\n  - Credit to the authors is given:\n    - with [Open Hub](https://www.openhub.net/p/activiti/contributors) which also has statistics\n    - in [the GitHub web interface](https://github.com/activiti).\n\n# Development commands\n\n## Add License header\n\nTo format files with the required license:\n\n```bash\nmvn license:format\n```\n\n## Checkstyle\n\nTo check if your code style respect all the rules:\n\n```bash\nmvn checkstyle:check -DskipCheckstyle=false\n```\n\n## Site\n\nTo generate the maven site:\n\n```bash\nmvn clean site site:stage\n```\n\nthe site will be generated at: `target/staging/index.html`\n\n## CI/CD\n\nRunning on GH Actions.\n\nFor Dependabot PRs to be validated by CI, the label \"CI\" should be added to the PR.\n\nRequires the following secrets to be set:\n\n| Name                         | Description                        |\n| ---------------------------- | ---------------------------------- |\n| BOT_GITHUB_TOKEN             | Token to launch other builds on GH |\n| BOT_GITHUB_USERNAME          | Username to issue propagation PRs  |\n| NEXUS_USERNAME               | Internal Maven repository username |\n| NEXUS_PASSWORD               | Internal Maven repository password |\n| SLACK_NOTIFICATION_BOT_TOKEN | Token to notify slack on failure   |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factiviti%2Factiviti","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factiviti%2Factiviti","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factiviti%2Factiviti/lists"}