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
* π(bump version): bump version to 2.3.1 and improve contents with automatic version finder
* β¨(bump version): bump version to 0.71.3 and ts support by default
* π(lint): remove unused import
* π(ci): remove unused cp command
* β»οΈ(refactoring): re-add dot files
* chore(plugin): fix lint errors
---------
Co-authored-by: jeremydolle <[email protected]>
This project is a [React Native](https://facebook.github.io/react-native/) boilerplate that can be used to kick-start a mobile application.
11
18
12
-
The boilerplate provides **an architecture optimized for building solid cross-platform mobile applications** through separation of concerns between the UI and business logic.
19
+
The boilerplate provides **an architecture optimized for building solid cross-platform mobile applications** through separation of concerns between the UI and business logic.
13
20
We made this full documentation so that each piece of code that lands in your application can be understood and used.
14
21
15
22
@@ -26,46 +33,47 @@ The driving goal of the architecture of the boilerplate is separation of concern
26
33
27
34
-**Presentational components are separated from containers**.
28
35
29
-
Presentational components are small components that are concerned with *how things look*.
36
+
Presentational components are small components that are concerned with *how things look*.
30
37
Containers usually define whole application screens and are concerned with *how things work*: they include presentational components and wire everything together.
31
-
38
+
32
39
If you are interested you can [read more about it here](https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0).
33
40
34
41
-**State is managed using global [Redux](https://redux.js.org/) stores**.
35
42
36
43
When applications grow, sharing state and its changes can become very hard. Questions like "How can I access this data?" or "When did this change?" are common, just like passing data around components just to be able to use it in nested components.
37
-
44
+
38
45
With Redux, state is shared using global *stores*, and changes are predictable: *actions* are applied by *reducers* to the state. While the pattern can be a bit much for small projects, the clear separation of responsibilities and predictability helps with bigger applications.
39
-
46
+
40
47
If you are interested you can [read more about it here](https://redux.js.org/introduction/motivation).
41
-
42
-
## Content π§³
43
48
44
-
The boilerplate contains:
49
+
## Content π§³
45
50
46
-
- a [React Native](https://facebook.github.io/react-native/) (v**0.65.1**) application (in "[ejected](https://github.com/react-community/create-react-native-app/blob/master/EJECTING.md)" mode to allow using dependencies that rely on native code)
47
-
- a [clear directory layout](#directory-layout) to provide a base architecture for your application
48
-
-[Redux](https://redux.js.org/) (v**4.1.1**) to help manage state
49
-
-[Redux Persist](https://github.com/rt2zz/redux-persist) (v**6.0.0**) to persist the Redux state
50
-
-[React Navigation](https://reactnavigation.org/) (v**6**) to handle routing and navigation in the app, with a splash screen setup by default
51
-
-[redux toolkit](https://redux-toolkit.js.org/) (v**1.6.1**) to make redux easier
52
-
-[axios](https://github.com/axios/axios) (v**0.21.4**) to make API calls
51
+
The boilerplate contains a [clear directory layout](#directory-layout) to provide a base architecture for your application with some essential dependencies:
52
+
-[React Native](https://facebook.github.io/react-native/) (v**<Versionname="react-native"/>**) application (in "[ejected](https://github.com/react-community/create-react-native-app/blob/master/EJECTING.md)" mode to allow using dependencies that rely on native code)
53
+
-[Redux](https://redux.js.org/) (v**<Versionname="react-redux"/>**) to help manage state
54
+
-[Redux Toolkit (Query)](https://redux-toolkit.js.org/) (v**<Versionname="@reduxjs/toolkit"/>**) to improve redux api calls
55
+
-[Redux Persist](https://github.com/rt2zz/redux-persist) (v**<Versionname="redux-persist"/>**) to persist the Redux state
56
+
-[React Native mmkv](https://github.com/mrousavy/react-native-mmkv) (v**<Versionname="react-native-mmkv"/>**) which is an efficient, small mobile key-value storage
57
+
-[React Navigation](https://reactnavigation.org/) (v**<Versionname="@react-navigation/native"/>**) to handle routing and navigation in the app, with a splash screen setup by default
58
+
-[React I18Next](https://github.com/i18next/react-i18next) (v**<Versionname="react-i18next"/>**) to handle internationalization in your app
53
59
-[prettier](https://prettier.io/) and [eslint](https://eslint.org/) preconfigured for React Native
54
-
-[react-native-flipper](https://fbflipper.com/) (v**2.0.0**) to debug react-native and [redux-flipper](https://github.com/jk-gan/redux-flipper) (v**1.4.2**) to debug redux
60
+
-[react-native-flipper](https://fbflipper.com/) (v**<Versionname="react-native-flipper"dev/>**) to debug react-native,
61
+
[redux-flipper](https://github.com/jk-gan/redux-flipper) (v**<Versionname="redux-flipper"dev/>**) to debug redux,
62
+
[navigation devtool](https://www.npmjs.com/package/@react-navigation/devtools) (v**<Versionname="@react-navigation/devtools"dev/>**) to debug navigation,
63
+
55
64
56
65
The boilerplate includes an example (displaying fake user data) from UI components to the business logic. The example is easy to remove so that it doesn't get in the way.
57
66
58
67
## Directory layout ποΈ
59
68
60
-
-`src/Assets`: assets (image, audio files, ...) used by the application
61
-
-`src/Components`: presentational components
62
-
-`src/Config`: configuration of the application
63
-
-`src/Containers`: container components, i.e. the application's screens
64
-
-`src/Navigators`: react navigation navigators
65
-
-`src/Services`: application services, e.g. API clients
66
-
-`src/Stores`: redux [actions, reducers and stores](https://redux.js.org/basics)
67
-
-`src/Translations`: application strings, you can add languages files and be able to translate your app strings
68
-
-`src/Theme`: base styles for the application
69
+
-`src/components`: presentational components
70
+
-`src/hooks`: hooks of the app, you will have the `useTheme` hook to access the theme
71
+
-`src/navigators`: react navigation navigators
72
+
-`src/screens`: container components, i.e. the application's screens
73
+
-`src/services`: application services, e.g. API clients
74
+
-`src/stores`: redux [actions, reducers and stores](https://redux.js.org/basics)
75
+
-`src/theme`: base styles for the application
76
+
-`src/translations`: application strings, you can add languages files and be able to translate your app strings
Copy file name to clipboardExpand all lines: documentation/docs/2_Getting Started/2_2_Configuration.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ title: Configuration
4
4
---
5
5
6
6
## Change the appicon
7
-
To help generate appicons, you can use an online tool like [appicon](https://appicon.co/) to generate for both iOS and Android all icons and image sets.
7
+
To help generate appicons, you can use an online tool like [appicon](https://appicon.co/)or [easyappicon](https://easyappicon.com/)to generate for both iOS and Android all icons and image sets.
8
8
9
9
### iOS π
10
10
To change the appicon of the iOS application, you need to replace all the content of
0 commit comments