Skip to content

Setup Guide

CristiPV edited this page Nov 14, 2021 · 8 revisions

WikiSetup Guide

Project Setup

This file will explain the process of setting up the tools needed for using the project and for creating other projects like this.

NOTE: In case you use PowerShell and cannot execute any of these commands, you might have to set your terminal's execution policy to RemoteSigned or Unrestricted, as described here, by using this command: Set-ExecutionPolicy Unrestricted -Scope LocalMachine.

Prerequisites

First, a few things are needed in order to work with the project:

Git

  • Git is used for version control, it can be downloaded here.

JDK

  • We are developing in JDK 11, so we need to download any JDK > 11 ( OpenJDK can be downloaded from here).

Node

It is recommended that Node is installed through NVM ( Node Version Manager ).

In case Node is already installed on your machine, you have to uninstall it by going to Apps & Features -> Node -> Uninstall. Additionally, you have to remove any leftover files in AppData/Roaming/ and AppData/Local. The directories you need to remove are npm and npm cache.


  • NVM is used for easily updating and managing the versions of Node, which is critical for properly working with NX.

We are developing using the current LTS ( Long Term Support ) version.

NVM can be found here ( or here, if you are using Linux/Mac )

  • Now, for installing Node you need to open your terminal of choice as Administrator
    • Run nvm install 16.13.0 ( Current Node LTS )
    • Run nvm use 16.13.0

NPM

  • NPM ( Node Package Manager ) is used for managing project dependencies and other packages. It comes with the installation of Node, but it is good to make sure you are using the latest version.
    • Run npm i -g npm@latest

Git CZ

  • Git CZ is used as a wrapper to git commit for making better structured commits
    • Run npm i -g git-cz

NX

  • NX is the monorepo management tool that we use
    • Run npm i -g nx

Installation

The project may rely on some environment variables in order to work

  1. First, clone the repo
  • Run git clone https://github.com/scoala-online/main

Or use any preferred software ( such as GitKraken ) in order to do this

  1. Run npm install

This will install all the dependencies of the project

  1. Set up your environment variables.

Create your .env files for our applications.

Ask this guy for the values that you need. For more information, visit the Environments Wiki page.

  1. The apps now can be ran ( served ) by running these commands:
nx serve java-api
nx serve e-learning-app

Getting Started

Conventions

  1. General

  1. REST API

  1. E-Learning App

Endpoints

Custom Components

Themes

Packages Used

  1. Global

  1. REST API

  1. E-Learning App

Clone this wiki locally