Hacktoberfest is a great way to start with open-source development. But it can be daunting if you are a beginner or have never contributed to open source.
In this post, I will share some good starting places for Hacktoberfest. Repositories, Communities, Ideas, and Events.
Table of Contents
- What is Hacktoberfest?
- Why contribute to open-source?
- You are already an open-source contributor.
- Top 7 open source repositories to get started
- Important resources for open-source contribution
- Upcoming open-source events
- My thoughts & open-source journey
What is Hacktoberfest?
Hacktoberfest is a month-long celebration of open-source projects, their maintainers, and the entire community of contributors. Each October, open-source maintainers give new contributors extra attention as they guide developers through their first pull requests on GitHub.
~ from GitHub.
Hacktoberfest is an idea and celebration of open-source. Since this happens in October, the name rhymes with October.
We all use open-source software in our day-to-day lives as developers or consumers of products that rely on open-source libraries.
These software are created and maintained by people and organizations. Who open source their software for wider adoption, freedom to use, and
modify, and benefit from the collective intelligence of a global community of developers.
Hacktoberfest serves as a dedicated month-long celebration to contribute to these open-source projects. It's an opportunity for everyone, whether you're a newcomer or an experienced developer, to contribute to open-source projects and positively impact the community.
Why Contribute to Open-Source?
It's as simple as it can be for fun. Yes, contributing to open-source is fun. And this fun brings you:
-
Professional Experience: Contributing to projects that other people, companies, or organizations use. Gives you a professional experience. You get:
- Project Management Skills: How software developers come and develop software, do releases, bug fixes, and patches, and document things. While maintaining peace and collaborating is an interesting thing to know.
- Understand Real World Use Cases: Contributing to projects used in the industry can expose you to real-world development scenarios and user requirements.
-
Skill Development: This is the best part. Your learning and skills skyrocket while contributing and collaborating with open-source projects and communities. You will get the opportunity to:
- Solve diverse problems: Open source projects cover various applications, industries, and complexities. This allows you to understand code bases outside your day job.
- Real-World Experience: This is crucial for students and people willing to change their careers. Open-source projects are often complex and serve real-world purposes. Working on them exposes you to the challenges you would encounter professionally.
- Collaboration and Teamwork: You collaborate with experienced developers, UI/UX designers, and other professionals. This interaction teaches you how to work as part of a team, improves your communication skills, and provides new perspectives to approach problems.
- Improve your Portfolio and Resume: As you contribute to open source, each pull request you create helps you gain new skills. And you get practical applications of those skills.
- Get Mentored by Amazing People: Yes, you meet people who will guide you, help you out, and mentor you on many things. These are some of the people who leave a lasting impact on your career.
- Networking Opportunities: Within these communities, there are a lot of people who come from diverse backgrounds who can provide career guidance, offer collaboration opportunities, or even recommend you for job openings.
So, just by working on open-source projects, you get a lot of exposure and learning. This is an amazing way to boost your career and knowledge base. You can also get hired by some amazing open-source companies/organizations.
You Are Already An Open Source Contributor
I am going to name a few programming languages and frameworks:
Python | Go | React | Rust |
---|---|---|---|
Angular | Django | FastAPI | Ruby on Rails |
NodeJS | Bun | Yarn | Spring |
Have you programmed or used any of these in your products? Have you written a blog or video or posted or advocated about these projects?
Yes, then you've contributed to them in one way or the other.
Open Source contributions don't always involve directly jumping into the code base, fixing bugs, adding features, and enhancing existing codes. When you write a blog post, create a video tutorial or even a Tweet thread about a specific programming language like Python or a framework like React, you're contributing by educating others and spreading awareness.
When you create a project using open-source tools and frameworks and share it with people, showcasing how you built it and how they can build it is also one way to contribute to open source.
You are already close to open-source projects. And are already making contributions.
Top 7 Repositories To Get You Started with Open Source
I have created a list of open-source repositories to check out and join their Slack and Discord. Fork them, and introduce yourself.
The list contains some new, interesting projects. Many of you have seen it on DEV.
It contains:
- Small Organizations: Easy to get started and have an impact. This is the best place for beginners. (Personal Opinion)
- Large Organizations: Learn more, understand the code base, network, and contribute.
- Warm and Welcoming Community: Join the discord and Slack, say Hi, and introduce yourself. This might be the start of something new.
- Big projects maintained by developers: Some projects are maintained by developers, and you can contribute to them.
Some of these projects are (order is random):
1. Resume Matcher
What does it do?
Resume Matcher is a resume optimization tool that checks for your resume's ATS (Applicant Tracking System) friendliness. It helps you understand where to improve your resume and get selected for your next job.
How can you contribute?
- Contribute to the Next JS webapp.
- Add the support of GPT or LLMs.
- Enhance the performance and fix some bugs.
Participating in Hacktoberfest: Yes β
GitHub: https://github.com/srbhr/Resume-Matcher
Website: https://www.resumematcher.fyi/
Discord: Resume Matcher's Discord
Tech Stack: Python, NextJS, FastAPI, TypeScript
This is a project maintained by me. And it has been trending a few times on GitHub. I've always welcomed new contributors and collaborators. I am making it a nice place to start with open source while working on an amazing project.
Join the Discord and say hi π. Drop in a β or fork π΄ this project. And yes, please optimize your resume before applying. π§Ύ
2. Swirl
What does it do?
Swirl is open-source software that uses AI to search multiple content and data sources simultaneously and return AI-ranked results. This can prompt Generative AI, enabling you to get answers based on your data.
How can you contribute?
- Write an article about Swirl.
- Add in a new connector. E.g., Integrate discord API to Swirl.
- Improve the documentation.
- Create some examples of searching docs using Swirl and generating answers.
Participating in Hacktoberfest: Yes β
Swags: Yes β
GitHub: https://github.com/swirlai/swirl-search
Website: https://swirl.today/
Slack: Join Slack, say Hi!
Tech Stack: Python, Django
Give Swirl a π on GitHub and introduce yourself in Slack. This will start your search for something great. π₯
3. Novu
What is it?
Novu is an open-source notification infrastructure built for engineering teams to help them build rich product notification experiences. Novu equips developers with a suite of tools that streamline the process of implementing a notifications engine into your product.
How can you contribute?
- Bug Fixes
- Feature Enhances
- Improve Documentation
Participating in Hacktoberfest: Yes β
GitHub: https://github.com/novuhq/novu
Website: https://novu.co/
Discord: Novu's Discord, introduce yourself
Tech Stack: TypeScript
Give Novu a π on GitHub and introduce yourself on Discord. You'll be notified that you're doing great work π.
4. Spartan-UI
What does it do?
It's shadcn for Angular. Spartan is an effort to port the incredible shadcn's UI project to the Angular ecosystem.
How can you contribute?
- Develop UI Components
- Work on Documentation
- Create some examples
GitHub: https://github.com/goetzrobin/spartan
Website: https://www.spartan.ng/
Discord: Discord for Spartans
Tech Stack: TypeScript, Angular
Give Spartan a π on GitHub. Check out their discord and say hi π.
5. Boxy HQ
What does it do?
BoxyHQ is Security Building Blocks for Developers' factory! They are passionate about the open-source ecosystem and offer a suite of APIs for security and privacy that helps engineering teams build and ship compliant cloud applications faster.
How can you contribute?
- Front End User Interface enhancements for the Admin Portal
- Login FE UI enhancements
- Create example apps
Participating in Hacktoberfest: Yes β
GitHub: https://github.com/boxyhq/jackson
Website: https://boxyhq.com/
Discord: Join Boxy on Discord
Tech Stack: TypeScript
Give BoxyHQ a π on GitHub. Join their SSO Journey on Discord. Say Hi π.
6. tldraw
What is it?
tldraw is a collaborative digital whiteboard. You can use tldraw to create a drop-in whiteboard for your product or as the foundation to build your infinite canvas applications.
How can you contribute?
- Feature enhancements.
- Bug Fixes.
GitHub: https://github.com/tldraw/tldraw
Website: https://tldraw.com/
Discord: Discord for tldraw
Tech Stack: TypeScript, Python.
Give tldraw a β on GitHub. Doodle with them on Discord.
7. Plane
What is it?
Open-source, self-hosted project planning tool. It puts itself as an Open Source JIRA, Linear, and Height Alternative. Plane helps you track your issues, epics, and product roadmaps in the simplest way possible.
How can you contribute?
- Bug Fixes
- Enhance Documents
- Add features.
GitHub: https://github.com/makeplane/plane
Website: https://plane.so/
Discord: Plane's Discord
Tech Stack: Typescript
Give Plane a π on GitHub. Fly to their Discord.
Important Resources for Open Source Contributions
- Hacktoberfest's Website
- How to contribute to Open-Source by GitHub
- DEV's Blog on Hacktoberfest.
- How to get started with Hacktoberfest.
Open Source Events (Upcoming)
These are only what I'm aware of. I'll update this section with more events.
- Swirl's upcoming Webinar on Retrieval Augmented Generation. Join their Slack to know more.
- HackSquad 2023
- More Events Soon, bookmark this post for more updates.
My Thoughts and My Open Source Journey
Hi, I'm Saurabh Rai. And thank you for reading my post. I'm very glad that you are interested in contributing to open-source.
I'm the maintainer and creator of Resume-Matcher. I started my journey by being part of big and small open-source communities. Just by talking to people, I made a few contributions here and there. To become a Google Summer of Code 2022 Mentor for Weaviate.
I started with no-code contributions since they are easy to do. But this is just getting started once you get the momentum up. You gain confidence and develop small code changes, which eventually evolve into large ones.
This has been and will be an exciting journey for you. And I'm sure you will learn a lot, network with cool people, and find many interesting opportunities.
If you are feeling overwhelmed by large code bases, don't be. Just join the communities via Slack or Discord. Start conversing. You'll do great things, I'm sure of it.
And if you want to ask me anything, here's my GitHub. It contains all the socials. You can reach out to me there or ping me on Swirl's Slack or Resume Matcher's Discord. I'm kind of active there.
Give all of these repos a β and fork them. It'll set up an update for you and start you with the first step.
This is my GitHub π.
Thanks, and remember. Keep working on yourself. Greatness is Coming!!