Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shaharashe/scam-reporting-app
A web application for reporting and sharing scam information to enhance community awareness and prevention.
https://github.com/shaharashe/scam-reporting-app
full-stack html java project scam-report spring thymeleaf web website
Last synced: 29 days ago
JSON representation
A web application for reporting and sharing scam information to enhance community awareness and prevention.
- Host: GitHub
- URL: https://github.com/shaharashe/scam-reporting-app
- Owner: ShaharAshe
- Created: 2024-09-10T06:21:56.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-09-10T06:24:02.000Z (4 months ago)
- Last Synced: 2024-12-19T04:07:47.220Z (29 days ago)
- Topics: full-stack, html, java, project, scam-report, spring, thymeleaf, web, website
- Language: Java
- Homepage:
- Size: 299 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
---
# Check4Scam - Share scam information with others ππ¬
## Overview
Check4Scam is a web application that allows users to share scam information with others. Users can report a scam, view reported scams, so we can prevent scams together. π«π΅οΈββοΈ
# About As
1. - π Name: Shahar Asher
- π« Email: [[email protected]](mailto:[email protected])
---
2. - π Name: Yaniv Gabay
- π« Email: [[email protected]](mailto:[email protected])
---## Table of Contents
- [Description](#description)
- [Features](#features)
- [Technologies Used](#technologies-used)
- [Configuration Files](#configuration-files)
- [Controllers](#controllers)
- [Services](#services)
- [Dto - Data Transfer Object](#dto---data-transfer-object)
- [Repositories](#repositories)
- [Html Files](#html-files)## Description
This project is a web-based application that allows users to report and view scams. It leverages Spring Boot for the backend, Spring Security for authentication, and Thymeleaf for server-side rendering. The application provides functionalities such as user registration, scam reporting, and administrative controls. ππ‘οΈ
## Features
- **User Authentication:** Login and registration functionality using custom user details service. π
- **Scam Reporting:** Users can report scams, view scams they've reported, and view all scams in a feed. πποΈ
- **Role-Based Access Control:** Differentiates access between regular users and administrators. π§βπΌπ¨βπ»
- **Real-Time Updates:** Utilizes WebSocket for real-time updates of scam reports. β±οΈπ¬
- **Data Validation:** Implements validation for user and scam report data submission. β## Technologies Used
- Spring Boot π±
- Spring Security π‘οΈ
- Thymeleaf π
- Bootstrap π¨
- JPA (Java Persistence API) ποΈ
- WebSocket π
- Xaamp for apache and mysql π¬
- Maven βοΈ## Configuration Files
- **MessageConfig:** Configuration for message sources to support internationalization. π
- **PasswordConfig:** Sets up the password encoder for Spring Security. π
- **SecurityConfig:** Configures Spring Security for authentication and authorization. π‘οΈ
- **WebSocketConfig:** Sets up WebSocket message handling. π## Controllers
- **HomeController:** Manages routes for the home page and static content. π
- **RegistrationController:** Handles user registration functionalities. π
- **ScamReportController:** Manages all scam report related functionalities. π΅οΈββοΈ
- **WebController:** Manages routing for static pages. πΊοΈ
- **WebSocketController:** Handles WebSocket message handling. π## Services
- **CustomUserDetailsService:** Implements the UserDetailsService interface for custom user authentication. π
- **ScamReportService:** Manages scam report data and operations. π
- **UserService:** Manages user data and operations. π€
## Dto - Data Transfer Object- **RegistrationForm:** Represents the data transfer object for user registration. π
- **TestRegistrationForm:** Represents the data transfer object for user registration testing (no validation). π§ͺ## Repositories
- **ScamReportRepository:** Handles database operations for scam reports. ποΈ
- **UserRepository:** Handles database operations for users. π€## Models
- **ScamReport:** Represents a scam report entity. π΅οΈββοΈ
- **User:** Represents a user entity. π€## Html Files
```plaintext
βββ 403.html
βββ common.html
βββ error.html
βββ index.html
βββ login.html
βββ signup.html
βββ success.html
β
βββ admin
β βββ admin.html
β
βββ scam-reports
β βββ common.html
β βββ create.html
β βββ feed.html
β βββ likedPosts.html
β βββ manage.html
β
βββ user
```