Step CI is an open-source API Quality Assurance framework
- Language-agnostic. Configure easily using YAML, JSON or JavaScript
- REST, GraphQL, gRPC, tRPC, SOAP. Test different API types in one workflow
- Self-hosted. Test services on your network, locally or with CI/CD
- Integrated. Play nicely with others
→ Join us on GitHub Discussions
-
Install the CLI
Using Node.js
npm install -g stepci
Note: Make sure you're using the LTS version of Node.js
Using Homebrew
brew install stepci
-
Create example workflow
workflow.yml
version: "1.1" name: Status Check env: host: example.com tests: example: steps: - name: GET request http: url: https://${{env.host}} method: GET check: status: /^20/
Note: You can also also use JSON format to configure your workflow
-
Run the workflow
stepci run workflow.yml
PASS example Tests: 0 failed, 1 passed, 1 total Steps: 0 failed, 1 passed, 1 total Time: 0.559s, estimated 1s Workflow passed after 0.559s
Documentation is available on docs.stepci.com
You can find example workflows under examples/
Join our community on GitHub Discussions
As an open-source project, we welcome contributions from the community. If you are experiencing any bugs or want to add some improvements, please feel free to open an issue or pull request
The source code is distributed under Mozilla Public License terms
By default, the CLI collects anonymous usage data, which includes:
- Unique user ID
- OS Name
- Node Version
- CLI Version
- Command (
stepci run
,stepci generate
) - Environment (Local, Docker, CI/CD)
Note: The usage analytics can be disabled by setting
STEPCI_DISABLE_ANALYTICS
environment variable