From 1da5fd36617eca338be9e1e106b0cbe8c2e69099 Mon Sep 17 00:00:00 2001 From: NedimHodzic <105010544+NedimHodzic@users.noreply.github.com> Date: Fri, 14 Apr 2023 19:22:18 -0500 Subject: [PATCH] docs: fix grammar issues in mobile/web READMEs (#2345) Signed-off-by: Nedim Hodzic hodzicnedim11@gmail.com --- apps/mobile/README.md | 40 ++++++++++++++++++++-------------------- apps/web/README.md | 36 ++++++++++++++++++------------------ 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/apps/mobile/README.md b/apps/mobile/README.md index 8d2556674..a138a3034 100644 --- a/apps/mobile/README.md +++ b/apps/mobile/README.md @@ -19,9 +19,9 @@ ## Build instructions -> **Before you start it is recommended that you read [the contributing guidelines](/CONTRIBUTING.md).** +> **Before you start, it is recommended that you read [the contributing guidelines](/CONTRIBUTING.md).** -### Setting up development environment +### Setting up the development environment Requirements: @@ -57,7 +57,7 @@ npm install ### Running the app on Android -[Setup an Android emulator from Android Studio](https://developer.android.com/studio/run/managing-avds) if you haven't already and then run the following command to start the app in the Emulator: +[Setup an Android emulator from Android Studio](https://developer.android.com/studio/run/managing-avds) if you haven't already, and then run the following command to start the app in the Emulator: ```bash npm run start:android @@ -78,11 +78,11 @@ npm run start:ios ## Developer guide -> This project is in a transition state between Javascript & Typescript. We are gradually porting everything over to Typescript so if you can help with that, it'd be great! +> This project is in a transition state between Javascript & Typescript. We are gradually porting everything over to Typescript, so if you can help with that, it'd be great! ### The tech stack -We try to keep the stack as lean as possible +We try to keep the stack as lean as possible: 1. React Native 2. Typescript/Javascript @@ -95,17 +95,17 @@ We try to keep the stack as lean as possible The app codebase is distributed over two primary directories. `native/` and `app/`. -- `native/`: Includes `android/` and `ios/` folders and everything related to react native core functionality like bundling, development and packaging. Any react-native dependency that has native code i.e android & ios folders, is installed here. +- `native/`: Includes `android/` and `ios/` folders and everything related to react native core functionality like bundling, development, and packaging. Any react-native dependency with native code, i.e., android & ios folders, is installed here. -- `app/`: Includes all the app code other than the native part. All JS only dependencies are installed here. - - `components/`: Each component serves a specific purpose in the app UI, for example the `Paragraph` component is used to render paragraphs in the app and a `Header` component is used to render a `header` on all screens. - - `common/`: Features that have integral role in app functionality, for example, notesnook core is initialized here. +- `app/`: Includes all the app code other than the native part. All JS-only dependencies are installed here. + - `components/`: Each component serves a specific purpose in the app UI. For example, the `Paragraph` component is used to render paragraphs in the app, and a `Header` component is used to render a `header` on all screens. + - `common/`: Features that are integral to the app's functionality. For example, the notesnook core is initialized here. - `hooks/`: Hooks for different app logic - - `navigation/`: Includes app navigation specific code. Here the app navigation, editor & side menu are rendered side by side in fluid tabs. + - `navigation/`: Includes app navigation-specific code. Here the app navigation, editor & side menu are rendered side by side in fluid tabs. - `screens`: Navigator screens. - - `services`: Parts of code that do a specific function, for example, the `sync` service is responsibe for running Sync from anywhere in the app. - - `stores`: We use `zustand` for global state management in the app. There are multiple stores that provide the state for different parts of the app. - - `utils`: General purpose stuff such as constant values, utility functions etc. + - `services`: Parts of code that do a specific function. For example, the `sync` service runs Sync from anywhere in the app. + - `stores`: We use `zustand` for global state management in the app. Multiple stores provide the state for different parts of the app. + - `utils`: General purpose stuff such as constant values, utility functions, etc. There are several other folders at the root: @@ -115,11 +115,11 @@ There are several other folders at the root: ### Running the tests -When you are done making the required changes, you will need to run the tests to make sure you didn't break anything. We use Detox as the testing framework & the tests can be started as follows: +When you are done making the required changes, you must run the tests to ensure you didn't break anything. We use Detox as the testing framework & the tests can be started as follows: ### Android -To run the tests on android, you will need to create an emulator device on your system: +To run the tests on Android, you will need to create an emulator device on your system: ``` $ANDROID_HOME/tools/bin/avdmanager create avd -n Pixel_5_API_31 -d pixel --package "system-images;android-31;default;x86_64" @@ -127,13 +127,13 @@ $ANDROID_HOME/tools/bin/avdmanager create avd -n Pixel_5_API_31 -d pixel --packa If you face problems, follow the detailed guide in [Detox documentation](https://wix.github.io/Detox/docs/introduction/android-dev-env). Keep the emulator name set to `Pixel_5_API_31`. -Once you have created an emulator device, build the android apks +Once you have created an emulator device, build the Android apks: ``` npm run build:android ``` -Finally run the tests +Finally, run the tests: ``` npm run test:android @@ -141,9 +141,9 @@ npm run test:android ### iOS -To run e2e tests on iOS simulator, you must be on a Mac with XCode installed. +To run e2e tests on the iOS simulator, you must be on a Mac with XCode installed. -First install [AppleSimulatorUtils](https://github.com/wix/AppleSimulatorUtils) +First, install [AppleSimulatorUtils](https://github.com/wix/AppleSimulatorUtils): ``` brew tap wix/brew @@ -156,7 +156,7 @@ Now build the iOS app for testing: npm run build:ios ``` -Finally run the tests: +Finally, run the tests: ``` npm run test:ios diff --git a/apps/web/README.md b/apps/web/README.md index c6a1b173c..15c62787b 100644 --- a/apps/web/README.md +++ b/apps/web/README.md @@ -12,7 +12,7 @@ ### The desktop app? -You can find all the desktop related code in [the `desktop/` directory](./desktop/). Since it uses the web app directly, we are keeping both together. (We should probably move it to it's own project at some point.) +You can find all the desktop-related code in [the `desktop/` directory](./desktop/). Since it uses the web app directly, we are keeping both together. (We should probably move it to its own project at some point.) ### Downloads & releases @@ -21,7 +21,7 @@ You can find all the desktop related code in [the `desktop/` directory](./deskto ## Build instructions -**Before you start it is recommended that you read [the contributing guidelines](/CONTRIBUTING.md).** +> **Before you start, it is recommended that you read [the contributing guidelines](/CONTRIBUTING.md).** ### Setting up the development environment @@ -66,11 +66,11 @@ npx serve apps/web/build ## Developer guide -> This project is in a transition state between Javascript & Typescript. We are gradually porting everything over to Typescript so if you can help with that, it'd be great! +> This project is in a transition state between Javascript & Typescript. We are gradually porting everything over to Typescript, so if you can help with that, it'd be great! ### The tech stack -We try to keep the stack as lean as possible +We try to keep the stack as lean as possible: 1. React v17: UI framework 2. Typescript/Javascript: The logical side of the app @@ -82,21 +82,21 @@ We try to keep the stack as lean as possible ### Project structure -1. `src/`: 99% of the source code lives here & this is also where you'll be spending most of your time. - 1. `index.tsx`: **the app entrypoint** responsible for loading the appropriate view based on the current route. - 2. `app.js`: **the default route** that contains the whole note taking experience (notes list, navigation, editor etc.) - 3. `views/`: Contains **all the views** including views for login, settings, notes, notebooks & topics. - 4. `components/`: All the **reusuable UI components** are here (e.g. button, editor, etc.) - 5. `stores/`: Contains the glue code & **logic for all the UI interaction**. For example, when you pin a note the `src/stores/note-store.js` is responsible for everything including refreshing the list to reflect the changes. - 6. `navigation/`: All the **routing & navigation** logic lives here. The app uses 2 kinds of routers: - 1. `routes.js`: This contains all the main routes like `/notes`, `/notebooks` with information on what to render when user goes to a particular route. - 2. `hash-routes.js`: The hash routes are used for temporary navigation like opening dialogs, opening a note. These look like `#/notes/6307bbd65d5d5d5cb86f6f74/edit`. - 7. `interfaces/`: This is where the **platform specific storage & encryption logic** lives. These interface implementations are used by the `@notesnook/core` to provide capabilities such as persistence & encryption. - 8. `hooks/`: Contains all the **general purpose React hooks** - 9. `utils/`: These are **general-purpose utilities** for performing various tasks such as downloading files, storing configuration etc. +1. `src/`: 99% of the source code lives here & this is also where you'll spend most of your time. + 1. `index.tsx`: **the app entry point** responsible for loading the appropriate view based on the current route. + 2. `app.js`: **the default route** that contains the whole note-taking experience (notes list, navigation, editor, etc.) + 3. `views/`: Contains **all the views**, including views for login, settings, notes, notebooks & topics. + 4. `components/`: All the **reusable UI components** are here (e.g., button, editor, etc.) + 5. `stores/`: Contains the glue code & **logic for all the UI interactions**. For example, when you pin a note, the `src/stores/note-store.js` is responsible for everything, including refreshing the list to reflect the changes. + 6. `navigation/`: All the **routing & navigation** logic lives here. The app uses two kinds of routers: + 1. `routes.js`: This contains all the main routes like `/notes`, `/notebooks` with information on what to render when the user goes to a particular route. + 2. `hash-routes.js`: The hash routes are used for temporary navigation, like opening dialogs or opening a note. These look like `#/notes/6307bbd65d5d5d5cb86f6f74/edit`. + 7. `interfaces/`: This is where the **platform-specific storage & encryption logic** lives. These interface implementations are used by the `@notesnook/core` to provide capabilities such as persistence & encryption. + 8. `hooks/`: Contains all the **general-purpose React hooks** + 9. `utils/`: These are **general-purpose utilities** for performing various tasks such as downloading files, storing configuration, etc. 10. `common/`: This directory contains **the shared logic between the whole app**. For example, this is where the database is instantiated for use throughout the app. - 11. `commands/`: These are **commands used by the desktop app** for things like checking for updates, storing backups etc. -2. `desktop/`: The Electron layer for **the desktop app lives here**. (This should be moved outside into it's own project). + 11. `commands/`: These are **commands the desktop app uses** for things like checking for updates, storing backups etc. +2. `desktop/`: The Electron layer for **the desktop app lives here**. (This should be moved outside into its own project). ### Running the tests