Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A robust and scalable back-end application designed for managing real estate properties, agents, and their interactions. Built with Java, Spring Boot, and MySQL, this project incorporates modern technologies to deliver a seamless experience for administrators and users.

License

NotificationsYou must be signed in to change notification settings

stephenombuya/RealEstate-Backend-Web-Application

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A robust and scalable back-end application designed for managing real estate properties, agents, and their interactions. Built with Java, Spring Boot, and MySQL, this project incorporates modern technologies to deliver a seamless experience for administrators and users.

Real EstateJavaJWTDockerSpring BootSpring Data JPASpring ValidationSpring SecuritySwaggerPrometheusSpring MailResilience4jMySQLAWS

Table of Contents

  • Features
  • Technologies Used
  • Getting Started
  • Configuration
  • Testing
  • Contributing
  • License

Features

  • Property Management: Add, update, delete, and view property listings.
  • Agent Management: Manage agents including their bios, contact details, and licenses.
  • JWT Authentication: Secure endpoints with JSON Web Tokens.
  • Swagger API Documentation: Interactive API exploration and testing.
  • Monitoring: Built-in application metrics using Prometheus.
  • Rate Limiting: Protect endpoints with Resilience4j.
  • Email Notifications: Notify agents or clients with email integration.

Technologies Used

  • Java 17
  • Spring Boot 3
  • Spring Data JPA
  • Spring Security
  • Spring Validation
  • Spring Mail
  • MySQL for database
  • JWT for authentication
  • Swagger OpenAPI for API documentation
  • Prometheus for monitoring
  • Resilience4j for rate limiting

Getting Started

  1. Prerequisites
  • Java 17 or later
  • Maven (for dependency management)
  • MySQL (Database)
  • Postman (for API testing)
  1. Clone the Repository
git clone https://github.com/stephenombuya/RealEstate-Backend-Web-Application/tree/maincd real-estate-backend
  1. Install Dependencies
mvn clean install
  1. Run the Application
  • Update the application.properties file with your database credentials and configuration.
  • Start the application:
mvn spring-boot:run

Configuration

Update the following in src/main/resources/application.properties:

# Database Configurationspring.datasource.url=jdbc:mysql://localhost:3306/db_namespring.datasource.username=your_usernamespring.datasource.password=your_password# JWT Configurationjwt.secret=your-secret-keyjwt.expiration=86400000# Email Configurationspring.mail.host=smtp.gmail.comspring.mail.port=587spring.mail.username=your-emailspring.mail.password=your-email-passwordspring.mail.properties.mail.smtp.auth=truespring.mail.properties.mail.smtp.starttls.enable=true

Testing

  • Run the test suite with:
mvn test
  • Testing Features
    • Unit and integration tests for services and controllers.
    • Authentication and authorization tests.
    • Database validation tests.

Contributing

We welcome contributions! Follow these steps to contribute:

  1. Fork the repository.
  2. Create a feature branch:
git checkout -b feature-name
  1. Commit your changes:
git commit -m "Add new feature"
  1. Push to your branch:
git push origin feature-name
  1. Open a pull request.

License

This project is licensed under the GNU License. See theLICENSE file for details.

About

A robust and scalable back-end application designed for managing real estate properties, agents, and their interactions. Built with Java, Spring Boot, and MySQL, this project incorporates modern technologies to deliver a seamless experience for administrators and users.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp