A mobile companion app for Starfield — browse and search the full game database on your phone. Built with React Native and Expo for iOS and Android.
Fully client-side. No backend, no accounts, no tracking. All game data is bundled in the app.
Author: Alex Margulis
This is a vibe coding experiment. Although I'm a software engineer, this entire repository — every line of code, every config file — was generated by AI with zero manual coding. The goal is to explore what's possible when you treat AI as the sole implementer and act purely as a product owner and reviewer.
A searchable database covering 30 Starfield data categories across 6 groups:
- 🧑🚀 Character — Skills, Traits, Powers, Status Effects
- ⚔️ Weapons & Gear — Weapons, Pistols, Shotguns, Apparel, Weapon Mods, Armor Mods, Prefixes
- 🛸 Ship Parts — Cockpits, Engines, Reactors, Grav Drives, Fuel Tanks, Shield Generators, Ship Weapons, Structural Components, Habs, Landing Gears, Bays, Dockers
- 🌌 World — Planets & Moons, Temples
- 🎒 Items — Resources, Materials, Consumables
- 🔧 Crafting — Recipes, Research
Features:
- Browse categories from a grouped home screen
- Global fuzzy search across all data (powered by Fuse.js)
- Filter within any category
- Generic detail view that adapts to any data schema
The UI is inspired by Starfield's in-game "NASApunk" aesthetic — dark backgrounds, blue accents, thin line separators, sharp rectangles, uppercase letterspaced section headers. Typography uses Exo 2 (headings) and Inter (body) as free alternatives to the game's proprietary NB Architekt and NB Grotesk R fonts.
- Expo SDK 54 (managed workflow) with Expo Router for file-based navigation
- TypeScript throughout
- Fuse.js for client-side fuzzy search
- Data registry pattern — adding a new data source means adding one entry to
src/data/registry.ts, nothing else
app/ Expo Router screens
(tabs)/ Bottom tab navigator (Browse + Search)
category/[id].tsx Category item list
item/[categoryId]/[index] Item detail view
src/
data/
json/ 31 bundled JSON data files
registry.ts Category definitions catalog
types.ts Shared type definitions
components/ Reusable UI components
hooks/ useCategory, useSearch, useFilteredList
services/search.ts Fuse.js search index
theme/ Colors, spacing, typography
# Install dependencies
npm install
# Start the dev server
npx expo startScan the QR code with Expo Go on your phone, or press i for iOS simulator / a for Android emulator.
Game data is sourced from the starfield-data community repository. Star system coordinates are extracted from game files via uesp/sf-testesm. The JSON files are bundled directly in the app at src/data/json/.
This project builds on GitHub Actions instead of EAS Build cloud, eliminating queue wait times. Standard GitHub-hosted runners are free and unlimited for public repositories.
- Go to the Actions tab in the GitHub repo
- Select the Build App workflow
- Click Run workflow and pick:
- Platform —
android,ios, orall - Profile —
development(iOS sim),development-device(iOS real device),preview, orproduction - Submit — check to auto-upload production builds to App Store / Play Store
- Platform —
Build artifacts (.apk / .ipa) are downloadable from the workflow run page. Dev and preview builds are also uploaded to Diawi for wireless installation — the install link and QR code appear in the run summary.
Set these in Settings → Secrets and variables → Actions on the GitHub repo:
| Secret | Required | Purpose |
|---|---|---|
EXPO_TOKEN |
Yes | Expo access token for EAS CLI auth. Handles build signing credentials and store submission credentials — all managed by Expo. Create at expo.dev under Account Settings > Access Tokens. |
DIAWI_TOKEN |
For wireless install | Diawi API token for OTA distribution of dev/preview builds. Create a free account at diawi.com. |
| Profile | Android | iOS | Distribution |
|---|---|---|---|
development |
.apk (emulator + device) |
.app (simulator only) |
Diawi (Android) / artifact download (iOS) |
development-device |
.apk (emulator + device) |
.ipa (real device) |
Diawi |
preview |
.apk |
.ipa |
Diawi |
production |
.aab |
.ipa |
App Store / Play Store via eas submit |
Found a bug or have an idea? Open an issue on GitHub — there are templates for bug reports and feature requests to help you get started.
MIT
This is an unofficial fan project and is not affiliated with, endorsed by, or connected to Bethesda Game Studios, ZeniMax Media, or Microsoft. Starfield and all related marks are trademarks of their respective owners.