Skip to content

Full-stack application using Java, Spring Boot, Thymeleaf, HTML5, CSS, JavaScript, Bootstrap, and H2 Database Engine (In-memory), deployed using AWS EC2

Notifications You must be signed in to change notification settings

gompasandeep/BoardgameListingWebApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BoardgameListingWebApp

Click HERE to try the app!

Description

Board Game Database Full-Stack Web Application. This web application displays lists of board games and their reviews. While anyone can view the board game lists and reviews, they are required to log in to add/ edit the board games and their reviews. The 'users' have the authority to add board games to the list and add reviews, and the 'managers' have the authority to edit/ delete the reviews on top of the authorities of users.

Technologies

  • Java
  • Spring Boot
  • Amazon Web Services(AWS) EC2
  • Thymeleaf
  • Thymeleaf Fragments
  • HTML5
  • CSS
  • JavaScript
  • Spring MVC
  • JDBC
  • H2 Database Engine (In-memory)
  • JUnit test framework
  • Spring Security
  • Twitter Bootstrap
  • Maven

Features

  • Full-Stack Application
  • UI components created with Thymeleaf and styled with Twitter Bootstrap
  • Authentication and authorization using Spring Security
    • Authentication by allowing the users to authenticate with a username and password
    • Authorization by granting different permissions based on the roles (non-members, users, and managers)
  • Different roles (non-members, users, and managers) with varying levels of permissions
    • Non-members only can see the boardgame lists and reviews
    • Users can add board games and write reviews
    • Managers can edit and delete the reviews
  • Deployed the application on AWS EC2
  • JUnit test framework for unit testing
  • Spring MVC best practices to segregate views, controllers, and database packages
  • JDBC for database connectivity and interaction
  • CRUD (Create, Read, Update, Delete) operations for managing data in the database
  • Schema.sql file to customize the schema and input initial data
  • Thymeleaf Fragments to reduce redundancy of repeating HTML elements (head, footer, navigation)

How to Run

  1. Clone the repository
  2. Open the project in your IDE of choice
  3. Run the application
  4. To use initial user data, use the following credentials.
  • username: bugs | password: bunny (user role)
  • username: daffy | password: duck (manager role)
  1. You can also sign-up as a new user and customize your role to play with the application! 😊

About

Full-stack application using Java, Spring Boot, Thymeleaf, HTML5, CSS, JavaScript, Bootstrap, and H2 Database Engine (In-memory), deployed using AWS EC2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published