gRPC-based microservice for user account management with authentication, password reset, and session management.
cp .env.example .envEdit .env with your configuration (JWT secret, SMTP credentials, etc.)
Install dependencies:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txtGenerate gRPC stubs:
./generate_grpc.shRun the service:
python main.pyService will start on localhost:50051
docker compose upThis starts both the user service and PostgreSQL database.
- SignUp - User registration with email validation
- SignIn - Authentication with JWT token generation
- ValidateToken - JWT token validation and session checking
- GetUser - Retrieve user information by ID
- ResetPassword - Send password reset email
- ConfirmPasswordReset - Complete password reset flow
- Logout - Revoke user session
- gRPC / Protocol Buffers
- SQLAlchemy (PostgreSQL / SQLite)
- PyJWT for authentication
- bcrypt for password hashing
- SMTP for email notifications