AOSSIE-Org / AOSSIE-Org/Perspective

Feat: Add User Authentication and Authorization System (Signup/Login)

Abierto
#119 4 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
TypeScript
Estrellas
50
Forks
78
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

## Is your feature request related to a problem? Please describe.

Currently, the Perspective application lacks user authentication and authorization mechanisms. This means:
- Users cannot create accounts or maintain personalized sessions
- There's no way to track individual usage or enforce rate limiting per user
- Saved analyses, chat history, and preferences cannot be persisted across sessions
- The application cannot scale to a production-ready system with proper access control
- No protection exists for API endpoints against abuse or unauthorized access

## Describe the solution you'd like

Implement a comprehensive authentication and authorization system with the following features:

**Backend (FastAPI):**
- User registration endpoint with email verification
- Secure login/logout functionality using JWT tokens
- Password hashing with bcrypt or argon2
- Token refresh mechanism for extended sessions
- Protected API routes with authentication middleware
- Rate limiting per authenticated user
- User profile management (view/update profile)

**Frontend (Next.js):**
- Clean signup/login forms with validation
- Secure token storage (httpOnly cookies or secure localStorage)
- Authentication state management (Context API or Zustand)
- Protected routes that redirect unauthenticated users
- User profile dashboard
- Session persistence and auto-refresh
- Logout functionality with token cleanup

**Database:**
- User table with fields: id, email, username, hashed_password, created_at, is_verified
- Integration with MongoDB database for user-specific data

## Potential Impact

**Who will benefit:**
- **End users** - Personalized experience, saved history, secure access
- **Project maintainers** - Better abuse prevention, usage analytics, scalable infrastructure
- **Contributors** - Foundation for advanced features (sharing, collaboration, premium tiers)
- **Community** - Production-ready system that can be deployed publicly

**Expected impact:**
- **Security**: Prevents API abuse and unauthorized access
- **Scalability**: Enables per-user rate limiting and resource management
- **User Experience**: Persistent sessions, saved preferences, analysis history
- **Monetization potential**: Foundation for freemium/premium features
- **Data privacy**: User-specific data isolation and GDPR compliance readiness
- **Analytics**: Track user engagement, popular features, and system usage

@ParagGhatage i have been working on the code for this issue. once this is approved by you i shall raise the pr.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.