Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.
/ Harmoni Public archive

Website for organizing and managing events. Made with React and Node

Notifications You must be signed in to change notification settings

Tollii/Harmoni

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Harmoni

Short description

Harmoni is an event organization page made to make the task of managing events, artists, riders, and volunteers, easy for both artists and event organizers. The concept was brought forward by students employed by local student bars who had a hard time keeping track of their own events, artists and requested equipment.

Node, Express and Sequelize makes up the middleware that facilitates communication between the MySQL database and the client. The client application uses React with TypeScript and Google's Material-UI design.

Group 10

  • Andreas Tolnes
  • Zaim Ul-Abrar Imran
  • Nikolai Roede Dokken
  • Ian-Angelo Roman Evangelista
  • Kristoffer Vanebo
  • Sara Mohammadi
  • Jon Åby Bergquist
  • Mikael Nervik Eidsvaag
  • Kasper Vedal Gundersen
  • Shahed Saeed Abbas

Installation

1. Go to frontend and backend folders. Install dependencies with 'npm i'
2. In the backend folder, add a .env file with the following entries:
    DATABASE_USERNAME = <YOUR_MYSQL_DATABASE_USERNAME>
    DATABASE_PASSWORD=<YOUR_MYSQL_DATABASE_PASSWORD>
    DATABASE_DATABASE=<YOUR_MYSQL_DATABASE_DATABASE>
    DATABASE_HOST=<YOUR_MYSQL_DATABASE_HOST>
    
    //Tokens
    TOKEN_SECRET=<YOUR_TOKEN_SEED>
    
    //Email
    EMAIL_MAIL=<YOUR_GMAIL_CLIENT>
    EMAIL_PASSWORD= <YOUR_GMAIL_PASSWORD>
    //Client address
    FRONTEND_HOST=<YOUR_CLIENT_IP>

3. In the backend folder, add a .env file with the following entries:
    REACT_APP_API_URL= <YOUR_BACKEND_IP>
    REACT_APP_GOOGLE_API_KEY= <YOUR_GOOGLEMAPS_API_KEY>

4. Migrate DB with sequelize db:migrate
5. To launch the client, use 'npm start' in the frontend folder
6. To launch the backend, use 'npm start' in the backend folder

Screenshots:

<Main page

Login screen

Event list

Profile screen

Create event page

Event page