Back to Explorer
Beginner Friendly Open-Source Smalltalk

Good First Issues in Smalltalk

Explore curated starter issues in high-scoring Smalltalk repositories. Every listed issue belongs to a welcoming repository scored by C-Rank™ on PR merge rates, review responsiveness, and first-timer acceptance.

Updated: Thu, 15 Oct 2026 UTC (Live GitHub Sync)
Real-Time Radar

Arm Issue Sniper for fresh Smalltalk beginner issues

Beginner issues in welcoming S/A-Tier repositories get snatched within 15 minutes. Receive instant alerts on Discord, Telegram, or Email the minute a maintainer opens a new task.

Live Good First Issues (6)

Real-Time Open GitHub Issues
pharo-project/pharo1,495 Tier A · 65 pts
#19974Opened 1 month ago
Enhance UnaryAccessingMethodWithoutReturnRule

the rule may report initialize methods as having problems and this is not correct. Here is a possible solution basicCheck: aMethod (aMethod numArgs > 0 or: [ aMethod isAbstract ]) ifTrue: [ ^ false ]. (aMethod protocolName beginsWith: 'accessing') ifFalse: [ ^ false ]. (aMethod selector = #initialize) ifTrue: [ ^ false ]. ^ aMethod ast withAllChildren noneSatisfy: [ :each | each isReturn ]

Type: EnhancementGood first issue
pharo-project/pharo1,495 Tier A · 65 pts
#19900Opened 2 months ago
Bug in PragmaCollector

Bug description when calling PragmaCollector>>release an exception is thrown. To Reproduce | p | p := PragmaCollector new. p release Expected behavior the code should execute without bug Screenshots If applicable, add screenshots to help explain your problem. Version information: OS: all Pharo Version 14 Solution the method from Model class (which was previously the super class) destroyAnnouncer was not in the Pharo image. adding the method in PragmaCollector>>destroyAnnouncer solves the problem destroyAnnouncer announcer := nil.

Type: BugEasyCompany: ThalesVersion: Pharo 14
1
pharo-project/pharo1,495 Tier A · 65 pts
#19467Opened 6 months ago
[ Deprecate ] selectorsWithArgs:

We should deprecate selectorsWithArgs: numberOfArgs "Return all selectors defined in this class that take this number of arguments" <reflection: 'Class structural inspection - Selectors and methods inspection'> ^ self selectors select: [:selector | selector numArgs = numberOfArgs]

Type: BugGood first issue
pharo-project/pharo1,495 Tier A · 65 pts
#19455Opened 6 months ago
String>>asTime should be deprecated

String does not have to be 'polymorphic' with the test of the world asString makes sense in Date, DateAndTime, Time but not in String. We should deprecate it.

Type: CleanupGood first issue
1
pharo-project/pharo1,495 Tier A · 65 pts
#19405Opened 7 months ago
`Set` should not understand the `,` message

The , message is typically used to concatenate ordered collections such as arrays or strings. Its expected behavior is to return a sequential, ordered concatenation of the receiver and the argument. However, a Set does not preserve order by definition. Because of this, supporting the , message on Set introduces semantic inconsistency: the operation suggests ordered concatenation, while sets are unordered collections. Proposed change The Set class should not implement or respond to the , message. Users should call the union: method explicitly.

Type: BugsprintGood first issue
9
pharo-project/pharo1,495 Tier A · 65 pts
#19348Opened 8 months ago
inspectionRichText is broken with the inspector API changes.

inspectionRichText <inspectorPresentationOrder: -1 title: 'RichText'> ^ MicTextPresenter new text: self The inspector raises an error because we should rewrite the method with an extra parameter. WOuld have been great to not push extra works to users of inspector. Automatically adding a parameter a a method is simple and it should have been a better approach.

Type: BugGood first issue
3

Top Smalltalk Repositories with Beginner Issues (1)

Updated Daily via GitHub GraphQL

How to make your first Smalltalk open-source pull request

Finding approachable Good First Issues in Smalltalk allows you to build real-world software engineering experience. Instead of submitting PRs to abandoned repositories, GetMerged verifies maintainer review speeds and first-timer acceptance rates before you write a single line of code.

Select any issue above to claim it directly on GitHub, or click a repository to inspect full maintainer review turnaround metrics and triage guidance!

Get this week's top welcoming repos + fresh Good First Issues for Smalltalk

Free weekly email, scoped to Smalltalk. No account needed - confirm once and unsubscribe anytime.