[x] 1. Set up a Spring Boot project with the required dependencies (e.g., Spring Web, Spring Security, and Spring Data)
[x] 2. Create a simple React app for the frontend
[x] 3. Design a basic landing page with a message and a "Create account" button (in React)
[x] 4. Create a registration form component (in React) with input fields for email address, password, and password confirmation
[x] 5. Implement form validation to ensure user inputs are valid (e.g., valid email format, password complexity, and matching password confirmation)
[x] 6. Set up a database to store user information (email addresses and hashed passwords). You can use Spring Data and an embedded database like H2 for development
[x] 7. Create a User entity in the backend (Spring Boot) to represent user data
[x] 8. Implement a User repository (using Spring Data) to handle database interactions
[x] 9. Create an API endpoint in the backend to handle registration requests from the frontend
[ ] 10. Implement a registration service in the backend to handle user registration logic (e.g., checking for existing emails, hashing passwords, and saving new users)
[ ] 11. Connect the frontend registration form to the backend API endpoint to send registration requests
As a busy parent, I want to create an account with a username and password so I can access the book-sharing site.