Deploy Your Own Pariksha
1. Overview
This doc helps you to setup a Samiksha app on your own.
The Pariksha product can be used for managing the following activities of the State Education Department:
- Record student wise grades for different subjects across different assessments
- Record class wise aggregate marks for different subjects across different assessments
- Edit any previous student or class wise grades
- View past assessments of students and classes
- Real time tracking of student assessment data update by teachers
- Monitor student assessments trends
1.1 Disclaimer
- Note that this project in alpha and the APIs can change without notice. Please use it at your discretion. Though we use it in production, but the we are yet to close the API specification
- Note that some of the links may become live in the coming days. Please contact us in case of any queries or if you need to set this up up urgently.
2. Setting up the backend
Backend setup requires you to setup four servers, the steps for which are as follows.
FusionAuth
1. Setting up- Setting up Fusionauth server - Please use the official guide to install fusionauth servers.
- Adding users to the system - Samwad has no user registraction so, depending on the backend/language that you prefer, users can be added in a variety of ways. We recommend using this API.
ODK Aggregate.
2. Setting up- Installation
- Add these forms to ODK. Note: You need to upload the
.xml
files and the.xls
file are for form building only. You will need to add the relevant csv assets to the forms as well.
3. Setting up form authorizations
The next step is setting up which forms the users will see when they open the app. Setting the following remote config for the app on Firebase with all
as the key name will ensure they see these 5 forms.
4. Setting up backend connectors and servers.
All this can be done using the docker-compose.yml
file which can be found here. What it essentially does is installs the following things. [Note: You are free to change the docker file here to increase the capacity of the servers or choose a different deployment strategy depending on the scale.]
- Setting up production PSQL database
- Setting up production Redis cache
- Setting up the Memcached server
- Setting up the OTP server
- Setting up the relay server
- Setting up the ODK ETL Connector
3. Setting up the Mobile App
1. Adding the form management module and configuring forms
This module will allow us to download and show the forms configured in the Firebase above.
2. Setting up the student list download module
Downloads the list of students for a particular school. Please use th following doc to set this up.
3. Setting up the cascading dropdown module
This will allow the app to render the cascading dropdown and fill the details automatically to the form.
- Adding the gzip file of locations to raw files directory
- Linking the gzip file to cascading dropdown module
4. Setting up the Track SMS module.
All SMSes that are sent through the backend have one of the following responses
- Pending
- Failed to send
- Failed to deliver to user
- Still under processing
- Delivered These responses are then shown in the tracking module to see which parent got the message and if not, which stage it is in. To configure the track SMS module please use this doc
5. Adding the login screen
6. Setting up profile screen
- Setting up the backend server
- Testing the OTP and reset password.
7. Setting up the about us screen
The about us screen is a part of the ancillaryscreens module. Please see this doc to get started.
4. Need more help??
Some of the packages will be added in the coming weeks. Please contact us if you need urgent support in deploying this.