diff --git a/backend/springboot.js b/backend/springboot.js
new file mode 100644
index 00000000..31f31fba
--- /dev/null
+++ b/backend/springboot.js
@@ -0,0 +1,373 @@
+# *****************************************************************************
+# SPRING BOOT CHEATSHEET
+# *****************************************************************************
+
+
+# 1. Use meaningful class and method names.
+# 2. Follow Java naming conventions (camelCase for variables/methods, PascalCase for classes).
+# 3. Document your REST controllers and service methods with @ApiOperation (Swagger).
+# 4. Use @Component, @Service, @Repository, @Controller annotations appropriately.
+# 5. Keep controllers thin - delegate business logic to services.
+# 6. Use DTOs for API requests/responses to separate concerns.
+# 7. Follow SOLID principles and dependency injection patterns.
+
+# TIP: Use SonarLint or CheckStyle for code quality analysis.
+
+
+# *****************************************************************************
+# PROJECT STRUCTURE > BEST PRACTICES
+# *****************************************************************************
+
+
+# Recommended package structure:
+# com.company.project
+# ├── ProjectApplication.java (main class)
+# ├── config/ # Configuration classes
+# ├── controller/ # REST controllers
+# ├── service/ # Business logic
+# ├── repository/ # Data access layer
+# ├── model/entity/ # JPA entities
+# ├── model/dto/ # Data Transfer Objects
+# ├── exception/ # Custom exceptions
+# ├── util/ # Utility classes
+# └── security/ # Security configuration
+
+
+# *****************************************************************************
+# ANNOTATIONS > ESSENTIAL SPRING BOOT ANNOTATIONS
+# *****************************************************************************
+
+
+@SpringBootApplication # Main application class (combines @Configuration, @EnableAutoConfiguration, @ComponentScan)
+@RestController # REST controller (combines @Controller + @ResponseBody)
+@Controller # MVC controller
+@Service # Service layer component
+@Repository # Data access layer component
+@Component # Generic Spring component
+@Configuration # Configuration class
+@Bean # Bean definition method
+@Autowired # Dependency injection
+@Value("${property}") # Inject property value
+@ConfigurationProperties # Bind properties to POJO
+@Profile("dev") # Profile-specific bean
+@Conditional # Conditional bean creation
+@EnableJpaRepositories # Enable JPA repositories
+@EnableWebSecurity # Enable Spring Security
+@EnableScheduling # Enable task scheduling
+@EnableAsync # Enable asynchronous processing
+
+
+# *****************************************************************************
+# REST API > CONTROLLER ANNOTATIONS
+# *****************************************************************************
+
+
+@RequestMapping("/api/v1") # Base path for controller
+@GetMapping("/users") # HTTP GET mapping
+@PostMapping("/users") # HTTP POST mapping
+@PutMapping("/users/{id}") # HTTP PUT mapping
+@DeleteMapping("/users/{id}") # HTTP DELETE mapping
+@PatchMapping("/users/{id}") # HTTP PATCH mapping
+@PathVariable # Extract path variable
+@RequestParam # Extract query parameter
+@RequestBody # Extract request body
+@ResponseStatus(HttpStatus.CREATED) # Set response status
+@Valid # Enable validation
+@CrossOrigin # Enable CORS
+
+
+# *****************************************************************************
+# JPA/HIBERNATE > ENTITY ANNOTATIONS
+# *****************************************************************************
+
+
+@Entity # JPA entity
+@Table(name = "users") # Specify table name
+@Id # Primary key
+@GeneratedValue(strategy = GenerationType.IDENTITY) # Auto-generated ID
+@Column(name = "email", unique = true, nullable = false) # Column mapping
+@OneToMany(mappedBy = "user", cascade = CascadeType.ALL) # One-to-many relationship
+@ManyToOne(fetch = FetchType.LAZY) # Many-to-one relationship
+@JoinColumn(name = "user_id") # Foreign key column
+@Temporal(TemporalType.TIMESTAMP) # Date/time mapping
+@Enumerated(EnumType.STRING) # Enum mapping
+@Transient # Ignore field in persistence
+@Version # Optimistic locking
+@CreationTimestamp # Auto-set creation time
+@UpdateTimestamp # Auto-set update time
+
+
+# *****************************************************************************
+# VALIDATION > BEAN VALIDATION ANNOTATIONS
+# *****************************************************************************
+
+
+@NotNull # Field cannot be null
+@NotEmpty # String/Collection cannot be empty
+@NotBlank # String cannot be blank
+@Size(min = 2, max = 30) # Size constraints
+@Min(18) # Minimum value
+@Max(120) # Maximum value
+@Email # Email validation
+@Pattern(regexp = "^[0-9]+$") # Regex pattern
+@Past # Date in the past
+@Future # Date in the future
+@Valid # Cascade validation
+
+
+# *****************************************************************************
+# SPRING DATA JPA > REPOSITORY METHODS
+# *****************************************************************************
+
+
+# Query method naming conventions:
+findBy + PropertyName # Find by property
+findByNameAndEmail(String name, String email) # Find by multiple properties
+findByAgeGreaterThan(int age) # Find by comparison
+findByNameContaining(String name) # Find by containing
+findByNameStartingWith(String prefix) # Find by starting with
+findByNameEndingWith(String suffix) # Find by ending with
+findByActiveTrue() # Find by boolean true
+findByCreatedDateBetween(Date start, Date end) # Find by date range
+
+# Custom queries:
+@Query("SELECT u FROM User u WHERE u.email = ?1")
+@Query(value = "SELECT * FROM users WHERE active = true", nativeQuery = true)
+@Modifying
+@Query("UPDATE User u SET u.active = false WHERE u.id = ?1")
+
+
+# *****************************************************************************
+# CONFIGURATION > APPLICATION PROPERTIES
+# *****************************************************************************
+
+
+# Server configuration
+server.port=8080
+server.servlet.context-path=/api
+
+# Database configuration (H2)
+spring.datasource.url=jdbc:h2:mem:testdb
+spring.datasource.driver-class-name=org.h2.Driver
+spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
+
+# Database configuration (PostgreSQL)
+spring.datasource.url=jdbc:postgresql://localhost:5432/mydb
+spring.datasource.username=user
+spring.datasource.password=password
+spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect
+
+# JPA/Hibernate configuration
+spring.jpa.hibernate.ddl-auto=update
+spring.jpa.show-sql=true
+spring.jpa.properties.hibernate.format_sql=true
+
+# Logging configuration
+logging.level.com.company.project=DEBUG
+logging.level.org.springframework.web=DEBUG
+logging.pattern.console=%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
+
+# Profile configuration
+spring.profiles.active=dev
+
+# Security configuration
+spring.security.user.name=admin
+spring.security.user.password=password
+
+# Actuator configuration
+management.endpoints.web.exposure.include=health,info,metrics
+management.endpoint.health.show-details=always
+
+
+# *****************************************************************************
+# SPRING BOOT CLI > USEFUL COMMANDS
+# *****************************************************************************
+
+
+# Project creation
+spring init --build=maven --java-version=17 --dependencies=web,jpa,h2 my-project
+spring init --build=gradle --dependencies=web,security,actuator my-project
+
+# Run application
+./mvnw spring-boot:run # Maven
+./gradlew bootRun # Gradle
+
+# Build application
+./mvnw clean package # Maven
+./gradlew build # Gradle
+
+# Run tests
+./mvnw test # Maven
+./gradlew test # Gradle
+
+# Create executable JAR
+./mvnw clean package -DskipTests # Maven
+./gradlew bootJar # Gradle
+
+# Run JAR file
+java -jar target/my-project-1.0.0.jar
+java -Dspring.profiles.active=prod -jar my-app.jar
+
+
+# *****************************************************************************
+# DOCKER > CONTAINERIZATION
+# *****************************************************************************
+
+
+# Dockerfile example:
+FROM openjdk:17-jdk-slim
+VOLUME /tmp
+COPY target/my-app.jar app.jar
+ENTRYPOINT ["java","-jar","/app.jar"]
+
+# Docker commands:
+docker build -t my-spring-app .
+docker run -p 8080:8080 my-spring-app
+docker-compose up # If using docker-compose.yml
+
+
+# *****************************************************************************
+# TESTING > COMMON TESTING ANNOTATIONS
+# *****************************************************************************
+
+
+@SpringBootTest # Integration test
+@WebMvcTest # Test web layer only
+@DataJpaTest # Test JPA repositories
+@MockBean # Mock Spring bean
+@TestPropertySource # Test-specific properties
+@Sql # Execute SQL scripts
+@Transactional # Rollback after test
+@DirtiesContext # Reload application context
+
+
+# *****************************************************************************
+# SECURITY > SPRING SECURITY BASICS
+# *****************************************************************************
+
+
+@EnableWebSecurity # Enable Spring Security
+@EnableGlobalMethodSecurity(prePostEnabled = true) # Method-level security
+
+# Security configuration example:
+@Configuration
+@EnableWebSecurity
+public class SecurityConfig {
+
+ @Bean
+ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
+ http
+ .authorizeHttpRequests(authz -> authz
+ .requestMatchers("/api/public/**").permitAll()
+ .anyRequest().authenticated()
+ )
+ .oauth2ResourceServer(oauth2 -> oauth2.jwt());
+ return http.build();
+ }
+}
+
+
+# *****************************************************************************
+# BEST PRACTICES > PRODUCTION READY
+# *****************************************************************************
+
+
+# 1. Use profiles for different environments (dev, test, prod)
+# 2. Externalize configuration using application.properties/yml
+# 3. Implement proper error handling with @ControllerAdvice
+# 4. Use DTOs to avoid exposing internal entities
+# 5. Implement proper logging with SLF4J
+# 6. Add health checks with Spring Boot Actuator
+# 7. Secure your application with Spring Security
+# 8. Use connection pooling for database connections
+# 9. Implement caching where appropriate (@Cacheable)
+# 10. Add API documentation with OpenAPI/Swagger
+# 11. Use database migrations (Flyway/Liquibase)
+# 12. Implement proper exception handling
+# 13. Add monitoring and metrics collection
+# 14. Use async processing for long-running tasks
+# 15. Implement proper validation on all inputs
+
+
+# *****************************************************************************
+# COMMON DEPENDENCIES > POM.XML SNIPPETS
+# *****************************************************************************
+
+
+# Essential dependencies:
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-jpa
+
+
+
+ org.springframework.boot
+ spring-boot-starter-security
+
+
+
+ org.springframework.boot
+ spring-boot-starter-validation
+
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+# *****************************************************************************
+# DEPLOYMENT > PRODUCTION CHECKLIST
+# *****************************************************************************
+
+
+# 1. Set spring.profiles.active=prod
+# 2. Configure proper database connection
+# 3. Set up logging configuration
+# 4. Enable security headers
+# 5. Configure SSL/TLS
+# 6. Set up monitoring and alerting
+# 7. Configure load balancer
+# 8. Set up database backups
+# 9. Configure environment variables for sensitive data
+# 10. Set up CI/CD pipeline
+# 11. Configure health checks
+# 12. Set up centralized logging
+# 13. Configure caching strategy
+# 14. Set up database connection pooling
+# 15. Enable compression and static resource optimization
+
+
+# *****************************************************************************
+# TROUBLESHOOTING > COMMON ISSUES
+# *****************************************************************************
+
+
+# Port already in use:
+# Change server.port in application.properties or kill process using port
+
+# Bean creation errors:
+# Check for circular dependencies, missing @Component annotations
+
+# Database connection issues:
+# Verify database URL, credentials, and driver configuration
+
+# 404 errors:
+# Check controller mappings, context path, and request URLs
+
+# Validation not working:
+# Add @Valid annotation and spring-boot-starter-validation dependency
+
+# Auto-configuration not working:
+# Check if @SpringBootApplication is in root package