Skip to content

v0.9

Pre-release
Pre-release

Choose a tag to compare

@bugradursun bugradursun released this 18 May 09:03

Swe573 Spring 2025 - Final Project
Report - Buğra Dursun

Backend:

  • Spring Boot

  • JPA (Java Persistence API)

  • PostgreSQL

  • Docker

  • REST APIs

Frontend:

  • React

  • TypeScript

  • HTML/CSS

  • Docker

Database:

  • PostgreSQL

3. Design Documents

  • Backend Architecture: Spring Boot, REST APIs for CRUD operations, and JPA for database interactions.

  • Frontend Architecture: Component-based design in React with hooks and state management for UI interactions.

  • Database Schema: PostgreSQL with relational tables for users, boards, nodes, and edges.

4. Status of the Project

Feature | Status -- | -- User Registration and Authentication | Completed Board Creation | Completed Wikidata layer in Board Creation | Completed Node Creation | Completed Node Connection (Edges) | Completed Node Details and Collaboration | Completed Node Editing and Deletion | Completed Board and Node Visualization | Completed Dockerized Backend, Frontend, and DB | Completed Unit Tests | Not Completed Wikidata in Node layer | Not Completed

5. Status of Deployment

  • URL: Currently hosted on AWS ec2 instance. http://3.67.171.28:3000

  • Dockerized: Yes, both frontend and backend are dockerized with PostgreSQL as the database.

6. Full Installation Instructions

  1. Clone the repository:

git clone https://github.com/bugradursun/SWE573-Project.git

  1. Navigate to the backend directory and run:

git checkout backend

cd backend

./mvnw clean install

  1. Navigate to the frontend directory and run:

git checkout frontend

cd ../frontend

npm install

  1. Build and run Docker containers:

docker-compose up --build

7. User Manual

Signing Up and Logging In:

  • Visit the main URL and click on the register button to create a new account.

  • Use the login form to access your account after registration.

Creating a Board:

  • Click on the "Create Board" button to start a new board.

  • Choose entities from Wikidata to populate the board.

Creating and Connecting Nodes:

  • Click on an empty space to create a node.

  • Click on a node to connect it to other nodes with labeled edges.

Editing and Deleting Nodes:

  • Click on an existing node to edit or delete it.


Viewing Node Details:

  • Click on an edge to view its information.

Viewing Board Details:

  • Click on a board to view its nodes, edges, and collaboration details.

8. Test Results

Unit Tests:

  • Not completed

User Tests:

  • Functional testing performed for user registration, board creation, node management, and edge creation.


Backend: Spring Boot JPA (Java Persistence API) PostgreSQL Docker REST APIs Frontend: React TypeScript HTML/CSS Docker Database: PostgreSQL 3. Design Documents Backend Architecture: Spring Boot, REST APIs for CRUD operations, and JPA for database interactions. Frontend Architecture: Component-based design in React with hooks and state management for UI interactions. Database Schema: PostgreSQL with relational tables for users, boards, nodes, and edges. 4. Status of the Project Feature Status User Registration and Authentication Completed Board Creation Completed Wikidata layer in Board Creation Completed Node Creation Completed Node Connection (Edges) Completed Node Details and Collaboration Completed Node Editing and Deletion Completed Board and Node Visualization Completed Dockerized Backend, Frontend, and DB Completed

Unit Tests
Not Completed
Wikidata in Node layer
Not Completed

  1. Status of Deployment
    URL: Currently hosted on AWS ec2 instance. http://3.67.171.28:3000/
    Dockerized: Yes, both frontend and backend are dockerized with PostgreSQL as the database.
  2. Full Installation Instructions
    Clone the repository:
    git clone https://github.com/bugradursun/SWE573-Project.git
    Navigate to the backend directory and run:
    git checkout backend
    cd backend
    ./mvnw clean install
    Navigate to the frontend directory and run:
    git checkout frontend
    cd ../frontend
    npm install
    Build and run Docker containers:
    docker-compose up --build
  3. User Manual
    Signing Up and Logging In:
    Visit the main URL and click on the register button to create a new account.
    Use the login form to access your account after registration.
    Creating a Board:
    Click on the "Create Board" button to start a new board.
    Choose entities from Wikidata to populate the board.
    Creating and Connecting Nodes:
    Click on an empty space to create a node.
    Click on a node to connect it to other nodes with labeled edges.
    Editing and Deleting Nodes:
    Click on an existing node to edit or delete it.

Viewing Node Details:
Click on an edge to view its information.
Viewing Board Details:
Click on a board to view its nodes, edges, and collaboration details.
8. Test Results
Unit Tests:
Not completed
User Tests:
Functional testing perform
ed for user registration, board creation, node management, and edge creation.

Swe573 Spring 2025- Final Project Report - Buğra Dursun.pdf