This repository provides an automated workflow to manage hackathon project submissions using GitHub Issues & Pull Requests.
- Issue-Based Submissions – Participants submit their projects via GitHub Issues
- Automatic PR Creation & Updates – Converts issues into PRs and updates them if edited
- Submission Validation – Ensures required fields exist in
submissions.json - Deadline Handling – Marks late PRs with
[LATE]and adds appropriate labels - Automatic Merging – PRs are merged when their associated issue is marked completed
- Clone Submitted Repositories – Saves all valid submissions inside the repository
- Participants create a GitHub Issue using a predefined template.
- If the issue is labeled
project-submission, a PR is automatically generated. - The PR contains submission details and links to the participant's GitHub repository.
- PRs are checked for missing fields in
submissions.json - PRs submitted late are marked with
[LATE]in the title and given the labellate-submission - Reviewers can approve and merge valid submissions
- If an issue is marked as completed, its associated PR is automatically merged.
- The project is then added to
submissions.jsonin the repository.
- Once a submission is merged, the workflow clones the participant's GitHub repository into the
Submissions/folder.
| Workflow | Purpose |
|---|---|
| Convert Issue to PR | Converts an issue into a submission PR & updates if edited |
| PR Validation & Deadline Check | Validates submissions.json & marks late submissions |
| Merge PR on Issue Close | Merges the associated PR when an issue is marked as completed |
| Clone Repositories | Clones the submitted projects when a PR is merged |
- Create a GitHub Issue using the submission template.
- Add the label
project-submission(It will be automatically added). - The system will automatically generate a PR.
- If the submission is valid, approve the PR.
- If it’s late, it will be marked
[LATE]. - If the issue is marked completed, the PR will automatically merge.
- Add Labels: Add labels
project-submissionandlate-submission - Deadline Date: Update the
DEADLINEin.github/workflows/submission-validation.yml - Required Fields in
submissions.json:[ { "name": "John Doe", "project_name": "Awesome App", "repository_url": "https://github.com/johndoe/awesome-app", "description": "This is a cool project!" } ]
We welcome contributions! Please ensure your contributions adhere to standard contributing guidelines. Thank you for your contributions!
This project is licensed under the MIT License - see the LICENSE file for details.
