Develop a user service that handles user registration, authentication and profile management for the expense manager application. This service enable to create accounts in the application
Tasks:
Set Up User Model:
Define the User entity with appropriate attributes (username, email, password hash, etc.).
Implement User Registration:
Create an endpoint to register new users.
Validate user input and ensure unique usernames and emails.
Hash passwords before storing them in the database.
Implement User Authentication:
Create login endpoint.
Validate user credentials and generate a JWT token for authenticated sessions.
Profile Management:
Implement endpoint to retrieve user profile data.
Implement endpoint to update user profile information (e.g., username, email).
Error Handling:
Ensure proper error messages and HTTP status codes are returned for various scenarios (e.g., invalid input, user not found, etc.).
Testing:
Write unit tests for all endpoints and service methods.
Conduct integration tests to verify the service's interaction with the database.
Develop a user service that handles user registration, authentication and profile management for the expense manager application. This service enable to create accounts in the application
Tasks:
Set Up User Model:
Implement User Registration:
Implement User Authentication:
Profile Management:
Error Handling:
Ensure proper error messages and HTTP status codes are returned for various scenarios (e.g., invalid input, user not found, etc.).
Testing: