Ask HN: What open source projects need help?

206 points by aaronbrethorst ↗ HN
Let's match open source projects that need help with developers looking to contribute. Think of this as "Who's Hiring" but for open source - a monthly thread to surface interesting projects that could use more hands.

Please include: Project name and description (if not widely known); Tech stack; Areas needing help (DOCS, CODE, DESIGN, etc.); Level (BEGINNER-FRIENDLY if applicable); Email address or other means of contacting you.

Ground rules:

Post only if you maintain/run the project

One post per project/suite

No commercial recruitment

No thread complaints

Developers: Only reach out if you actually want to contribute.

129 comments

[ 2.7 ms ] story [ 197 ms ] thread
OneBusAway

A suite of real-time public transit projects that are used by millions of people every day. OneBusAway helps people find out when and where their bus will arrive, and provides them with a trip planner, too. OBA is used by transit riders everywhere from Seattle to New York City; Adelaide, Australia to Buenos Aires, Argentina.

In addition to developers, we would also benefit greatly from product management and user experience assistance.

Tech stacks in need of help:

iOS app (Swift): developers, 2+ years of experience with iOS.

Android app (Java/Kotlin): developers, 2+ years of experience with Android.

REST API Server (Java): developers, 2+ years of experience with Java.

Docs: Java developers with an interest in technical writing who can help to document our backend systems.

Find all of our projects: https://github.com/onebusaway

Join our Slack: https://join.slack.com/t/onebusaway/shared_invite/zt-2jve26v...

Reach out to me directly: aaron@onebusaway.org

I think you need a PR personnel too.
Are you volunteering? ;)
No, just offering unsolicited advice :)
I completely agree. I hope they happen to see our discourse.
What sort of product management help do you need? Like managing the work of the developers or more wireframing and design?
All of the above: product roadmap, coordinating developers’ work, specs and designs, and anything else you can think of.
Would you be open to someone for those tasks?

I just checkout your project and it looks amazing. I’m not a Mobile Developer but I have definitely worked with Java especially with Springboot

Would love to get in touch with you

Check out the contact links in my original post. Please reach out! :)
I need years of experience in your tech stack to contribute to your opensource project? Is this common?
Feel free to check out the projects and find an issue where you can contribute.

You're just a lot less likely to be successful without good foundational knowledge of the technologies we use, and our volunteers don't have a lot of bandwidth to try to train new prospective volunteers on the fundamentals of, say, Swift UI, Android development, or Ruby on Rails.

It is absolutely not common.

It is reasonable to expect contributors to have a certain amount of programming experience, but I rarely see any open source projects ask for requirements in a very specific area like a job posting. Many open source projects -- I am not talking about React or VSCode -- would be happy to see people creating pull requests at all, and are willing to provide pointers or hints for people who have experience but may not be so proficient in a specific language. Most of the projects work well that way.

There is a help-wanted tag on github for this: https://github.com/topics/help-wanted

(I know that GH is not the whole world, but it stores an overwhelming majority of the OSS ecosystem)

Funny that all Microsoft projects appear on top. They seem to struggle very hard.
The list is ranked in a completely transparent way. It's anything with the help wanted tag, ordered by number of stars.

So this isn't some sneaky Microsoft thumb on the scale, the way you appear to be implying. Simpler than that: I doubt many projects know about this list (I for one just saw it for the first time), and since GitHub put it together, Microsoft codebases got the memo to add the tag.

If you want to see other popular projects at the top of this list, open up a PR to have them add the tag.

Personally I find it funny one of the most valuable companies in the world is begging for free help maintaining their software. Gotta be cheap to get rich I guess.
Some open source projects don't necessarily want help. I don't think adding a help-wanted tag qualifies for begging as much as letting you know that contributors are actually welcome if you're interested.
What a shame, one of the biggest companies of our time with tags looking for help. Sell it however you want, but the tag is there and this is a pitiful image.

I feel sorry for all the naive developers who will waste their time working for free for a parasitic corporation.

To be honest, I think it is true. They declared "issue bankruptcy" in one of they repo:

https://github.com/microsoft/TypeScript-Website/issues/2804

Contrary to many people's perception, Microsoft is one of the biggest contributors to open source, whether for projects they "own" like TypeScript or VSCode, or other common projects like Linux. The amount of users and bugs/feature requests etc don't match headcounts available at Microsoft.

(comment deleted)
Job-Scout is an open-source CLI tool that aggregates remote Machine Learning, AI, and Data Science job listings from Twitter and Hacker News. It analyzes your resume to match and rank jobs based on your skills and experience, providing you with personalized job recommendations. The project is highly customizable—users can easily tweak the search to find internships or specific roles. Contributors are welcome to join and enhance this project by adding new job sources, features, and improvements!

https://github.com/ShreeshaBhat1004/Job-scout

If you like it, Give it a star

DM me if you wanna contribute

(comment deleted)
GNU Taler (https://taler.net/); privacy-preserving payment system. Written in C/Java/TypeScript/Kotlin/Rust/Postgresql/etc.; needs include coding (especially integration into other applications) documentation (review, proof-reading), testing (incl. benchmark, UX), packaging, translation (Weblate/gettext); any help welcome ;-).
Taler seems cool,but this is a huge no no:

    Ensure your wallet is regularly online to avoid losing money due to expiration!
Wow that's a big problem. At least my monero don't expire if I leave it for a few years..
We do need to expire cryptographic keys eventually, there is no sane alternative to this. Now, note that "regularly online" here could mean once every X years depending on how the system is configured.
Thinking about it, that is fine because Taler is meant to be a payment system, not a store of value
I love this idea, thanks for putting this together. I'm biased, but I also wish more FOSS/OSS projects had a realistic contributor path for UX folks to contribute- so many (non-dev-tooling) projects suffer as a result of building without collaboration from people who might use the product.
I should have included that in my list of asks for OneBusAway. We have a ton of need for people in every user experience, discipline: visual design, usability, you name it. Also, product management would be a huge help.
I'm skeptical that this does anything. I'd wager that just about nobody is sitting around with all this energy waiting to contribute to a project they've never used and just heard about in an HN thread.

I'm sure you get some commitments of people who say they will help. Just like people say they'll pay for your product once you build it and people who say they'll go to an event 6 months from now.

It's hard enough to find contributors among engineers who are using a tool.

(comment deleted)
While I don't have any free time to contribute, I do like hearing about cool stuff out there that people care about and I pass the world along! Word of mouth and fun is at least "anything"!
Will it be a low hit rate? Probably, but I've seen way less serendipitous matchmaking plans than this work out very well. The cost is low for people to just put out a feeler.

Also, it's fun to read over the different projects, so we all win.

Not 100% agree but would almost say the same thing.

As someone who made small contributions to several projects and left comments under many GitHub issues, things that I see:

* Heavy users are more likely to report bugs and end up contributing to the project * If many people run into the same issue, more likely someone will create among them will write a fix, or at least suggest a workaround * A "healthy" project -- one that addresses GitHub issues and pull requests quickly, that responds to people's questions instead of ignoring them, that encourages technical discussions, is more likely to attract even more contributions. * Some projects have issues and pull requests that are open for a long time without any response from maintainers (despite active development). I myself wouldn't even bother reporting a bug because it's not worth it

Meanwhile, even under this thread, you can find people that expect certain amount of experience with a particular language. That just says to me they don't want contribution. Why? I am no expert in that certain language, but I am experienced enough in software engineering that I can jump into many codebases and create a high quality patch with some ChatGPT. I've done this many times before. If they are so obnoxious I'd rather put my energy elsewhere.

you can find people that expect certain amount of experience with a particular language

what then should they be doing different? to contribute code to a software project you need to know or learn the language the project is written in. there is no way around that.

does it bother you that they don't want patches created with chatGPT? did you miss the controversy around that? can you assert that the code you submit is really free of copyright claims?

They can do all of that, of course. My point is that their condescending attitude is going to lose potential contributors like me, when most open source projects embrace a much more welcoming environment. Maybe they are doing fine, I don't know. But I have worked on enough open source projects to know that it is not the best position they can be in.
I disagree. I’ve been on sabbatical and wanting to not get rusty, so I like the idea of contributing to OSS in a way that feels rewarding and desired
Well sure, but the question is whether you actually did it, not whether you liked the idea of it.
What a real contribution to this thread. You'd wager that nobody finds this useful? I wager that nobody finds your comment useful.
I find parent's comment very truthful and (mostly) reflects the reality, based on my personal experience. Saying that as someone who created many pull requests and opened/participated in many github issues for open source projects.
sure, but it's not a useful comment. unlike this thread; i did find a project i didn't know about and will contribute to as i was going to make it myself in the new year ( for fun, not profit ).
Just takes one purse string puller to see something and maybe their company will put money into helping. There is an incentive for companies to contribute. They dont want their tools to die, they want to do the right thing (and can because of culture or BDFL) or promotional reasons either for their service or for recruitment. In addition yes a bored retired xoogler might need a hobby.
Puter

https://github.com/HeyPuter/puter

We're building a "Web OS" designed to be feature-rich, exceptionally fast, and highly extensible! It can be used for anything from a Dropbox alternative to a cloud environment for building websites and apps!

Stack: JavaScrips. No frameworks.

Need help with: Frontend and backend.

Reach out: nj@puter.com

I see good stuff yet the scope creep including AI and opening every imaginable file seems to be a slowdown
This is great. I played Solitaire for an hour, maybe two.
KiCad EDA - https://kicad.org

KiCad is a popular open-source EDA tool used by engineers and designers across the globe. We're always open to contributions from experienced C++ developers, especially those who are also familiar with the world of electrical engineering / PCB design. Check out our developer landing page[1] to find the developers email list and contribution guides. We accept merge requests on GitLab[2] and try to keep a number of lower-scope issues tagged starter [3] for new developers to take on.

We're currently in our annual feature freeze as we focus on stabilizing features added in the past year and squashing bugs ahead of our planned 9.0 release at the end of January. Any help testing the nightly builds and surfacing bugs to fix is appreciated as well as actual bug-fixing!

[1] https://dev-docs.kicad.org/en/getting-started/index.html

[2] https://gitlab.com/kicad

[3] https://gitlab.com/kicad/code/kicad/-/issues/?label_name[]=s...

I think if one did curate such a list, then importance (both number of users, and societal impact) should be a key factor. KiCad is an important project on both dimensions.
Kicad is amazing. I was trying to contribute a while ago. But setting everything up and compiling is a bit tricky. I think I will give it another shot.
Following their docs and noting any difficulties might be helpful even if you don't get to any actual coding.
Same for me. I wanted to contribute, but the amount of dependencies needed to get a local build to run was a major hurdle.
Phase - Open source application secrets management platform for developers

What we are building and how it works (TL;DR): - CLI that replaces .env files by imports secrets, encrypting and syncing them to the backend. The CLI injects secrets into any application at runtime as environment variables. - A frontend web app to CRUD key, value pairs across dev, staging, prod envs. Add teammates. View logs. - An backend API to store secrets data. Sync them to common platforms like GitHub, Kubernetes, AWS etc.

Tech stack: - Next.js frontend - Python / Django backend (django-rq, django REST, graphene graphql) - Postgresql - Redis

Repos: - https://github.com/phasehq/console - https://github.com/phasehq/cli - https://github.com/phasehq/docs - https://github.com/phasehq/python-sdk - https://github.com/phasehq/golang-sdk - https://github.com/phasehq/kubernetes-secrets-operator - https://github.com/phasehq/terraform-provider-phase

DM me on Slack: https://slack.phase.dev or X: https://x.com/nimishkarmali

Help needed: Contributors are welcome to try the platform and improve it by creating or picking up GitHub issues on any of the above repos, adding new integrations, features, and docs!

SmoothMQ: a drop-in replacement for SQS. https://github.com/poundifdef/smoothmq

I am looking to build 4 main things:

1. Better compatibility with SQS' different endpoints 2. Sharding: I want users to be able to add/remove a node to a cluster and have the system automatically rebalance 3. Replication

The project is written in Go, and the UI is also just uses HTML and go templates.

I'm interested in this but I see long lasting issues and very few PRs (last one from August 3rd). Is it because things are stable now or the project is not getting traction?
Fil-C - a memory safe implementation of C and C++.

Written in C and C++.

Need most help just porting C programs to Fil-C. Often porting is as easy as recompiling, but sometimes there are compatibility issues to resolve similar to if you were porting C code to a new CPU or OS. Could also use help with compiler hacking (llvm expertise required) and runtime hacking (experience with high level language runtimes required).

https://github.com/pizlonator/llvm-project-deluge

Are use-after-free and such bugs detected at compile time? There are still some cases that scan-build, cppcheck and other static analysis tools do not find.
They’re deterministically detected at runtime. Any use of a pointer to an object that got freed will trap with a filc safety error, which terminates program execution and prints a backtrace.

I don’t think it’s possible to catch all use after frees at compile time precisely. Like, you could have a checker that catches all errors but also rejects valid programs or you can have a checker that accepts all valid programs but doesn’t find all the bugs. To be precise it has to be at runtime, and that’s what Fil-C does.

can you imagine a program termination in the middle of a surgical operation?

It is harmless for less critical jobs though, like image viewing.

Memory safe languages aren’t about proving everything at compile time. Some version of a panic is going to be there, at a minimum for array bounds checking.

In Fil-C, if you don’t like the use after free panic, then just don’t call free and let the GC free your objects.

And if you’re doing safety critical stuff (I’m assuming that’s what you’re getting at) then the game is to prove that the system will be safe in the sense of not hurting people, not in the sense of memory safety. And that proof burden is much higher than the proof burden for memory safety.

enigo - Cross platform input simulation in Rust [1]

enigo tries to make it easy for developers to simulate key presses or mouse movements on Linux, Windows and macOS. I try to hide the differences between operating systems and make it as simple as possible. It is the most popular crate to do so according to crates.io, but there are still a number of issues.

A number of cool project use it such as - plock: Query and stream the output of an LLM from anywhere you can type [2] - RustDesk: Remote Access and Support Software (forked enigo) [3]

I'm close to running integration tests in the CI to prevent regressions and find platform differences, but it's not fully working yet. If someone could get it over the finish line, that would be great.

For Linux there is X11 but also basic Wayland implementation and a libei one, but they only work properly for US keyboards.

[1] https://github.com/enigo-rs/enigo [2] https://github.com/jasonjmcghee/plock [3] https://rustdesk.com/

Plain Old Recipe: takes online recipes and removes the cruft.

https://www.plainoldrecipe.com https://github.com/poundifdef/plainoldrecipe

Things I want to do:

1. Improved print-friendly format 2. Ability to format to arbitrary sizes (for example, format for index cards) 3. Smarter layouts. For example, if a recipe says "add the chicken stock" in a step it would be great if it could identify how much ("1 cup") like some apps do.

Thanks for plainoldrecipe! Such a handy tool.
Never seen this before, but it's such a simple and brilliant idea. Thank you!
I love this project! I immediately made an iphone shortcut so I can convert any page I'm currently to a plainoldrecipe. Sharing in case it is useful for anyone else: https://www.icloud.com/shortcuts/86bfd549ae6c421ca04b5a99320...
Just The Recipe is a similar service: https://www.justtherecipe.com/
Does not appear to be open source.
I would like to have some sort of paid version. Maybe an API, or something, to help pay for ongoing server costs and maybe some pizza money too.

Any ideas on what would be worthwhile for “premium” access?

I have wanted to do something like this for news websites for a while now. I tried the recipe site, my first url from lifehacker wasn't supported, the second attempt from the curated list gave an error loading site, so maybe make the links clickable, have a top 10 ready to go ( cached) at bottom of landing page. Write a bot to periodically check the list of sites this works on and indicate how recent said check was done. Then I might spend more time. Good luck!
(comment deleted)
I'd say "projects that you personaly use". If you use a piece of software or a linux distro, please contribute back, "pay" for it forward.

So I shall not suggest any particular piece, everyone uses different set of Free Software, and that's how we all like it.

IfcOpenShell - https://ifcopenshell.org - https://github.com/IfcOpenShell/IfcOpenShell

An open-source toolkit for developing digital platforms in the built environment. With IfcOpenShell, you can read, write, and modify Building Information Models (BIM) using the IFC standard — a versatile and open digital language spanning the entire lifecycle of buildings, from design to construction and beyond.

Now including Bonsai, a Blender-based 3D editor to create and edit multidisciplinary information within IFC models.

The built environment is a major contributor to emissions, making sustainability in design, construction, and operations an area we can work on with data-driven decisions unlocked by open source tools.

CAD/BIM has long faced lock-in by the proprietary nature of traditional tools. We aim to change that.

C++ / Python / 3D / Computational geometry / CAD / BIM

I'd love to resurrect my open source real estate website builder:

https://github.com/etewiah/property_web_builder

I was quite active with updating it a few years ago but haven't had the time to work on it recently.

On another project of mine I have been using aider and co-pilot and realised I could bring property_web_builder back to life with these tools. It would motivate me massively to do this if at least one or two other people were willing to work with me on this.

I'm just at a beginner level with Ruby on Rails, but I am interested in working on it.
Hi there, sorry I've only just now seen your comment.

What is the best way to reach you?

You can send me a message on x: https://x.com/prptywebbuilder

Or via the linkedinpage for propertywebbuilder

No worries. Sent you a LinkedIn message.
Icosa Gallery - https://github.com/icosa-foundation/icosa-gallery

A Google Poly replacement with ambitions beyond that. 3D model hosting, viewing, sharing with simple self-hosting and (eventually) federation. An API that's 99% compatible with the Google Poly API means it's easy to revive integrations that used to support Poly. We're also got a dataset that we've cleaned up from Internet Archive scrapes restoring nearly all of the original collection. (about 150,000 models)

Looking for help with the three.js viewer/editor, help with fediverse support, Django database or OAuth experts. And of course documentation, testing, design, ux and everything else.

And anyone with their own project that would benefit from integrating with us.

Stack: Vanilla javascript / HTMX, Django, Postgres, three.js and GLTF

Suitable for any skill levels.

andy@icosa.foundation

https://icosa.gallery/ (currently in private alpha)