glific / mobile

8 stars 17 forks source link

Glific mobile

Getting Started

Prerequisites

Setup

The following setup helps you to run the application on an android machine. Read the documentation of react-native to know about running it on iOS devices.

  1. Clone the repository
git clone git@github.com:glific/mobile.git

You can also use https to clone the repository. To know more read this documentation.

  1. Now change the directory by navigating into the cloned repository. Use the following command, in case of linux.
cd mobile
  1. Create an environment file in the project's home directory with the filename .env, copy the contents from .env.example and update the key-value pairs based on the current environment the application is running in.

  2. Install the dependencies using yarn.

yarn install
  1. Start the metro server.
yarn start

Note that you need to connect either an android device or an emulator with your PC to run the application.

Testing (Android phone)

Contributing

Pull Request Submission Guidelines

When submitting a pull request, please ensure that it meets the following requirements:

Please make sure to address all the checkboxes above before submitting your pull request. This will help in ensuring the quality and maintainability of the project.

Developer Guidelines

Theme Constants Usage

Import the project theme constants from the constants folder:

import { COLORS, SIZES, FONTS, SCALE } from '/path/to/constants';

Here are the project theme constants available for usage:

Refer to the /constants/theme.ts file containing the project theme constants.

Naming Convention for testID and class

Example:

// Correct:
<View testID="myElement" className="myComponent" />

// Incorrect:
<View testID="my_element" className="my_component" />
<View testID="my element" className="my-component" />

Following these guidelines helps to ensure a smoother development process and easier maintenance.

If you have any questions or need further assistance, feel free to reach out to the project team. Happy coding!