Doorstop
github.com
What it is
Doorstop manages textual requirements alongside source code in version control. It stores requirements and other linkable items as YAML files in directories that form documents, then organizes those documents into a tree and can validate traceability across it. It publishes document hierarchies and trace matrices as plain text, HTML, LaTeX, or Markdown; templates can shape output, and HTML and LaTeX publishing use them. Requirements can be imported or exported as YAML, CSV, TSV, or Excel files. Doorstop requires Python 3.10 or later and Git or another version control system, and it can be added to a Poetry project. It runs on Linux, macOS, and Windows, with API and self-hosted options, including standalone web-server or WSGI deployment. An experimental desktop GUI handles basic editing. The tool is free at free and licensed under LGPLv3. Baseline support and version history are listed, but approval workflows are not.
Spec sheet
- What it does
- Doorstop manages textual requirements beside source code in version control, storing linkable items as YAML files arranged in document trees.Read 15 Oct 2026 · github.com
- Purpose
- Doorstop manages textual requirements alongside source code in version control.Read 7 Oct 2026 · github.com
- Integrations
- Doorstop requires Python and Git or another version control system, and can be added to a Poetry project.Read 7 Oct 2026 · github.com
- License
- Doorstop is distributed under the GNU Lesser General Public License version 3.Read 15 Oct 2026 · github.com
- Academic description
- The 2014 Doorstop paper presents it as a lightweight developer-oriented alternative to centralized database requirements tools, using text files in version control.Read 15 Oct 2026 · scirp.org
- Assets
- Images, attachments and other files placed in an assets directory can be copied into published output and referenced from requirements.Read 15 Oct 2026 · doorstop.readthedocs.io
- Command-line interface
- The project exposes a stateless `doorstop` CLI for creating documents, adding and linking items, validating trees, publishing and interchange.Read 15 Oct 2026 · docs.rtems.org
- Dependencies
- The package declares Python 3.10 through 3.14 support and depends on PyYAML, Markdown, Bottle, Requests, frontmatter, PlantUML Markdown and openpyxl among others.Read 15 Oct 2026 · github.com
- Desktop client
- The project describes an experimental desktop GUI for basic editing tasks and notes macOS may require python-tk.Read 7 Oct 2026 · github.com
- GUI
- An experimental `doorstop-gui` desktop interface supports basic editing, and macOS may require python-tk.Read 15 Oct 2026 · doorstop.readthedocs.io
- Import and export
- Documents can be exchanged in YAML, CSV, TSV and XLSX formats, including Excel round trips.Read 15 Oct 2026 · doorstop.readthedocs.io
- Independent feature listing
- AlternativeTo lists command-line use, scripting, Git support, filtering and requirements management as Doorstop features.Read 15 Oct 2026 · alternativeto.net
- Independent price assessment
- OpenRegulatory describes Doorstop as free with no minimum commitment.Read 15 Oct 2026 · openregulatory.com
- Independent review availability
- AlternativeTo shows no reviews, three likes and zero comments for Doorstop.Read 15 Oct 2026 · alternativeto.net
- Independent shortlist limitation
- ONES says teams must define their own document conventions, review practices, permissions and change-governance rules.Read 15 Oct 2026 · ones.com
- Independent shortlist view
- ONES describes Doorstop as transparent, portable and suitable for Git-based traceability and automation, while lacking native backlog, sprint, roadmap and release planning.Read 15 Oct 2026 · ones.com
- Independent technical assessment
- RTEMS describes Doorstop as a Python, YAML-based, Git-oriented tool with a CLI, predefined attributes, a primitive GUI and item fingerprints.Read 15 Oct 2026 · docs.rtems.org
- Intended use
- The project describes itself as requirements management using version control and includes requirements, test cases, and certification among its repository topics.Read 7 Oct 2026 · github.com
- Interchange
- Requirements can be exported and imported using YAML, CSV, TSV, or Excel files.Read 7 Oct 2026 · github.com
- Limit: cloud and editor
- OpenRegulatory reports no cloud-hosted option and no built-in text editor, requiring users to supply their own editor.Read 15 Oct 2026 · openregulatory.com
- Limit: library flexibility
- RTEMS reports that Doorstop was not designed as a library, has policy-heavy behavior, lacks custom link attributes and offers limited type-based verification.Read 15 Oct 2026 · docs.rtems.org
- Limit: non-developer usability
- OpenRegulatory reports that non-developers may struggle because they must learn Git, Doorstop and its file structure.Read 15 Oct 2026 · openregulatory.com
- Limit: ordering model
- RTEMS reports that Doorstop orders links alphabetically by UID and cannot express relative UIDs or user-defined link ordering.Read 15 Oct 2026 · docs.rtems.org
- Limit: setup and compliance work
- OpenRegulatory says Doorstop requires significant setup and customization and is not a compliant regulatory solution out of the box.Read 15 Oct 2026 · openregulatory.com
- Local web server
- `doorstop-server` serves a local browser interface on 127.0.0.1:7867.Read 15 Oct 2026 · doorstop.readthedocs.io
- Maker attribution
- The package metadata names Jace Browning as the author.Read 15 Oct 2026 · github.com
- Operating systems
- The package metadata marks it operating-system independent and lists Python 3.10, 3.11, 3.12, 3.13 and 3.14.Read 15 Oct 2026 · github.com
- Optional publishing tools
- LaTeX/PDF publishing requires a LaTeX distribution, while HTML and Markdown publishing need no additional tools.Read 7 Oct 2026 · github.com
- Performance news
- The changelog reports a Windows 500-item change-and-validation example improving from about 23 seconds to about 2 seconds through batched Git operations and lazy module loading.Read 15 Oct 2026 · github.com
- Permanent identifiers
- Each linkable text item receives a unique permanent identifier intended to preserve links when content changes.Read 15 Oct 2026 · doorstop.readthedocs.io
- Praise: Git workflow
- OpenRegulatory praises Git integration for parallel changes, synchronized code and documentation, and visible diffs and changelogs.Read 15 Oct 2026 · openregulatory.com
- Praise: portability
- OpenRegulatory says Git storage makes the data exportable by moving the directory or repository.Read 15 Oct 2026 · openregulatory.com
- Project origin
- Jace Browning says Doorstop was built as his Grand Valley State University master's thesis and that he is no longer actively working on it.Read 15 Oct 2026 · jacebrowning.info
- Publishing
- Doorstop publishes documents or complete hierarchies, including trace matrices, as text, HTML, Markdown or LaTeX.Read 15 Oct 2026 · doorstop.readthedocs.io
- Publishing templates
- HTML and LaTeX output can be customized with named templates, CSS, class files and YAML configuration.Read 15 Oct 2026 · doorstop.readthedocs.io
- Python package
- Doorstop is installable with pip or Poetry and exposes an importable Python package named `doorstop`.Read 15 Oct 2026 · doorstop.readthedocs.io
- Rating on OpenRegulatory
- 3 out of 5; the page does not state a review count.Read 15 Oct 2026 · openregulatory.com
- Recent compatibility change
- Version 3.1 dropped Python 3.9 support and added Python 3.14 support on 2026-01-31.Read 15 Oct 2026 · github.com
- Release news
- Version 3.2 was released on 2026-07-10 with line-ending, LaTeX-rendering and heading-reordering fixes.Read 15 Oct 2026 · github.com
- Requirements
- The repository lists Python 3.10 or later and a version control system as requirements.Read 7 Oct 2026 · github.com
- REST API
- The project changelog records `doorstop-server` as a REST API for UID reservation and a server option for `doorstop add`.Read 15 Oct 2026 · github.com
- Review tracking
- Users can mark individual items, documents or whole trees as reviewed and clear suspect links.Read 15 Oct 2026 · doorstop.readthedocs.io
- Security posture
- The GitHub repository reports no SECURITY.md policy and no published security advisories.Read 15 Oct 2026 · github.com
- Security reporting
- The project directs users to raise a GitHub issue to report a problem or security vulnerability.Read 7 Oct 2026 · github.com
- Storage
- Requirements and other linkable items are stored as YAML files in directories that form documents.Read 7 Oct 2026 · doorstop.readthedocs.io
- System requirements
- Official setup requires Python 3.10 or newer plus Git or another version-control system.Read 15 Oct 2026 · doorstop.readthedocs.io
- Templates
- Publishing templates can customize output styling, and the documentation says HTML and LaTeX publishing use templates.Read 7 Oct 2026 · github.com
- Third-party integrations
- The documentation lists Docker deployment, a closed-source GitHub App called doorframe, and standalone GUI clients including doorhole and doorstop-edit.Read 15 Oct 2026 · doorstop.readthedocs.io
- Traceability
- Documents can be linked into parent-child hierarchies so requirements, tests, designs and implementation artifacts can be traced.Read 15 Oct 2026 · doorstop.readthedocs.io
- Validation
- The command-line tool checks document-tree integrity, links and traceability relationships.Read 15 Oct 2026 · doorstop.readthedocs.io
- Web server
- Doorstop can run as a standalone web server or as a WSGI application under Apache or another web server.Read 7 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Validates traceability across document trees
- Publishes trace matrices in four formats
- Imports and exports YAML, CSV, TSV, and Excel
- Supports baselines and version history
Limits
- Requires Python 3.10 or later
- Requires Git or another version control system
- Does not include approval workflows
- Desktop GUI is experimental
Who it suits
Doorstop suits teams managing requirements alongside source code in version control, especially when they need traceability, publishing, or file interchange. It requires Python and a version control system.
Verdict
Doorstop combines version-controlled requirement files with tree-based traceability and multiple publishing and interchange formats. It is free, but users need Python and version control, and approval workflows are not included.
Where Specifiction places it
- Requirements Management Software#1 of 239.0