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
[](https://github.com/maximcoding/react-native-starter/generate)
A bare-workflow React Native starter for apps that need more than a demo.
10
+
11
+
Skip the weeks of boilerplate. Start with strict TypeScript, real navigation, offline-ready data flow, theming, i18n, and quality gates already wired — so you can ship features instead of rebuilding infrastructure.
> If `npm install` fails on peer deps, try `npm install --legacy-peer-deps`.
24
35
25
36
---
26
37
27
-
--------
28
-
## ✨ Features Included
29
-
-**🧱 Bare React Native** — full native control, no Expo lock-in
30
-
-**🧭 Navigation & State** — React Navigation (stacks, tabs, modals), Zustand for global state, TanStack Query for server state with caching, retries, and persistence.
31
-
-**📦 TanStack Query** — caching, persistence, retries, and invalidation
32
-
-**🪶 Zustand** — lightweight global state without Redux overhead
33
-
-**⚡ MMKV Storage** — `react-native-mmkv` via Nitro Modules — up to 30× faster than AsyncStorage.
34
-
-**📡 Offline-Ready** — Query persistence, queue/replay, cache restore, and transport-level offline mode for a solid experience on flaky networks.
35
-
-**🔌 Pluggable Transport** — Adapters for REST, GraphQL, WebSocket, and Firebase. Swap your backend strategy without rewiring the app.
36
-
-**🎨 Theming & i18n** — Light/dark mode with semantic tokens. `i18next` with typed `useT()` hook, ready from day one.
37
-
-**🌍 Localization** — typed i18n support from day one
38
-
-**🖼️ SVG via script** — easier icon generation and maintenance
39
-
-**🚀 BootSplash included** — native splash screen setup already in place
40
-
-**🧪 Developer Experience** — Biome linting, Jest tests, GitHub Actions CI, Maestro E2E, SVG icon generation, and native splash screen via BootSplash.
41
-
42
-
---
43
-
44
-
## 🧭 Project structure
45
-
46
-
The starter uses a **feature-first** layout under `src/features` with shared code in `src/shared`.
|`USE_MOCK_API`| No |`true` / `1` uses the mock transport in dev |
115
-
|`WS_URL`| No | WebSocket base URL |
116
-
|`ENV`| No | Runtime label: `development`, `staging`, `production`|
117
-
|`SENTRY_DSN`| No | Enables Sentry when non-empty |
118
-
|`SENTRY_ENABLE_IN_DEV`| No |`1` sends Sentry events from `__DEV__`|
119
-
|`SENTRY_TRACES_SAMPLE_RATE`| No | Performance sampling value from `0` to `1`|
120
-
|`CODEPUSH_KEY_IOS` / `CODEPUSH_KEY_ANDROID`| No | Reserved for OTA; no CodePush SDK ships by default |
58
+
### 🎨 UI & Localization
121
59
122
-
Useful docs:
60
+
-**Theme tokens** — light/dark mode with semantic design tokens, no magic values
61
+
-**i18next** — typed `useT()` hook with key extraction and type generation
62
+
-**SVG icon pipeline** — scripted generation via `npm run gen:icons`
63
+
-**BootSplash** — native splash screen included and ready to customize
123
64
124
-
Sentry setup
125
-
OTA / updates policy
126
-
Publishing / discoverability
65
+
### 🧪 Quality & CI
127
66
128
-
----------
67
+
-**Biome** for linting and formatting
68
+
-**Jest** for unit tests
69
+
-**Maestro** for E2E flows
70
+
-**GitHub Actions** CI pipeline out of the box
129
71
130
-
# React Native Bare Starter
72
+
---
131
73
132
-
[](https://github.com/maximcoding/react-native-starter/generate)
A bare-workflow React Native starter for apps that need more than a demo.
76
+
Feature-first layout under `src/features`, shared code in `src/shared`.
139
77
140
-
Clean foundation from day one: strict TypeScript, feature-first structure, theme tokens, i18n, offline-ready behavior, and solid quality gates — with room to grow without rebuilding the same setup again.
0 commit comments