Hacktoberfest 2025
This is a submission for the 2025 Hacktoberfest Writing Challenge: Contribution Chronicles.
” ✨ Another year, another Hacktoberfest community event and more involvements! ✨ “
Hacktoberfest is all about discovery, community, and contributing to open source — but it’s also about personal growth and challenging yourself.
🔸 Context
As in previous years, I’m participating in Hacktoberfest 2025 🙌 and once again pushed myself to grow!
I continue contributing to Animation Nation as both a maintainer and contributor, with a growing focus on creating meaningful impact within the project.
The repo focuses on collecting CSS animations — an awesome opportunity for contributors to practice styling and animation skills every year.
While the main purpose is animation submissions, we also occasionally welcome meaningful improvements. As maintainers, we sometimes go beyond animation contributions to help the project evolve.
🔸 Motivations
I care deeply about developer, contributor, and user experience,
and I’ve become more impact-driven over time — so this year
I focused on improving the review process.
How could I enhance the Animation Nation contributor experience
based on my experience as a maintainer?
Through years of reviewing PRs, I noticed repetitive tasks and patterns:
-
Maintainers often have to:
- manually provide the same feedback across PRs
- manually add labels for communication
(includinghacktoberfest-accepted)
-
I also observed:
- contributors sometimes don’t revisit their PRs (even when pinged)
-
asynchronous feedback can cause disengagement,
especially for new contributors
These insights naturally led me to automate
the review process — what I call pre-review.
Benefits:
- reduces maintainer workload by automating labelling & detection of PR readiness
- improves contributor experience with faster feedback and more autonomy
So, I created a pre-review bot using GitHub Actions, shell scripting, and JavaScript:
➡️ Pre-Review PR ⬅️
The other accepted PRs were improvements built on top of this work
✨ Automation — How it Works ✨
First, I created a JavaScript script that:
- triggers on Pull Request events
- ensures contributions follow the
README.mdstructure (GitHub handle folder +index.html,styles.css,meta.json) - checks edge cases and invalid submissions (no JS, inline styles, non-interactive animations, etc.)
Then I orchestrated the flow using GitHub Actions, and added new repo labels including:
Awaiting Maintainer Validation — pre-review passed, no issues detected, awaiting manual approval before merging
Workflow steps:
- trigger on Pull Requests
- collect PR data (contributor handle, PR diff, maintainer status, etc.)
- execute the script to run checks and output personalised feedback
- automatically apply labels using Bash + conditionally assign
hacktoberfest-acceptedbased on date
🔸 What I Learned This Year
This year, I focused on identifying real pain points and building solutions that create meaningful impact.
Technically, I deepened my understanding of GitHub tokens:
- PAT token → needed to interact with forks & assign contributors (useful for full automation when permissions allow)
-
GitHub token → enough for labeling, commits,
ghCLI interactions, diff checks
This clarified when each token is appropriate depending on repo permissions and contributor roles.
Definitely one of those “good to know” maintainer lessons!
Beyond the technical part, it was about supporting others and enjoying the satisfaction of seeing things run smoothly and genuinely help contributors.



