First off, thank you for considering contributing! It's people like you that make open source such a great community. We welcome any and all contributions.
This project and everyone participating in it is governed by a Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior.
There are many ways to contribute, from writing tutorials or blog posts, improving the documentation, submitting bug reports and feature requests or writing code which can be incorporated into the main project.
- Ensure the bug was not already reported by searching on GitHub under Issues.
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
- Ensure the enhancement was not already suggested by searching on GitHub under Issues.
- If you're unable to find an open issue, open a new one. Provide a clear description of the enhancement and its potential benefits.
We love pull requests. Here's a quick guide:
- Fork the repo and create your branch from
main. - Set up your development environment (see below).
- Make your changes.
- Ensure the test suite passes. Run
pnpm lint,pnpm build, andpnpm formatto make sure your changes follow our style guide and don't break anything. - Commit your changes using a descriptive commit message.
- Push to your fork and submit a pull request.
Ready to start coding? Here's how to get the project running locally.
-
Clone the repository:
git clone https://github.com/ihildy/jules-task-queue.git cd jules-task-queue -
Install dependencies:
pnpm install
-
Set up the database: The easiest way to get a database running is with Docker. (Or you can run a supabase instance easily)
docker-compose up -d
This will start a PostgreSQL container.
-
Configure Environment Variables: Copy the example environment file and fill in the required values.
cp .env.example .env
You will need to set
DATABASE_URLto point to your local Docker container:DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres"You will also need to create a GitHub App and fill in the correspondingGITHUB_APP_*variables. -
Run Database Migrations:
pnpm db:migrate
-
Start the development server:
pnpm dev
The application will be available at
http://localhost:3000.
- Use the present tense ("Add feature" not "Added feature").
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...").
- Limit the first line to 72 characters or less.
- Reference issues and pull requests liberally after the first line.
- We use Prettier for code formatting and ESLint for linting.
- Before committing, run
pnpm formatandpnpm lint --fixto automatically format and fix any issues. The project also useslint-stagedto automatically format code before committing.
Thank you for your contribution!