Rust good first issues

4,048 open Rust issues currently match the default 10+ star filter. Scored difficulty: 5,943 at 1/5, 8,784 at 2/5, 12,678 at 3/5, 12,097 at 4/5, 857 at 5/5. This hub uses the same feed as the homepage, limited to repositories whose GitHub language is Rust.

All languages · Browse projects · How to find good first issues · Rust good first issues guide · Hacktoberfest 2026

Active projects

Unique repos with open help-wanted issues updated in the last 30 days

Showing 30 of ~4,048 matching filters (Rust · 10+ stars)

List

fix(web): payment details show the creation time in UTC

AI summary

The payment details page currently displays the creation time in UTC without a timezone, while the recent activity tooltip shows the local time. This issue aims to align the payment details display with the recent activity by showing the creation time in the user's local timezone.

buggood first issuearea:webarea:wallettriage:validatedstatus:in-progress
13
Difficulty
2/5

fix(server): ZIP-321 parse accepts `amount=0` URIs that send and request reject

AI summary

The `/api/v1/zip321/parse` endpoint incorrectly accepts URIs with `amount=0`, which then causes issues with sending and requesting Zcash transactions. The expected behavior is for the parse endpoint to reject such URIs with a 400 error, similar to how the request endpoint handles zero amounts.

buggood first issuearea:serverarea:wallettriage:validatedstatus:in-progress
13
Difficulty
2/5

Dashboard balances remain stale after SSE reconnects

AI summary

The dashboard's account balances are not updating correctly after a Server-Sent Events (SSE) connection is re-established. This means that any balance changes made while the connection was down are not reflected on the dashboard until a manual refresh. The expected behavior is for balances to automatically update upon reconnection.

buggood first issuearea:webtriage:validatedstatus:in-progresslevel:low
13
Difficulty
3/5

fix(server): send quotes return 500 before the wallet has scanned

AI summary

The `send_quote` API endpoint returns a 500 Internal Server Error when the wallet has not yet scanned blocks, causing the Send dialog's fee quote to fail during startup. This is inconsistent with other endpoints like `send` and `faucet`, which correctly return a 503 Service Unavailable error in this scenario. The fix involves adding a startup check to `send_quote` to map the unscanned wallet error appropriately.

buggood first issuearea:serverarea:wallettriage:validatedstatus:in-progress
13
Difficulty
2/5

fix(server): app logs contain ANSI color codes

AI summary

The server's log output is incorrectly including ANSI color codes when running in a containerized environment. This results in unreadable log messages instead of plain text. The issue requires removing these color codes from the server's logging mechanism.

buggood first issuearea:servertriage:validatedstatus:in-progresslevel:low
13
Difficulty
2/5

fix(cli): `ths --json update` prints no JSON when it installs

AI summary

The `ths --json update` command fails to print a JSON report when it actually performs an installation. Instead, it only outputs the installer's text to stdout. The expected behavior is to always output a JSON report, consistent with when the tool is already up-to-date.

buggood first issuearea:cliarea:releasetriage:validatedstatus:in-progress
13
Difficulty
2/5

fix(web): a theme chosen in another tab is not applied

AI summary

This issue describes a bug where theme changes made in one browser tab are not reflected in another tab until a reload. The `useTheme` hook correctly listens for storage events, but the `applyTheme` function, responsible for visually updating the theme, only triggers when the current tab itself selects a theme, leading to a desynchronized theme experience across tabs.

buggood first issuearea:webtriage:validatedstatus:in-progresslevel:low
13
Difficulty
2/5

fix(web): amounts above the maximum supply pass form validation

AI summary

The web application's amount field for ZEC transactions lacks an upper bound, allowing users to submit amounts exceeding the maximum supply. This leads to server-side rejections, which are then displayed as generic errors to the user. The fix involves implementing a validation to prevent amounts above 21,000,000 ZEC from being submitted.

buggood first issuearea:webarea:wallettriage:validatedstatus:in-progress
13
Difficulty
2/5

fix(web): "View transaction" leaves the Payments dialog open

AI summary

This issue describes a bug where clicking the "View transaction" link within the Payments dialog on the web application does not close the dialog. Instead, it navigates the user to the transaction explorer page while the Payments dialog remains open, obscuring the content. The expected behavior is for the dialog to close upon clicking the link.

buggood first issuearea:webarea:walletarea:explorertriage:validated
13
Difficulty
2/5

fix(web): older block pages are labelled one block off

AI summary

This issue describes a bug where the block list footer in the web interface incorrectly labels the "Older blocks" link. The server's `before` parameter is inclusive, meaning it includes the specified block, but the web UI displays it as exclusive, causing the label to be one block off from the first block shown on the page.

buggood first issuearea:webarea:explorertriage:validatedstatus:in-progress
13
Difficulty
2/5

feat(cli): add `ths endpoints --env`

AI summary

This issue proposes adding a new command-line flag, `--env`, to the `ths endpoints` command. This flag will output environment variables in an `export` format, allowing users to easily set them for separately started environments, mirroring the variables used by `ths run`. The goal is to provide a way to access these environment variables for standalone environments.

enhancementgood first issuearea:clitriage:validatedstatus:in-progresslevel:low
13
Difficulty
2/5

feat(cli): add `ths completions <SHELL>`

AI summary

This issue proposes adding shell completion generation for bash, zsh, and fish to the `ths` CLI tool. The goal is to mirror the functionality already present in `anvil` and `forge` CLIs, making the `ths` tool more user-friendly by providing command-line auto-completion. The acceptance criteria include ensuring comprehensive completion scripts and updating the README with installation instructions.

enhancementgood first issuearea:clitriage:validatedstatus:in-progresslevel:low
13
Difficulty
2/5

fix(web): Mine has no entry point below the mobile breakpoint

AI summary

The dashboard's "Mine" functionality is inaccessible on mobile viewports (below 640px) when there are no active or failed mining jobs. This is because the primary entry point is hidden on smaller screens, and there's no alternative mobile navigation option. The fix involves ensuring a way to initiate manual mining remains available on narrow viewports.

buggood first issuearea:webtriage:validatedstatus:in-progresslevel:low
13
Difficulty
2/5

feat(cli): inspect wallet fee and maximum-spend quotes without sending

AI summary

This feature proposal aims to add a new command-line interface (CLI) option to inspect wallet fees and maximum spend quotes without initiating a transaction. The goal is to provide users and scripts with information about available funds and route-dependent fees before committing to a transfer, leveraging an existing API endpoint.

enhancementgood first issuearea:cliarea:wallettriage:validatedstatus:in-progress
13
Difficulty
2/5

Stabilize consumer assignment coordination in Kafka rebalance demo test

AI summary

The `demo_multiple_consumers_rebalance` test in the Kafka demo infrastructure is experiencing flaky failures, with consumers not receiving expected partition assignments during rebalancing. This is likely due to sequential waiting for consumer assignments, which may create coordination gaps and prevent both consumers from processing group membership events concurrently.

help wantedtest-functionaltriage:accepted
374
Difficulty
3/5

Fix unserviced subscribers in broadcast consensus concurrency test

AI summary

This issue addresses a flaky test in the broadcast consensus concurrency test that fails due to unserviced subscribers. The problem arises when new subscribers join and stop receiving messages while still being considered eligible for subsequent publishes, leading to a timeout in tracking publish receipts. The likely root cause is a race condition where a joining subscriber is retained before it has fully processed all messages, and subsequent messages are sent without a mechanism to re-poll that subscriber.

help wantedtest-functionaltriage:accepted
374
Difficulty
3/5

Overhaul Packages Testing: Add tests for `http-core` package

AI summary

This issue requests the addition of tests for the `http-tracker-core` package within the bittorrent-http-tracker project. The provided code coverage report highlights areas with lower test coverage, particularly in `announce.rs` and `scrape.rs`, indicating specific modules that need attention. The goal is to improve the overall test suite for this core component.

Easy- Developer -Testinggood first issue
514
Difficulty
2/5

Feature request: generating noise into preallocated memory

AI summary

This feature request proposes allowing `simdnoise` to write generated noise directly into user-provided memory buffers. This would enable more efficient parallel noise generation by avoiding intermediate allocations and copies, especially for large datasets.

enhancementhelp wantedgood first issue
266
Difficulty
3/5

Vocal

AI summary

The user is asking if it's possible to implement voice input for prompting. This would allow users to speak their prompts instead of typing them.

enhancementgood first issue
29
Difficulty
3/5

Links opened on window app

AI summary

External links clicked within the Escouade application's chat interface are currently opening inside the application's main window instead of the system browser. This behavior traps the user on the loaded page, as there's no navigation or back functionality, requiring the app to be closed and reopened. The issue is identified as a common Tauri problem related to unintercepted anchor clicks.

buggood first issue
29
Difficulty
2/5

Move large Statement arms out of SqlToRel::sql_statement_to_plan_with_context_impl

AI summary

This issue proposes refactoring the `SqlToRel::sql_statement_to_plan_with_context_impl` function in DataFusion to improve its readability and maintainability. The large `match` statement will be broken down into smaller, dedicated functions for each statement type, reducing complexity and making it easier to handle future `sqlparser` upgrades.

enhancementhelp wantedsqltech debt
8.9K
Difficulty
3/5

[IMPROVEMENT][GraphWorkflow::detect_potential_deadlocks][Replace unchecked node_map unwraps]

AI summary

This issue proposes to replace unchecked `HashMap::get` unwraps in the `detect_potential_deadlocks` function with safer alternatives. The current implementation relies on the assumption that all node names exist in the `node_map`, but a refactor could break this, leading to panics. The suggested fixes include using `expect` for clearer error messages, skipping missing nodes, or returning a `Result`.

enhancementgood first issue
184
Difficulty
2/5

[IMPROVEMENT][SwarmsAgent::register_tool][Reject tool names that providers do not accept]

AI summary

The `register_tool` function in `swarms-rs` currently accepts tool names that are invalid according to OpenAI and Anthropic's requirements, leading to errors later in the process. The proposed solution is to add validation for tool names during registration, ensuring they adhere to the specified character set and length constraints, and to return a `Result` for clearer error handling.

enhancementgood first issue
184
Difficulty
2/5

Also browsing: Python , TypeScript , JavaScript