Skip to content
This repository has been archived by the owner on May 23, 2023. It is now read-only.

zimmerman-team/VIRA

Repository files navigation

VIRA

CircleCI

What VIRA?

This tool allows you to easily generate reports on the basis of projects that have been co-funded by your foundation. After signing in, access is granted to project information and the progress can be reported. These reports allow your foundation to monitor the effectiveness of contributions more effectively.

About the project


Requirements

For development, you will only need Node.js and a node global package, Yarn, installed in your environement.

Node

  • Node installation on Windows

    Just go on official Node.js website and download the installer. Also, be sure to have git available in your PATH, npm might need it (You can find git here).

  • Node installation on Ubuntu

    You can install nodejs and npm easily with apt install, just run the following commands.

    $ sudo apt install nodejs
    $ sudo apt install npm
    
  • Other Operating Systems

    You can find more information about the installation on the official Node.js website and the official NPM website.

If the installation was successful, you should be able to run the following command.

$ node --version
vX.X.X

$ npm --version
X.X.X

If you need to update npm, you can make it using npm! Cool right? After running the following command, just open again the command line and be happy.

$ npm install npm -g

Yarn installation

After installing node, this project will need yarn too, so just run the following command.

  $ npm install -g yarn

MongoDB installation

You can follow the official documentation to install MongoDB in your preferred OS. Just make sure that you install version 4.x.x of MongoDB


Install

$ git clone https://github.com/zimmerman-team/VIRA.git
$ cd VIRA
$ yarn install

Configure app

Create an .env file in the root directory and add the following:

REACT_APP_AE_API_CLIENT_ID=<Auth0 Authentication Extension API client id>
REACT_APP_AUTH_DOMAIN=<Auth0 tenant custom domain>
REACT_APP_AE_API_CLIENT_SECRET=<Auth0 Authentication Extension API client secret>
REACT_APP_AE_API_URL=<Auth0 Authentication Extension API URL>

REACT_APP_POSTMARK_CLIENT_ID=<Postmark client id>
REACT_APP_POSTMARK_TEMPLATE_WELCOME=<Postmark welcome email template id>
REACT_APP_POSTMARK_TEMPLATE_RESET=<Postmark reset password template id>
REACT_APP_POSTMARK_TEMPLATE_NOTIFICATION=<Postmark project notification email template id>

REACT_APP_PROJECT_URL=<http://localhost:3000 for running locally | https://something.com for deployed runs>
REACT_APP_BACKEND_PORT=4200
REACT_APP_BACKEND_URL=http://localhost:4200
REACT_APP_MONGO_DB_URL=mongodb://localhost:27017/vira
REACT_APP_DATA_FILE=<name of the data file in server/scripts, must be a csv file>

Parse data

In order to parse a new data file, you need to name the file as production.csv and place it in the server/scripts directory (if there is one already, then replace it).

$ yarn import-data

Create and invite users based on data

After parsing a new data file, you can run this command in order to invite new users based on the parsed data.

$ yarn check-invite-new-users

Running the project

Run project locally.

$ yarn start

Run tests

Test project functionality locally.

$ yarn start-test-api