With Doorstop and Doorframe your software's requirements live alongside the rest of your project in Git, letting you write and develop requirements that follow your code.
Doorframe's integration with GitHub lets you review, release, verify, and validate your requirements with the same level of detail as the rest of your project.
Doorframe is in limited private beta right now! Add the App to your GitHub user account or organization and request access today to get:
Special consideration for more repositories per install is available upon request.
Doorstop and Doorframe's rich feature set, along with its deep integration into GitHub lets you focus on capturing requirements instead of dealing with complex tools or ad-hoc documentation methods. Not being bound to spreadsheets or proprietary software lets you capture requirements transparently in a way that moves along with your project, wherever it goes.
Listed below are just some of the features Doorframe provides!
Doorframe presents your requirements documentation in a way that is easy to navigate, allowing requirements documents to be written and defined with rich, supportive content.
Documents are arranged in an easy to read format, with a table of contents of that document's items and document-to-document navigation always available. Each document automatically receives a color related to it, allowing for easy visual identification of different documents.
Doorstop links your requirements both forward and back, and Doorframe presents them in an easily navigable way, letting you understand complex item-to-item requirements obligations.
Links back to the GitHub commit history and the latest author information is easily accessed on each requirement item.
With rich content support for requirements items, Doorstop and Doorframe let you define complex requirements with descriptive, engaging, and relevant information.
Item text can be formatted with GitHub style Markdown, letting you include stylized text sections, images, tables, and other other content in your requirements.
Capture mathematical formulas with LaTeX and have them displayed nicely in browser with no special tools required.
Doorframe integrates with your normal GitHub workflow to make reviewing and discussing your requirements the same as any other part of your project.
Doorstop checks the validity of your requirements structure, checking for correct links and dependencies. The validity of your documents can be reported to GitHub as a checkrun, letting you make valid requirements documents be part of your pull-request reviews.
Link back to Doorframe from GitHub easily! Writing a document prefix or a requirement item's unique ID in a issue, PR, commit, or review comment will automatically get linked back to Doorframe.
Getting started with Doorframe is super easy! In a few steps shown below you will be able to begin creating and viewing requirements with Doorstop and Doorframe.
Before you begin you'll need to satisfy a few requirements. The following are essential for getting started with Doorframe.
This guide will touch on these as you progress through it, but making sure you've signed up to or installed all of the above will make everything go smoother!
Doorframe is a GitHub App, which means you will need to install it on your GitHub account and repositories for it to access your requirements data.
The button below will open a new tab and direct you to the Doorframe GitHub App Installation page.
Accept the App permissions on the next page. Make sure you're logged into the account you want to install Doorframe with or selected the organization you want to install Doorframe to.
If you chose to install on a specific repository, make sure it is the one you use for the rest of these steps.
If this is your first time logging into Doorframe you'll be directed to the Doorframe Terms of Service and Acceptable Use Policy agreements.
Read them carefully before clicking Accept Terms.
Your profile Dashboard should now be available.
If you have not already requested beta access make sure to click on "Apply for Access".
Once you have received beta access the next section will explain how to begin creating requirements with Doorstop.
Once you have installed Doorframe and received beta access, you can start using Doorstop to build requirements.
This is only a small example of using Doorstop, for more information make sure to check out the Doorstop documentation.
From a terminal prompt use pip to install Doorstop in Python.
pip install doorstop
Clone a repository you installed Doorframe on and navigate to it in a terminal window.
Replace the URL in the terminal example with the URL of your repository.
git clone https://github.com/user/repo.git
Adding requirements in Doorstop starts with creating a requirements document.
Create a new document called REQ using the command create command in Doorstop shown below and commit it to the repository.
cd /path/to/your/repo
doorstop create REQ ./reqs
git commit -a -m "Added REQ Document"
Now that you have a requirements document you can start adding requirement items to it. This is done through the add command in Doorstop.
Each item is a YAML file that will reside in your repository. In this case the file will be ./reqs/REQ001.yaml.
doorstop add REQ
Once you've created a requirements item you can edit it with the edit command in Doorstop.
For this command to work you will need to set the EDITOR environment variable to a suitable text editor.
Saving the contents of the requirement in the editor and closing the editor will update the requirements item.
doorstop edit REQ001
Once you are satisfied with the requirement item you can commit and push it to GitHub.
git commit -a -m "Added REQ001 Item"
git push
You can repeat the previous 3 steps as many times as you want to add more requirements, as well as repeating the the Doorstop create command to create new requirements documents.
Remember to push changes to your GitHub repository for Doorframe to pick them up! Doorframe tracks your pushes automatically and will update the display of your requirements shortly after you make a push.
You can view the status of your repository pushes in the activity tab on each repository page.
Now that you have added at least a single requirements document and at least one requirement item to that document you should be able to view your requirements in Doorframe.
You can access your install via the Dashboard.