LmCast :: Stay tuned in

Show HN: Termcraft – terminal-first 2D sandbox survival in Rust

Recorded: March 21, 2026, 10 p.m.

Original Summarized

GitHub - pagel-s/termcraft: Terminal-first 2D sandbox survival in Rust. · GitHub

Skip to content

Navigation Menu

Toggle navigation

Sign in

Appearance settings

PlatformAI CODE CREATIONGitHub CopilotWrite better code with AIGitHub SparkBuild and deploy intelligent appsGitHub ModelsManage and compare promptsMCP RegistryNewIntegrate external toolsDEVELOPER WORKFLOWSActionsAutomate any workflowCodespacesInstant dev environmentsIssuesPlan and track workCode ReviewManage code changesAPPLICATION SECURITYGitHub Advanced SecurityFind and fix vulnerabilitiesCode securitySecure your code as you buildSecret protectionStop leaks before they startEXPLOREWhy GitHubDocumentationBlogChangelogMarketplaceView all featuresSolutionsBY COMPANY SIZEEnterprisesSmall and medium teamsStartupsNonprofitsBY USE CASEApp ModernizationDevSecOpsDevOpsCI/CDView all use casesBY INDUSTRYHealthcareFinancial servicesManufacturingGovernmentView all industriesView all solutionsResourcesEXPLORE BY TOPICAISoftware DevelopmentDevOpsSecurityView all topicsEXPLORE BY TYPECustomer storiesEvents & webinarsEbooks & reportsBusiness insightsGitHub SkillsSUPPORT & SERVICESDocumentationCustomer supportCommunity forumTrust centerPartnersView all resourcesOpen SourceCOMMUNITYGitHub SponsorsFund open source developersPROGRAMSSecurity LabMaintainer CommunityAcceleratorGitHub StarsArchive ProgramREPOSITORIESTopicsTrendingCollectionsEnterpriseENTERPRISE SOLUTIONSEnterprise platformAI-powered developer platformAVAILABLE ADD-ONSGitHub Advanced SecurityEnterprise-grade security featuresCopilot for BusinessEnterprise-grade AI featuresPremium SupportEnterprise-grade 24/7 supportPricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback


We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

pagel-s

/

termcraft

Public

Notifications
You must be signed in to change notification settings

Fork
1

Star
30

Code

Issues
0

Pull requests
0

Actions

Projects

Security
0

Insights

Additional navigation options

Code

Issues

Pull requests

Actions

Projects

Security

Insights


pagel-s/termcraft

 mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History1 Commit1 Commit.github/workflows.github/workflows  docsdocs  scriptsscripts  srcsrc  .gitignore.gitignore  Cargo.lockCargo.lock  Cargo.tomlCargo.toml  README.mdREADME.md  RELEASE_CHECKLIST.mdRELEASE_CHECKLIST.md  mkdocs.ymlmkdocs.yml  View all filesRepository files navigationREADME
termcraft
Terminal-first 2D sandbox survival in Rust, tuned toward a classic early-2012 block-survival loop.

Docs
·
Installation
·
Gameplay
·
Supported Content
·
Media Credits

Unofficial fan project. Not affiliated with Mojang or Microsoft.
Early alpha. The game is playable, but some systems are still rough or buggy.

Full highlight video: termcraft.mp4
YouTube: https://youtu.be/kR986Xqzj7E
Soundtrack in the full highlight: Fantasy Orchestral Theme by Joth and Boss Battle #2 [Symphonic Metal] by nene via OpenGameArt, both CC0. Full details: Media Credits

Overview
termcraft keeps the classic survival progression, dimensions, crafting, and exploration pressure of the early block-survival formula, but adapts the experience to a side-on terminal game.
Current scope:

procedural Overworld, Nether, and End generation
mining, placement, inventory, crafting, furnaces, brewing, boats, and chests
health, hunger, combat, weather, fluids, gravity blocks, crops, and farming
passive and hostile mobs, villages, dungeons, strongholds, and Nether fortresses
repo-local save persistence and autosave

Install And Play
Requirements:

Rust stable toolchain
a terminal with raw input support
mouse support for the best local experience

Install Rust first:

rustup.rs

Clone the repo and start the game:
git clone https://github.com/pagel-s/termcraft.git
cd termcraft
cargo run --release
If you want the optimized binary directly:
git clone https://github.com/pagel-s/termcraft.git
cd termcraft
cargo build --release
./target/release/termcraft
If you want it installed into Cargo's local bin path after cloning:
git clone https://github.com/pagel-s/termcraft.git
cd termcraft
cargo install --path .
termcraft
Local saves are written into saves/ inside the repo.
Controls Snapshot

A / D or arrow keys: move
W / Up / Space: jump or swim up
X: toggle sneak
E: inventory
1-9: hotbar selection
Left Click: mine / attack
Right Click: place / interact
F: explicit hovered-block use fallback if right click is unreliable in the current terminal
O: settings menu
Q / Esc: close UI or quit from world view

Developer/test shortcuts currently available:

F5: travel to Overworld
F6: travel to Nether
F7: travel to End
F8: return to spawn
F9: equip diamond combat loadout

Notes

The primary supported mode right now is local single-player.
Client/server code exists, but it is still experimental and is not a featured public mode yet.
If mouse right-click is unreliable in your terminal, use F as the explicit interaction fallback.

Contact
For feedback, bugs, or release questions, contact: pagel.sebastian.1@gmail.com
Development
Useful checks:
cargo test --quiet
cargo clippy --all-targets -- -D warnings
./scripts/release_smoke.sh
Release process:

Release Checklist

Save Data
Local saves are written under saves/ and are intentionally repo-local, not OS-global.

chunk files: saves/<dimension>_chunk_<x>.bin
progression file: saves/player_progression.bin

See World Format for the current save layout.

About

Terminal-first 2D sandbox survival in Rust.

pagel-s.github.io/termcraft/

Resources

Readme

Uh oh!

There was an error while loading. Please reload this page.


Activity
Stars

30
stars
Watchers

0
watching
Forks

1
fork

Report repository

Releases
1

termcraft 0.1.0

Latest

Mar 21, 2026

Packages
0

 

 

 

Uh oh!

There was an error while loading. Please reload this page.


Contributors
1

pagel-s
Sebastian Pagel

Languages

Rust
99.9%

Shell
0.1%

Footer

© 2026 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Community

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

This GitHub repository, maintained by pagel-s, details the development of “termcraft,” a terminal-based 2D sandbox survival game created in Rust. The project’s core objective is to recreate the classic early-2012 block-survival formula, specifically referencing the gameplay loops of titles like Minecraft, but adapted for a side-on perspective within a terminal environment. Currently, the game leverages procedural generation for the Overworld, Nether, and End dimensions, offering core survival elements such as mining, crafting, combat, and exploration. Key features include inventory management, furnaces, brewing, boats, chests, and a variety of mobs and structures – villages, dungeons, strongholds, and Nether fortresses – all within a persistent, locally-saved environment using autosave.

The project is presented as an unofficial fan project, explicitly noting its non-affiliation with Mojang or Microsoft, and designates its current state as an early alpha, emphasizing playable functionality while acknowledging ongoing rough edges and bugs. A full highlight video and soundtrack assets (CC0 licensed) are provided for demonstration. The game requires Rust stable toolchain and a terminal with raw input support, alongside mouse support for optimal local play.

Controls are primarily keyboard-based: movement with ‘A’ and ‘D’ or arrow keys, jumping/swimming with ‘W’ and ‘Space’, and sneaking with ‘X’. Interaction utilizes ‘E’ for the inventory and ‘1-9’ for hotbar selection. Mouse clicks are implemented for mining and attacking, while “F” functions as a fallback interaction option if right-click behavior is unreliable within the terminal. An additional settings menu is accessible via ‘O’, and escape/‘Q’ provides options to close the UI or quit. Developer shortcuts include ‘F5’ for travel to the Overworld, ‘F6’ for the Nether, ‘F7’ for the End, and ‘F8’ to return to the spawn point, with ‘F9’ enabling a diamond combat loadout.

The developer recommends utilizing ‘cargo test --quiet’, ‘cargo clippy --all-targets -- -D warnings’, and ‘./scripts/release_smoke.sh’ during development. The release process involves producing both regular and optimized binaries. Save data is managed locally within the repository’s ‘saves/’ directory, employing chunk files (e.g., saves/<dimension>_chunk_<x>.bin) and a player progression file (saves/player_progression.bin). The project's development is primarily focused on single-player local mode, with experimental client/server code existing, but not yet presented as a public feature. Contact for feedback, bugs, or questions is pagel.sebastian.1@gmail.com.