Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Resume Builder API ## Description Resume Builder API is a backend service built using Spring Boot. It provides functionalities for user authentication, resume creation, email notifications, payment processing, and more. The application uses MongoDB as the database and integrates with external services like Cloudinary for file uploads and Razorpay for payment processing. ## Features - User Authentication (JWT-based) - Resume creation and management - Email notifications - Payment processing - Cloudinary integration for file uploads - Exception handling with a global exception handler ## Tech Stack - **Java**: Programming language - **Spring Boot**: Backend framework - Spring Boot Starter Web - Spring Boot Starter Data MongoDB - Spring Boot Starter Validation - Spring Boot Starter Mail - **MongoDB**: NoSQL database - **JWT**: For authentication - **Cloudinary**: For file uploads - **Razorpay**: For payment processing - **Lombok**: To reduce boilerplate code ## Project Structure ``` src/ main/ java/ in/ bushansirgur/ resumebuilderapi/ config/ # Configuration files controller/ # REST controllers document/ # MongoDB documents dto/ # Data Transfer Objects exception/ # Exception handling repository/ # MongoDB repositories security/ # Security configurations service/ # Service layer util/ # Utility classes resources/ application.properties # Application configuration static/ # Static resources templates/ # Email templates ``` ## Configuration ### MongoDB Update the `application.properties` file with your MongoDB URI: ```properties spring.data.mongodb.uri=mongodb://localhost:27017/resumebuilder_v2 ``` ### Email Configure the email settings in `application.properties`: ```properties spring.mail.host=smtp-relay.brevo.com spring.mail.port=587 spring.mail.username=your-email@example.com spring.mail.password=your-email-password ``` ### Cloudinary Add your Cloudinary credentials: ```properties cloudinary.cloud-name=your-cloud-name cloudinary.api-key=your-api-key cloudinary.api-secret=your-api-secret ``` ### JWT Set a secure JWT secret key: ```properties jwt.secret=your-secure-jwt-secret-key jwt.expiration=604800000 ``` ### Razorpay Add Razorpay credentials: ```properties razorpay.key.id=your-razorpay-key-id razorpay.key.secret=your-razorpay-key-secret ``` ## Running the Application 1. Clone the repository: ```bash git clone ``` 2. Navigate to the project directory: ```bash cd resumebuilderapi ``` 3. Build the project using Maven: ```bash ./mvnw clean install ``` 4. Run the application: ```bash ./mvnw spring-boot:run ``` ## Endpoints ### Authentication - `POST /auth/register`: Register a new user - `POST /auth/login`: Login and receive a JWT token ### Resume - `GET /resume`: Get all resumes - `POST /resume`: Create a new resume ### Payments - `POST /payment`: Process a payment ### Email - `POST /email/send`: Send an email ## License This project is licensed under the MIT License.# Secure-Resume-Builder-API

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages