Skip to content

Latest commit

 

History

History
90 lines (59 loc) · 4.86 KB

workspace-setup-playbook.md

File metadata and controls

90 lines (59 loc) · 4.86 KB
description
Developer Environment Setup - Playbook

Workspace Setup - Playbook

Software Prerequisites

Optional software

Other tools used

Source Code references

Open Terminal and clone source code git clone https://github.com/Sunbird-Saral/Project-Saral.git.

For latest repo refer source-code-repository.md

Change Directory to Project-Saral/ folder and switch to release tag as per release notes. git checkout tags/<tag_name>

$FRONTEND_FOLDER = Project-Saral/v1.0/frontend

$BACKEND_FOLDER = Project-Saral/v1.0/backend

Frontend Setup

  • Setting up the React Native development environment Note: Choose React Native CLI Quick Start tab for setup instructions.
  • Download NDK 20.0.5594570 and extract archive to %ANDROID_HOME%\ndk folder.
  • In Android Studio, navigate to File\Project Structure\SDK Location and set Android NDK location to %ANDROID_HOME%\ndk\android-ndk-r20 (extracted in the last step).
  • Register on Google Firebase, add the Saral project on the firebase dashboard and download the corresponding google-services.json.
  • Place downloaded google-services.json under $FRONTEND_FOLDER/SaralApp/android/app folder.
  • Once Vysor and AVD are configured as per the instructions, follow the below steps to bring up the application.
  • Open a terminal in $FRONTEND_FOLDER/SaralApp and run npm i the command.
  • cd android && ./gradlew clean && cd..
  • npx react-native run-android
  • Make sure backend BASE_URL is configured in $FRONTEND_FOLDER/SaralApp/src/configs/config.js file.
  • Successful frontend deployment should show Saral OCR login screen on AVD or USB connected Android device.

Backend Setup

  • Install node and MongoDB in your local machine.
  • After taking a pull of project from git, Install npm packages by running npm i from $BACKEND_FOLDER.
  • Create a subfolder inside the backend folder name it as configuration.
  • Now create a file in config\dev.env and paste the below commands

PORT=3000

MONGODB_URL=mongodb://localhost:27017/saraldata_dev

JWT_SECRET=SARALDATA_NODE

  • Run npm run dev command from a terminal in $BACKEND_FOLDER.
  • Successful backend local deployment should show Server is up on port 3000

Backend DevOps

Dockerfile is available under $BACKEND_FOLDER folder.

Build docker image using docker build . -t saral-backend:1.0-latest the command from $BACKEND_FOLDER folder in a Terminal.

Docker swarm stack reference file available at $BACKEND_FOLDER/saralbackend-stack.yml

Docker-compose reference file available at $BACKEND_FOLDER/docker-compose.yml

Backend Data Load

  • Make sure the backend server is running

  • Command to delete/clean existing data:

    node ./data/import-data.js --delete

  • Command to load data from data files in ./backend/data folder.

    node ./data/import-data.js --import

Useful Developer Tools

https://www.npmjs.com/package/react-devtools Note: For the current version of Saral execute npm i -g react-devtools@"<4.11.0"