My goals for this personal project (working in progress) are:
- Develop a complete shopping website using Java, Spring Boot, Thymeleaf, Bootstrap, jQuery and MySQL database
- Code the Shopping application allowing customers to browse products and place orders
- Use Spring Data JPA with Hibernate for the data access layer
- Use Thymeleaf template engine for creating dynamic view pages
- Use JUnit, Spring Test, AssertJ and Mockito for unit tests and integration tests
- Use Spring Mail for sending emails for customer registration and place order confirmation
- Code shopping cart features and payment via PayPal and credit cards
- Use Spring Security for authentication and role-based authorization
- Use Bootstrap and jQuery for creating responsive, mobile-friendly web pages
- Use PayPal Checkout API for payment integration
- Deploy the application on Heroku cloud platform with file upload on Amazon S3
- Use Spring OAuth for single sign on with Facebook and Google