Likeat is a web application designed to allow users to manage, evaluate, and review restaurants. Built with a Java Spring Boot backend and a React-based frontend, the platform offers a smooth and responsive user experience. Restaurant owners can manage their listings, customers can leave reviews, and admins oversee all operations. A fair ranking algorithm ensures unbiased restaurant ratings.
- Restaurant Management: Restaurant owners can register, edit, and delete their restaurant listings.
- User Roles: Supports three types of users: restaurant owners, customers, and admins.
- Restaurant Reviews: Customers can leave reviews and rate restaurants.
- Fair Ranking Algorithm: A custom algorithm ensures that restaurant rankings are unbiased and fair, providing an accurate reflection of user reviews.
- Admin Control: Admins have full control over the system, including user management and restaurant approval.
- Responsive Frontend: The frontend is designed with React to ensure a responsive, user-friendly experience.
- Java 11 or higher
- Maven 3.6.0+
- A relational database (MySQL, PostgreSQL, etc.)
- Node.js 14.x or higher
- npm 6.x or higher
-
Clone this repository to your local machine:
git clone https://github.com/aggsakellariou/Secure-Likeat.git
-
Navigate to the
backend-likeatdirectory:cd Likeat/backend-likeat -
Build the project using Maven:
mvn clean install
-
Run the application:
mvn spring-boot:run
-
Navigate to the
frontend-likeatdirectory:cd Likeat/frontend-likeat -
Install the necessary dependencies:
npm install
-
Start the React development server:
npm start
- Access the backend API by navigating to
http://localhost:8080once the Spring Boot application is running. - Access the frontend by navigating to
http://localhost:3000. - Admin users can log in to manage restaurants, reviews, and users.
- Restaurant owners can register their restaurants and manage their profiles.
- Customers can browse restaurants, add reviews, and view others' feedback.