Forum

Forum

This is a forum web application built with Java Spring Boot, SQL, and Grafana Prometheus for monitoring and analytics. The frontend is developed using Svelte, tailwindcss, and TypeScript.

GHSE-Forum

A Full Stack Forum for the GHSE built with Spring Boot and SvelteKit

This GHSE Forum allows students to create posts and comments. It consists of a Spring Boot backend providing a REST API for the SvelteKit frontend. Data is stored in a SQL database, and the Forum's performance can be monitored via a Grafana dashboard.

Showcase

https://github.com/FinnPL/Forum/assets/108749108/8b46fe5c-b8a0-49eb-9e29-9ced77de35ce

Installation

Clone Project

git clone https://github.com/FinnPL/Forum

Make the install script executable

cd Forum/
chmod +x install.sh

Run the script

sudo ./install.sh <DB_PASSWORD> <DB_NAME> <GF_SECURITY_ADMIN_PASSWORD>

Connection

  • The Frontend is located at localhost. (Port 80)
  • Spring server's REST API at localhost:8080
  • Grafana at localhost:3000. Use the default user admin and your chosen password from the install script.

NOTE: If you are using an cloud provider you might need to disable the firewall for these ports and replace localhost with the ip of your server.

Contributing

If you find any bugs or have any suggestions, please open an issue.

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Feel free to take a look at the Documentation in Github Wiki

Contributing Guide

  • Fork the project
  • Create your feature branch (git checkout -b feature/fooBar)
  • Make your changes
  • Test and Build
  • Commit your changes (git commit -m 'Add some fooBar')
  • Push to the branch (git push origin feature/fooBar)
  • Create a new Pull Request

Building

Using Docker Desktop:

https://user-images.githubusercontent.com/77006988/230790915-b05777d8-1a56-4c6c-ac6d-e52b293728f7.mp4

Whole project:

docker-compose up --build

Backend:

./gradlew build

Frontend:

cd board/
npm install
npm run build

Top categories

Loading Svelte Themes