BeamNG.Earth
A 1:1 scale streamed Earth for BeamNG.drive: real elevation and satellite imagery, floating origin, LOD streaming from a companion server
Mods in one click. Find a mod and click Add to Library. The app downloads it, unpacks it and puts it in the right folder.
GamesRust · TypeScriptGitHub @Frostn1OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
The desktop mod manager for MX Bikes, from mxbsecure.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
MXB App is a desktop mod manager for MX Bikes. It
replaces the tedious manual install dance — open mxb-mods.com, follow the link,
download from MediaFire, unzip, and move files into the right folder — with a
single flow:
Search a mod → open its page → click Add to Library → done.
MXB App downloads the mod, extracts it, and drops the files into the matching MX
Bikes mods folder automatically.Read the full README ↗mxbsecure.com/app · Download for Windows · Everything from mxbsecure
MXB App is a desktop mod manager for MX Bikes. It replaces the tedious manual install dance — open mxb-mods.com, follow the link, download from MediaFire, unzip, and move files into the right folder — with a single flow:
Search a mod → open its page → click Add to Library → done.
MXB App downloads the mod, extracts it, and drops the files into the matching MX
Bikes mods folder automatically.
Tracks, bikes, rider gear, paints, sounds, model swaps and riding-style animations are all recognised — and anything can be installed by dropping it on the window, sorted by what the archive holds rather than by what its title says.
GP Bikes is a second title in the same app, switched from the sidebar. Installing, the library and presets all work there. What doesn't is per-title and gated on a capability rather than hidden: the 3D previews need part bindings GP Bikes hasn't got yet, and the stores and Race mode sell and manage MX Bikes content, so those rows don't appear. The UI speaks six languages (Settings → Appearance).
Get it from mxbsecure.com/app, or straight from the Releases page:
.exe installer (recommended; MX
Bikes runs on Windows)..dmg. Play launches the
game through a CrossOver, Whisky or Wine bottle..AppImage,
.deb and .rpm,
for playing under Proton (SteamOS included).Builds are unsigned, so Windows SmartScreen / macOS Gatekeeper will warn on first launch — choose Run anyway / right-click Open.
You only install once: the app checks for new releases on launch (and every 6 hours), then downloads and installs them on restart.
Setup
Each of these is a tab in the app.
ModSource trait in the Rust backend. GP Bikes browses its own site.Running through all of it:
connection timeout and nothing else — the identical string it prints for a firewall
rule, a broken DNS server or a router that wants restarting. So the commonest failure
in the game is the one failure it gives you no way to place, and it reaches the Discord
as several people each debugging a machine that is working perfectly. A failed server
list now asks how many other apps failed the same fetch in the last ten minutes and
leads with that, because one machine failing proves nothing and twenty proves a great
deal. Check my connection then walks outwards from the machine — internet, whether
the master's address resolves, whether outbound UDP is being blocked, our own fetch —
and finishes with what everyone else is seeing, the only check that can overturn the
rest. Each app contributes one anonymous bit and one word for why, on the same setting
the usage counters use; the same numbers are public at
mxbsecure.com/status, which is a link a Discord bot can
post instead of a troubleshooting list.GETINFO
when the master won't answer — a server answers that to anyone, with no account and no
ticket — but only from addresses this install had already been told about, so on a fresh
install the fallback had nothing to fall back to. That is exactly who an outage hits
hardest. The app now contributes the addresses it sees to a pooled book and seeds its own
from it, so the fallback is in place before the outage rather than after. Addresses only,
no names and no install id; the control plane holds one back until distinct networks have
independently seen it in the game's own list, because a list that tells thousands of apps
where to send a datagram cannot take anybody's word for it.| Path | What it is |
|---|---|
apps/manager/ | MXB App — browse, install, manage, launch. React frontend, Rust backend. |
crates/core/ | Shared Rust: the game's own file formats, and the model pipeline both apps draw with. |
packages/shared/ | Shared TypeScript: the 3D viewer, the UI primitives, the API client and the base dictionary. |
site/ | The old landing page; the live one is mxbsecure.com/app. |
The repo is a bun + Cargo workspace holding the MXB App and the file-format and 3D code it
is built on (crates/core, packages/shared). The other mxbsecure apps are not open source.
Prerequisites: Node.js 20+ and the
Rust toolchain, plus the
Tauri system dependencies for your OS.
On Linux that includes libasound2-dev.
bun install # install frontend dependencies
bun run tauri dev # run the desktop app (Vite + Rust)
Other scripts:
bun run dev # Vite dev server only (frontend; Tauri commands unavailable)
bun run build # typecheck + build the frontend
bun run typecheck # tsc --noEmit
bun run lint # eslint
bun run tauri build # produce a production desktop bundle
Rust backend (from the repo root — it is the Cargo workspace root):
cargo check --workspace # typecheck the Rust
cargo test --workspace # unit tests — catalog parsing, download resolution, install
# routing, the game's file formats. Tests needing a real MX
# Bikes asset are #[ignore]d.
MX Bikes is a Windows game, so a real install is a Windows one — but the app launches it on macOS through a CrossOver, Whisky or Wine bottle, and on Linux under Proton. The cross-platform logic builds and tests on any OS.
Secure content (the Secure tab) comes from a local-only module that is not in
the public tree; content locking lives in Frost's Studio now. Its absence is the
normal case — build.rs sets a cfg when the file
is present, and without it the app simply doesn't show that row.
A fork builds and runs with everything else intact.
The Shop tab has two halves. My purchases signs in to mxbikes-shop.com with the user's own account and installs what they have already bought — it needs no build-time credential. Catalog browses the store's public listing, and that half needs an API credential supplied by the store. Copy the example file and fill it in:
cp .env.local.example .env.local # gitignored; never commit it
The store authenticates with a single custom header, so MXB_SHOP_API_HEADER is the header's
name and MXB_SHOP_API_KEY is its value.
apps/manager/src-tauri/build.rs reads the file at compile time and bakes the values into the Rust binary
— they are deliberately not Vite env vars, which get inlined into the JS bundle and would
ship the key to anyone who unzips the app. Setting the same names in the environment
overrides the file, which is how CI supplies them.
Building without it is fully supported: the Catalog tab simply doesn't appear, the Shop
opens straight on My purchases, and nothing else changes. That's what forks build. Official
releases get the values from the MXB_SHOP_API_HEADER and MXB_SHOP_API_KEY repository
secrets — without those secrets, released builds ship with no catalog.
The catalog is browse-only: it shows what the store sells and links out to the product page. Buying happens on the store's own site. Installing something already bought goes through My purchases, which downloads the file and hands it to the same review sheet a drag-and-drop uses, so it lands by what the archive contains rather than by what its title suggests. MXB Hub works the same way and needs no credential at all — its catalog is a public WooCommerce Store API.
Releases are published here, on this repo's
Releases page, by the mxbsecure release
pipeline: signed Windows, macOS and Linux bundles plus the signed latest.json the in-app
updater reads. A suffixed tag (v0.13.0-beta.3) is a pre-release and stays off
releases/latest, so only the beta channel sees it. Each version's notes are its
CHANGELOG.md section.
Features coming next:
<modsPath>/mods signals FrostMod to
reload the game when mods are added — including ones installed outside the app.
Off Windows that means the game's own Wine prefix — Proton's
steamapps/compatdata/<appid> on Linux, your CrossOver/Whisky bottle on macOS.
FrostMod is a Windows program and so is the game it injects into, so the app
starts it in there rather than beside itself, and reaches it with a command file
instead of a Windows event (nothing outside a Wine prefix can pulse one). Needs
FrostMod v0.13.0 or newer, which is what reads that file; GP Bikes needs
v0.11.0."host": "manager"); saying nothing means the Studio..zip, .7z and .rar are extracted natively; already-packaged
.pkz / .pnt files are placed as-is.tauri-plugin-updater against the latest.json published with
each release; signature-verified, installs on restart.supporters.json on main, fetched at runtime and cached —
adding somebody there reaches installed copies without a release, and an offline
launch still shows the last list it saw.