Skip to content
/ Crowdy Public

We will build a user-friendly web-app "crowdedness meter" to help students meet safely in Ghent hotspots. Our ultimate goal is to offer students the opportunity to reclaim the ownership of their reputation, by demonstrating that it is possible to have a social life while respecting government measures. For students, by students.

Notifications You must be signed in to change notification settings

osoc21/Crowdy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crowdy Logo

CROWDY

We build a user-friendly web-app "crowdedness meter" to help students meet safely in Ghent hotspots. Our ultimate goal is to offer students the opportunity to reclaim the ownership of their reputation, by demonstrating that it is possible to have a social life while respecting government measures. For students, by students.

The Project

GitHub Page

Authors

Features

  • List of hotspots

  • Hotspots info page (amenities, crowdedness, location)

  • Map of hotspots

  • QR code scanner

  • Vote system

  • Account system

  • Profile page

    Color Reference

Color Hex
Indigo #4d4bc0 #4d4bc0
Aquamarine #4dfff0 #4dfff0
Rajah #f8bb84 #f8bb84
Electric Violet #b02aff #b02aff

Screenshots

Crowdy Logo Crowdy Logo Crowdy Logo

Deployment (CLIENT)

To deploy this project run

  npm run build

Environment Variables (CLIENT)

To run this project, you will need to add the following environment variables to your .env.local file

Local env

The base URL of the QR-codes that the scanner will receive (to check if the scanned code is from Crowdy):

REACT_APP_BASE_URL=https://crowdy-osoc.herokuapp.com/

The URL of the backend server:

REACT_APP_SERVER_BACKEND=https://crowdy-server-backend.herokuapp.com/graphql

Your Access Token of the Mapbox-service to display the map:

REACT_APP_MAPBOX_ACCESS_TOKEN={YOUR_ACCESS_TOKEN}

Your Access Token of the Mapbox-style to add a visual look:

REACT_APP_MAPBOX_ACCESS_TOKEN_STYLE={YOUR_ACCESS_TOKEN}

You can acquire access tokens for Mapbox here.

Run Locally (CLIENT)

Clone the project

  git clone https://github.com/osoc21/Crowdy.git

Go to the project directory

  cd client

Install dependencies

  npm install

Start the client

  npm run start

API Reference

GraphQL Link

  POST localhost:4000/graphql

The port depends on the environement the app is using.

Deployment (SERVER)

To deploy this project run

  npm run start:prod

Environment Variables (SERVER)

To run this project, you will need to add the following environment variables to your .env file

Local env

NODE_ENV=development APP_PORT=4000 PORT=4000

Database

TYPEORM_TYPE=postgres TYPEORM_URL=postgres://postgres:[email protected]:5432/database_name TYPEORM_USERNAME=postgres TYPEORM_PASSWORD=password TYPEORM_NAME=database_name TYPEORM_PORT=5432 TYPEORM_HOST=127.0.0.1 TYPEORM_SSL = true TYPEORM_LOGGING=false TYPEORM_SYNCRONIZE=true TYPEORM_AUTO_LOAD_ENTITIES=true TYPEORM_DRIVER_EXTRA={ssl :{rejectUnauthorized: false}}

Json web token

JWT_SECRET=very_secret_string EXPIRES_IN=time(like 1h)

It's better if you create in the root directory .development.env and .production.env and place the environment variables respectively.

Run Locally (SERVER)

Clone the project

  git clone https://github.com/osoc21/Crowdy.git

Go to the project directory

  cd server

Install dependencies

  npm install

Start the server

  npm run start

Tech Stack

Client: React, React Router, React QR Reader, React Map GL

Server: NestJS, Express, GraphQL, TypeORM

About

We will build a user-friendly web-app "crowdedness meter" to help students meet safely in Ghent hotspots. Our ultimate goal is to offer students the opportunity to reclaim the ownership of their reputation, by demonstrating that it is possible to have a social life while respecting government measures. For students, by students.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published