Small projects for Junior Developers

Help Junior developers get hired by sharing small projects they can work on to build their resume with paid work.

All Bounties


Convert synchronous client call to asynchronous for

Created by Jim Jones

Call Stacking is the easiest way for new engineers to understand your large codebase . Onboarding a new engineer in a day, not weeks.

The current Call Stacking client utilizes a synchronous HTTP post to send the trace data to the server.

Change the client class to utilize an asynchronous request to post the data to the server so that it doesn't block the collection logic.

The client should gracefully retry and fail if it can't reach the server.

We can Zoom to discuss possible solutions and tradeoffs.



Document deployment to heroku alternative with a free plan

Created by Ed Tee

For propertywebbuilder, my rails based open source real estate website builder I would like to add documentation about deploying to an alternative provider with a free plan.

Please add a comment in the issue stating what provider you would like to document before starting on this.  Thanks.


Fix card overflow

Created by MyBuddyAndrew

Fix card overflow.


Improve styling of sign up button on

Created by Ryan Bigg


[RailsDevs] Post RailsDevs to real-world-rails

Created by Joe Masilotti

Add a post to the repos page of real-world-rails for RailsDevs.



Add a test case to the safe_query gem

Created by Peter Cai

safe_query is a library designed to raise exceptions when potentially unsafe queries are executed via ActiveRecord. To ignore a false positive, the docs recommend converting the relation to an array first before trying to iterate over the results.

The tests (written in rspec) don't cover this case, so a PR addressing this issue should specifically cover the case where converting to an array with `to_a` does not raise an exception when it normally would


Add promo banner for FriendlyRB conference on

Created by Adrian Marin

We'd love to be able to tell folks that visit about the FriendlyRB conference. Can you help us with that?


[RailsDevs] Tab order and autofocus on sign in + registration screens

Created by Joe Masilotti

I noticed today that the the sign in and registration screens don't have some common UX affordances. I'd like to fix that.
A PR addressing this issue should: 
• Set the tab order on the sign in screen to email then password then forgot password 
• Set the tab order on the registration screen to email then password then password confirmation (if it isn't already) 
• Autofocus on the email field for both of these forms


[RailsDevs] Archive conversations

Created by Joe Masilotti

The conversations index page can get overwhelming after you've had a lot of contact with folks. I'd like a way to make it easier to follow a few important threads without getting bogged down by the rest.
A PR addressing this issue should: 
• Add an Archive button to every conversation
• When clicked, remove the conversation from /conversations
• If any conversations are archived, add a link to the bottom labeled "Archived conversations"
• When clicking this link, visit /conversations/archived and show the archived ones
• Each conversation on this screen should have a Unarchive button that moves it back to /conversations


[RailsDevs] Don't retry failed jobs if the recipient is inactive

Created by Joe Masilotti

Sending emails via Postmark can raise a Postmark::InactiveRecipientError error, indicating that the recipient has disabled emails from RailsDevs. But because the job failed Sidekiq is retrying it over and over again.

A PR addressing this issue should:
• Catch Postmark::InactiveRecipientError errors in ApplicationJob and not queue them for retry


[RailsDevs] Add a tooltip to the headers on the admin conversations dashboard

Created by Joe Masilotti

The admin conversations dashboard lets admins keep up with ongoing conversations happening between businesses and developers.
It's not very obvious what two columns, REPLIED? and EMAIL?, mean.
A PR addressing this issue should:
•  Add a title HTML attribute to the two headers explaining what they do.

The HTML title attribute appears as a tooltip when hovering the element. Use the following titles:
• REPLIED? - The developer has replied to this conversation.
• EMAIL? - The developer mentioned an email address in a reply.

This will most likely require changing the Admin::Tables::HeaderComponent View Component to accept a new attribute to be rendered.


Use the new gpt-3.5-turbo model

Created by Benjamín Silva

We want to explore how are the stories generated using the new chatgpt api model
Here's the documentation of the new model
It should be as easy as changing the usage of the old endpoint for the new one and configure parameters properly.
But first we need to update the open ai gem first.
We are using this gem:
Otherwise you wont be able to use the new endpoint.
Please make sure you update every usage of the gem to the new endpoint.
They are mostly used in the jobs (app/jobs directory)


Add some new cards to the Magic: The Gathering Ruby project.

Created by Ryan Bigg

I'm attempting to build Magic: The Gathering, but in Ruby. As a bit of Ruby practice, your task would be to find a card to implement. You can use the existing cards as examples, particularly cards like Story Keeper. 

Easy cards to implement would be these vanilla ones: 

If you're looking for more of a challenge, pick something from the recent set:

I'll pay you $2.50 for each vanilla card, and $5 for each non-vanilla card, up to a total of $50USD.


Add pagination to Beginner Bounties

Created by Chris Oliver

When we have more projects on the Beginner Bounties site, we're going to need to have pagination. Your job will be to add pagination using the Pagy gem to both index pages for bounties.


Add A Twitter Card to Beginner Bounties

Created by Emmanuel Hayford

There's currently some Open Graph, but no Twitter Card. Please add a Twitter Card so links on Twitter look great! ✨


Create a location field for Avo

Created by Adrian Marin

Avo is an admin panel framework for Ruby on Rails.
It has a few built-in fields from basic ones like text, select, and progress to complex ones like trix (WYSIWYG), markdown and key_value.
It would be amazing to have a location field too.
The field should take display the map (mapbox, openstreet, or gmaps) on the show view and two inputs (lat & long) on the edit view.
Nice to have:
- select location on a map instead of text fields on edit view
- show a tooltip with the location map on index view

Documentation for custom field creation:
Chat where we can help with navigating the codebase