DevWorkBase — unified professional product suite (Portal, Work, Code, Docs) backed by Keycloak identity https://devworkbase.eu/o/developing4all/projects/devworkbase
  • PHP 62%
  • Python 10.8%
  • TypeScript 7.4%
  • JavaScript 6.3%
  • Shell 5.8%
  • Other 7.6%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Haydar Alkaduhimi 004310c1e3
All checks were successful
ci / integrations-js (push) Successful in 24s
ci / openproject-spec (push) Successful in 31s
ci / commit-trailers (push) Successful in 6s
ci / portal-php (push) Successful in 6m28s
ci / secret-scan (push) Successful in 10s
ci / openproject-rspec (push) Successful in 4m47s
ci / release-tests (push) Successful in 1m16s
test-deploy / test-deploy (push) Successful in 18m31s
ci / portal-frontend (push) Successful in 51s
Merge pull request 'feat/wikijs-3-0-2-upgrade' (#193) from feat/wikijs-3-0-2-upgrade into develop
Reviewed-on: #193
2026-11-02 20:47:42 +00:00
.forgejo/workflows fix(ci): export DOCKER_CONFIG before login, tolerate unset in cleanup 2026-10-30 21:21:24 +01:00
apps/portal fix(migration): partial Confluence imports surface STATUS_PARTIAL at the run level 2026-11-02 21:34:39 +01:00
docs fix(docs): honest visual-migration accounting — incomplete-walk skip, partial Confluence imports 2026-11-02 21:19:34 +01:00
e2e fix(code): allow avatar deletion — it converges to the canonical resolver 2026-10-20 20:31:08 +02:00
infrastructure feat(docs): visual-editor selection for Wiki.js pages 2026-10-31 15:17:54 +01:00
integrations feat(docs): visual editor everywhere for DevWorkBase-managed page creation 2026-11-02 21:09:46 +01:00
scripts fix(ci): authenticate nightly full-gate to Harbor before the build 2026-10-30 21:18:23 +01:00
.dockerignore Initial public release of DevWorkBase 2026-10-15 08:53:32 +02:00
.gitignore feat(compose): self-hosted install profile with operator TLS and ACME 2026-10-24 12:06:46 +02:00
LICENSE Initial public release of DevWorkBase 2026-10-15 08:53:32 +02:00
README.md Initial public release of DevWorkBase 2026-10-15 08:53:32 +02:00
ROADMAP.md deploy: make automatic production deployment the default on master 2026-10-25 23:19:29 +01:00
SECURITY.md ci/docs: retarget development branch references from main to develop 2026-10-15 21:52:55 +02:00
THIRD_PARTY_NOTICES.md Initial public release of DevWorkBase 2026-10-15 08:53:32 +02:00

DevWorkBase

Status: pre-Beta Date: 2 October 2026

DevWorkBase is a European-hosted, open-source collaboration platform for software teams.

Its purpose is to bring project management, source-code collaboration, documentation and CI/CD into one coherent environment, with one shared identity and organization model.

DevWorkBase does not aim to rebuild Jira, Bitbucket or Confluence from scratch. Instead, it integrates mature open-source products and adds the missing platform layer around them.

Core stack

Need Component Comparable Atlassian product
Project and work management OpenProject 17.9 Jira
Git hosting and code review Forgejo Bitbucket
Knowledge and documentation Wiki.js Confluence
CI/CD Forgejo Actions Bitbucket Pipelines
Identity and organizations Keycloak + DevWorkBase portal Atlassian account / organization layer

DevWorkBase owns organizations, memberships, roles, groups, logical projects, lifecycle, provisioning state, application bindings, cross-application navigation, and integration metadata. The native applications keep their own data and permissions.

Single sign-on runs through Keycloak (OIDC everywhere); central logout terminates Portal, OpenProject, Forgejo, Wiki.js and the Account Console via RP-initiated logout and backchannel notifications.

Repository layout

Path Content
apps/portal DevWorkBase portal (Laravel + Inertia/React)
infrastructure/compose Compose topologies (dev, prod, test, standalone runner), realm bootstrap
integrations/ Keycloak theme, OpenProject theme/OIDC plugins, Forgejo theme + RP-logout, Wiki.js theme/broker module, Actions runner
scripts/ release.py release automation + test_release.py regression suite
docs/ Product/architecture documentation

Repository boundary

This public repository contains the DevWorkBase application, integrations, generic deployment definitions, health contracts and release tooling. The hosted environment's private topology, credentials, internal endpoints, deployment identifiers, monitoring implementation and operator runbooks live in the separate private developing4all/devworkbase-ops repository. Do not commit environment-specific values here.

Local development

cd infrastructure/compose
cp .env.example .env   # secrets are generated by up.sh on first run
./up.sh

Local hosts: devworkbase.test, work|code|docs|id.devworkbase.test (Traefik on 443; add the hosts to /etc/hosts pointing at your Docker host).

Release

python3 scripts/release.py candidate --version v0.1.0 --deploy runs the full gate — shell syntax, compose validation, release regression tests, theme tests, the full PHP suite, TypeScript, Vite build, Forgejo theme tests, the OpenProject plugin RSpec suite on a dedicated test image — then builds, smoke-tests, pushes immutable build<N> images plus v<M.m.p>-rc.<n> alias tags, and deploys to staging through Coolify with convergence verification. accept records staging acceptance — it refuses a never-staged candidate unless --no-staging is given explicitly (the waiver is persisted). promote aliases the accepted digests to a stable v<M.m.p> without rebuilding; the --skip-acceptance bypass requires a --reason that is audited in the stable manifest. validate is the test-only gate — same source/test checks, structurally no publish, tag, or deploy path. The legacy rc flow (YYYY-MM-DD-<sha>-rcN) remains supported and shares the same global number sequence. See docs/11-release-versioning.md. Staging only; production deployment is a separate explicit step.

Rollback: pin DEVWORKBASE_IMAGE_TAG to a previous immutable build/RC tag via deploy_staging in scripts/release.py and redeploy. No volume reset, no database rollback — migrations must stay backward/forward compatible.

Documentation

  1. Vision and Product
  2. Identity and Access
  3. Platform and Integrations
  4. Architecture and Hosting
  5. Business and Funding
  6. Roadmap
  7. Research and References

The living work plan is ROADMAP.md. For reporting vulnerabilities see SECURITY.md.

Current project rule

Keep the documentation small. New documents should only be created when an existing document has genuinely become too large or represents a clearly separate deliverable.

Current open decisions

Settled by the prototype: identity provider (Keycloak, OIDC everywhere), tenancy model (shared single instances with DevWorkBase organization scoping), and the application domain layout (work|code|docs|id.<base>).

Still intentionally open:

  • final licensing and commercial model;
  • pricing;
  • extent of the DevWorkBase portal UI;
  • public vs. private Beta registration.

These decisions should be made through prototypes and validation rather than documentation alone.