Why Contribute?
By contributing your workflow steps to the registry, you:
- • Help other developers save time and avoid reinventing the wheel
- • Get feedback and improvements from the community
- • Build your reputation as a contributor
- • Ensure your commonly-used patterns are maintained and documented
Contribution Guidelines
1. Step Quality Standards
Your step should:
- • Use the
'use step' directive - • Include proper TypeScript types for parameters and return values
- • Have comprehensive JSDoc comments
- • Use
FatalError appropriately - • Handle errors gracefully with clear messages
- • Validate inputs and environment variables
- • Follow consistent naming conventions (kebab-case for file names)
2. Documentation Requirements
Include:
- • Clear description of what the step does
- • List of required dependencies
- • Required environment variables with descriptions
- • Usage example in a workflow
- • Notes about any special configuration needed
3. Testing
Test your step in a real workflow before submitting. Verify that retries work correctly and error messages are helpful.
4. Categories
Assign your step to one of these categories:
- • notifications - Slack, email, Discord, etc.
- • ai - AI model integration, content generation
- • data - API calls, validation, transformation
- • storage - File uploads, database operations
- • documents - PDF generation, document processing
Submission Process
1. Prepare Your Step
Create your step following the guidelines above. Make sure it's well-documented and tested.
2. Fork the Repository
git clone https://github.com/workflow-registry/registry.git
3. Add Your Step
Add your step file to the steps/ directory:
steps/your-step-name.ts
4. Update Metadata
Add your step's metadata to the registry:
- • Add entry to
app/api/steps/route.ts - • Add detailed metadata to
app/api/steps/[slug]/route.ts
5. Submit a Pull Request
Create a PR with:
- • Clear title describing your step
- • Description of what it does and why it's useful
- • Screenshots or examples if applicable
Example Contribution
Here's what a complete contribution looks like:
File Structure
steps/
send-teams-message.ts # Your step code
app/api/steps/
route.ts # Add to allSteps array
[slug]/route.ts # Add to stepMetadata object
Review Process
Once you submit a PR, maintainers will review your contribution for:
- • Code quality and TypeScript usage
- • Proper error handling with FatalError
- • Documentation completeness
- • Security considerations
- • Usefulness to the community
Feedback may be provided, and you might be asked to make changes. Once approved, your step will be merged and become available to all users!
Need Help?
If you have questions about contributing:
- • Open a GitHub Discussion
- • Check existing steps for examples
- • Review the Creating Steps guide
Ready to Contribute?
Start by creating a high-quality workflow step that solves a real problem. The community will thank you!
View on GitHub