Thank you for your interest in contributing to SetupHub! We are building the best way for developers to sync their environments, and we'd love your help.
Whether you're fixing a bug, improving documentation, or proposing a new feature, your contributions are welcome.
Please be respectful and inclusive. We are a community of professionals and learners. Harassment or intolerant behavior will not be tolerated.
The project is a monorepo managed with pnpm.
-
Fork the repository on GitHub.
-
Clone your fork locally:
git clone https://github.com/YOUR_USERNAME/setuphub-dev.git cd setuphub-dev
pnpm install-
Copy the example environment file:
cp .env.example .env.local
-
Fill in the required environment variables in
.env.local(Database URL, Auth secrets, etc.). -
Run the development server:
pnpm dev
Open http://localhost:3000 to view it.
-
We have convenience scripts in the root
package.jsonto help with extension development. -
To build and watch the extension in development mode:
pnpm ext:dev
-
To run tests for the extension:
pnpm ext:test
Tip: The best way to develop the extension is to open the root folder in VS Code. Then, inside VS Code:
- Go to the "Run and Debug" side panel.
- Select "Extension" from the dropdown.
- Press
F5. This will launch a new "Extension Development Host" window with your local changes active.
-
Create a Branch: Always create a new branch for your work.
git checkout -b feature/amazing-new-thing
-
Make Changes: Write your code and improve the project.
-
Test: Ensure the app runs and tests pass.
-
Commit: descriptive commit messages are appreciated.
git commit -m "feat: add support for syncing windsurf themes" -
Push: Push to your fork.
git push origin feature/amazing-new-thing
-
Pull Request: Open a PR against the
mainbranch of the original repository. Describe your changes clearly.
If you have questions, please open a standard Issue on GitHub, and we'll get back to you!