create-belt-app
v0.7.4
Published
React Native Expo project starter and generator CLI
Downloads
186
Readme
Belt
While we actively use Belt internally at thoughtbot, this project is still in early phases of development, so its API might still change frequently.
Belt is an opionated CLI tool for starting a new React Native app. It makes the mundane decisions for you using tooling and conventions that we at thoughtbot have battle-tested and found to work well for the many successful apps we have built for clients.
Here are some of what gets configured when you start a new Belt app:
- Expo
- ESLint
- Prettier
- TypeScript
- Jest
- React Native Testing Library
- MSW for mocking
- React Navigation with bottom tabs
- Tanstack Query for REST APIs. Apollo Client for GraphQL coming soon!
- Redux Toolkit for global state (coming soon!)
Usage
Create a new React Native Expo app using Belt with:
# With NPM
npx create-belt-app MyApp
# With Yarn
npx create-belt-app MyApp --yarn
# With pnpm (experimental)
npx create-belt-app MyApp --pnpm
# With Bun (experimental)
npx create-belt-app MyApp --bun
Or, if you already have an app and want to use Belt, run:
# with NPM
npm install --save-dev create-belt-app
# with Yarn
yarn add --dev create-belt-app
# with PNPM
pnpm install --save-dev create-belt-app
then run the command you'd like to perform:
# eg. add TypeScript to the project
yarn belt add notifications
# or, with NPM
npx belt add notifications
# or, with PNPM
pnpm belt add notifications
Contributing
See the CONTRIBUTING document. Thank you, contributors!
License
Belt is Copyright © 2024 thoughtbot. It is free software, and may be redistributed under the terms specified in the LICENSE file.
About thoughtbot
Belt is maintained and funded by thoughtbot, inc. The names and logos for thoughtbot are trademarks of thoughtbot, inc.
We love open source software! See our other projects or hire us to design, develop, and grow your product.