Development
Contributing
Contribute to Unhook and run it locally
Prerequisites:
- Node.js (version 18 or higher)
- Git
- A webhook provider account (Stripe, GitHub, etc.) for testing
Local Development Setup
Clone the Repository
First, clone the Unhook repository and install dependencies:
Start the Development Server
Run the development server locally:
This will start:
- The CLI webhook service on port 3000
- The web dashboard on port 3001
- The webhook processing service on port 3002
Project Structure
Development Workflow
Running Tests
We use Jest for testing. Run the test suite with:
Linting and Formatting
We use ESLint and Prettier to maintain code quality:
Building Locally
To build all packages:
To build a specific package:
Running Examples
We provide example integrations in the examples/
directory. To run an example:
Debugging
CLI Debugging
Run the CLI with debug logging:
Dashboard Debugging
The dashboard includes React Developer Tools and runs in development mode by default:
Common Issues
Contributing
We welcome contributions! Here’s how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes
- Run tests:
npm test
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to your branch:
git push origin feature/amazing-feature
- Open a Pull Request
Contribution Guidelines
- Follow the existing code style
- Add tests for new features
- Update documentation for changes
- Keep commits focused and atomic
- Write clear commit messages