OfficeFloor
OfficeFloor is an open-source framework that brings explicit function orchestration (Function Injection) to Spring Boot REST applications. It makes endpoint steps, sequencing, branching, and dependencies legible in YAML while retaining Spring's dependency injection, security, persistence, and actuator configuration.
At a Glance
- Spring Boot and Java development teams
- Teams building REST APIs and service-oriented applications
- Organizations adopting AI coding assistants and seeking more legible architecture
- Open-source maintainers and polyglot JVM application developers
- +1 more
AI Tools by OfficeFloor
(1)ImpactGate
Code Change Impact Gate CLI
Discussions
No discussions yet
Be the first to start a discussion about OfficeFloor
Latest News
The decay you cannot see: what we measured and the one thing we will not claim
The Number the AI Never Saw: We Spent the Change Impact With a Tool
Spending the Cost Function Without Telling the Agent
The refactor run halfway
Products & Services
Open-source middleware/framework based on Inversion of Coupling Control. The current presentation is an AI-augmented Spring Boot REST add-on using one YAML file per endpoint and composed functions for validation, business logic, auditing, branching, and error flows.
Maven Central starter that adds YAML REST endpoint composition to an existing Spring Boot application. Separate starters are provided for Spring Boot 3.x and 4.x, enabling progressive adoption alongside existing controllers and Spring configuration.
A merge gate and CLI that measures the structural impact of changes piling complexity onto already-complex code. It can warn or block, identify files to refactor, and run as a standalone CLI, pre-commit hook, GitHub/GitLab/Jenkins check, Python package, Docker image, or GitHub Action.
Market Position
OfficeFloor positions itself as an open-source Spring Boot add-on rather than a replacement for Spring: it preserves Spring's dependency injection and infrastructure while making endpoint orchestration explicit in YAML. Its architectural alternative to conventional Spring MVC @RestController flow is Function/Continuation Injection, and ImpactGate differentiates by measuring change impact and structural decay rather than claiming to predict defects.
Leadership
Founders
Daniel Sagenschneider
Founder of OfficeFloor and author of the paper 'OfficeFloor: using office patterns to improve software design'. His public profile identifies him as an evangelist for Inversion of Coupling Control; it also lists an Engineering Manager role at Bankwest from May 2018 to December 2023.
Executive Team
Daniel Sagenschneider
Founder
Creator and public evangelist of Inversion of Coupling Control; author of the OfficeFloor design paper and speaker at DDD Perth. His public profile also lists Engineering Manager at Bankwest (2018–2023).
Founding Story
OfficeFloor was started to model real-world organizational patterns in software rather than forcing invented framework patterns onto the real world. Its underlying idea evolved into Inversion of Coupling Control, combining Dependency Injection, Continuation Injection, and Thread Injection.
Business Model
Revenue Model
OfficeFloor and ImpactGate are presented as open-source developer tools. OfficeFloor is distributed through GitHub and Maven Central under Apache 2.0; ImpactGate is distributed through GitHub, PyPI, GHCR, Docker, and CI integrations. No paid subscription or license pricing was identified in the reviewed sources.
Target Markets
- Spring Boot and Java development teams
- Teams building REST APIs and service-oriented applications
- Organizations adopting AI coding assistants and seeking more legible architecture
- Open-source maintainers and polyglot JVM application developers
- Engineering teams using GitHub, GitLab, Jenkins, pre-commit, Docker, or Python-based CI tooling
- AI-assisted development of Spring Boot REST endpoints
- Making endpoint flow and code structure explicit for human and AI maintainers
- Incrementally converting Spring MVC REST controllers to YAML-composed functions
- CRUD APIs, validation, authentication/authorization, persistence, error handling, and OpenAPI documentation
- Separating blocking database or external-service work from socket-thread execution
- Gating pull requests, commits, and CI changes that add structural decay to existing code