|
| 1 | +# Coderooz — Custom Expo Template |
| 2 | + |
| 3 | + |
| 4 | +[](LICENSE) |
| 5 | +[](https://expo.dev) |
| 6 | +[](https://www.typescriptlang.org/) |
| 7 | +[](https://www.nativewind.dev/) |
| 8 | + |
| 9 | +A production-ready Expo starter template with TypeScript, NativeWind, SQLite, Drawer navigation, Notifications, and OTA Updates. |
| 10 | + |
| 11 | +> - A production-ready Expo starter template with TypeScript, NativeWind (Tailwind), SQLite, Drawer navigation, Notifications, and OTA Updates. |
| 12 | +> - Designed as a template repo and a foundation for a future interactive installer. |
| 13 | +
|
| 14 | + |
| 15 | + |
| 16 | +## Features |
| 17 | +- Expo (managed workflow) |
| 18 | +- TypeScript first (fully typed project) |
| 19 | +- NativeWind (Tailwind CSS for React Native) |
| 20 | +- Drawer navigation (Expo Router + Drawer) |
| 21 | +- Expo SQLite utilities (starter hooks + utils) |
| 22 | +- Expo Notifications (in-app + push token helper) |
| 23 | +- Expo Updates (OTA checks) |
| 24 | +- Preconfigured Metro / Babel / Tailwind configs |
| 25 | +- Ready for interactive post-install setup (Option B) |
| 26 | + |
| 27 | +--- |
| 28 | + |
| 29 | +## Quick start |
| 30 | + |
| 31 | +Create a new Expo app with this template (remote): |
| 32 | + |
| 33 | +```bash |
| 34 | +npx create-expo-app my-app --template https://github.com/coderooz/CUSTOM-EXPO-TEMPLATE |
| 35 | +```` |
| 36 | + |
| 37 | +Or clone locally: |
| 38 | + |
| 39 | +```bash |
| 40 | +git clone https://github.com/coderooz/CUSTOM-EXPO-TEMPLATE my-app |
| 41 | +cd my-app |
| 42 | +npm install |
| 43 | +npm run start |
| 44 | +``` |
| 45 | + |
| 46 | +To test a tagged version: |
| 47 | + |
| 48 | +```bash |
| 49 | +npx create-expo-app my-app \ |
| 50 | + --template https://github.com/coderooz/CUSTOM-EXPO-TEMPLATE#v0.1.0 |
| 51 | +``` |
| 52 | + |
| 53 | +--- |
| 54 | + |
| 55 | +## Recommended workflow while developing the template |
| 56 | + |
| 57 | +1. Keep your repo clean of generated artifacts (`node_modules`, `.expo`, build outputs). |
| 58 | +2. Create a `v0.1.0` tag for stable snapshots and tests. |
| 59 | +3. Use the GitHub repo as the initial distribution channel; publish to `npm` when stable. |
| 60 | +4. Add `scripts/setup.js` later to support interactive postinstall prompts (Option B). |
| 61 | + |
| 62 | +--- |
| 63 | + |
| 64 | +## Roadmap (what's coming next) |
| 65 | + |
| 66 | +* ✅ Basic TypeScript template & nativewind support |
| 67 | +* ⬜ Drawer navigation + example screens |
| 68 | +* ⬜ SQLite and notification utilities |
| 69 | +* ⬜ `scripts/setup.js` interactive installer (Option B) |
| 70 | +* ⬜ Publish to npm (`expo-template-*`) and add CI checks |
| 71 | +* ⬜ Add modular UI presets (shadcn / react-native-paper / custom) |
| 72 | +* ⬜ Add GitHub Actions to run `expo doctor` + TypeScript checks |
| 73 | + |
| 74 | +--- |
| 75 | + |
| 76 | +## Contributing |
| 77 | + |
| 78 | +1. Fork the repository |
| 79 | +2. Create a new branch: `git checkout -b feat/your-feature` |
| 80 | +3. Make changes, run lint/type checks |
| 81 | +4. Create a PR describing the change and rationale |
| 82 | + |
| 83 | +--- |
| 84 | + |
| 85 | +## License |
| 86 | + |
| 87 | +MIT © Coderooz |
0 commit comments