Skip to content

Latest commit

 

History

History
62 lines (38 loc) · 3.15 KB

README.md

File metadata and controls

62 lines (38 loc) · 3.15 KB

Project Overview

Everest is an ePortfolio system aimed at students and professionals looking for a platform to show off and reflect on their achievements. It's an app built using React, Redux and Firebase that supports user sign-in, file upload, template switching and profile sharing.

Table of contents

Demo

Link to the deployed product can be found here.

Link to an example project created using Everest can be found here.

Documentation

An architecture diagram can be found here

Back-end functions documentation can be found here

Data model documentation used in the in app can be found here

A deployment architecture diagram can be found here

A style guide for the current templates can be found here

System Requirements

The app uses Node 10+, Firebase, React and Redux as it's main dependancies, these must be installed on the machine before the app can be run.

Installation Guide

Deployment

As indicated in the deployment architecture diagram the application is automatically deployed through Travis CI to a firebase project used for the development of the demo.

In order to deploy the project to a custom firebase project, a new firebase project must be set up with the app added in the firebase console.

Several files within the app will need to be updated with the new project's information, namely:

  • Front-End/everest/src/Firebase.js
  • .firebaserc

Next, ensure firebase-tools are installed and configured using npm install firebase-tools -g and firebase login

Following this, deployment can be made to firebase by running firebase deploy in the root directory.

This is the documention for how to made a deployment this way using the Firebase CLI.

Local Testing

Installing dependancies requires npm to be installed on the local machine.

Running npm install in the root directory will install all dependancies for the backend and front end application for local testing.

Running npm start in the root directory will install all dependancies and start a local emulator for testing purposes.

Running npm test will run a suite of tests on the back-end firestore functions using firebase emulators, a valid google cloud (Firebase) service account key will need to be present in the /functions directory under the title serviceAccountKey.json for the tests to run successfully.

Further Project Details

Please take a look at the wiki for more details about architecture, deployment, features and requirements.