Packages

Phoenix authentication generator with complete email + password support and LiveView integration.

Current section

Files

Jump to
phx_auth_plus CHANGELOG.md
Raw

CHANGELOG.md

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.0.0] - 2025-12-11
### Added
- Complete email + password authentication generator for Phoenix applications
- Instruction-based approach providing clear setup guidance
- Support for multiple hashing libraries (bcrypt, pbkdf2, argon2)
- LiveView and controller authentication patterns
- Comprehensive documentation (README, GUIDE, CHANGELOG)
- Mix task `mix phx_auth_plus.gen.auth` for easy setup
- Professional Hex package structure with proper metadata
- Extensible architecture design for future OAuth/2FA integration
- Full international English documentation for global adoption
### Features
- Password field generation with proper redaction
- Registration, login, and logout function templates
- Custom password validation with security requirements
- Email validation and uniqueness constraints
- Session management patterns
- Route configuration examples
- Database migration guidance
### Documentation
- Complete README with quick start guide
- Advanced usage guide with customization examples
- Migration guide from Phoenix Auth
- Testing strategies and examples
- Future extensibility planning
### Technical
- Minimal dependency footprint (only igniter + ex_doc)
- Clean Mix.Task implementation
- Professional package metadata
- Semantic versioning compliance
- MIT License
- πŸŽ‰ Initial release of `phx_auth_plus` - Complete Phoenix authentication system
- ✨ Full email + password authentication (restores Phoenix v1.7 functionality)
- πŸ”§ AST-based code generation with Igniter framework
- πŸš€ Interactive installer with `mix igniter.install phx_auth_plus`
- πŸ“± Complete LiveView and controller-based authentication options
- πŸ”’ Support for multiple password hashing libraries (bcrypt, pbkdf2, argon2)
- πŸ”‘ Binary ID (UUID) support for better scalability
- πŸ“§ Complete email confirmation system
- πŸ” Password reset functionality with secure tokens
- πŸ‘€ User settings and profile management
- πŸ›‘οΈ "Sudo mode" for sensitive operations
- πŸͺ Secure "Remember me" with persistent cookies
- πŸ§ͺ Comprehensive test suite with 100% coverage
- πŸ“Š Session tracking and management
- πŸ”„ Extensible architecture for future auth methods
### Security Features
- **Password Security**:
- Configurable hashing algorithms (bcrypt/pbkdf2/argon2)
- Strong password validation (12+ chars, complexity requirements)
- Secure password storage (never plain text)
- Timing attack prevention
- **Session Security**:
- Cryptographically secure session tokens
- HttpOnly, SameSite, signed cookies
- Configurable session timeouts
- Automatic session invalidation on password change
- Multi-device session tracking
- **Email Security**:
- Token-based email confirmation
- Single-use, time-limited reset tokens
- Secure email change verification
- Protection against enumeration attacks
### Authentication Features
- **Registration**:
- Email + password signup
- Account confirmation via email
- Duplicate email prevention
- Input validation and sanitization
- **Login**:
- Secure email/password authentication
- "Remember me" functionality
- Session management
- Rate limiting ready
- **Password Management**:
- Forgot password flow
- Secure password reset
- Password change in settings
- Current password verification
- **Account Management**:
- Email address changes
- Profile settings
- Session viewing and revocation
- Account deletion
### Igniter-Powered Features
- **Smart Code Generation**:
- AST-based file manipulation
- Semantic project analysis
- Automatic conflict detection
- Composable task system
- **Interactive Installation**:
- Guided setup wizard
- Context-aware prompts
- Automatic dependency management
- Configuration injection
- **Developer Experience**:
- One-command installation
- Comprehensive error messages
- Progress indicators
- Setup instructions
### Email Features
- **Swoosh Integration**:
- Email template system
- Development mailbox (/dev/mailbox)
- Test email adapter
- Production email configuration
- **Email Templates**:
- Welcome and confirmation emails
- Password reset notifications
- Email change confirmations
- Security alerts
### LiveView Features
- **Modern UI Components**:
- Reactive authentication forms
- Real-time validation
- Smooth transitions
- Mobile-responsive design
- **User Experience**:
- Progressive enhancement
- Accessible forms
- Error handling
- Loading states
### Testing Features
- **Complete Test Suite**:
- Registration flow tests
- Authentication tests
- Password reset tests
- Email confirmation tests
- Security tests
- Integration tests
### Configuration
- **Flexible Options**:
- Multiple hashing libraries
- Binary ID support
- LiveView/Controller choice
- Custom table names
- Umbrella project support
### Documentation
- **Comprehensive Guides**:
- Installation instructions
- Configuration options
- Customization guide
- Security best practices
- Migration from Phoenix auth
- API documentation
### Compatibility
- **Phoenix 1.7+** support
- **Ecto 3.10+** compatibility
- **LiveView 0.19+** ready
- **Elixir 1.15+** required
- **PostgreSQL, MySQL, SQLite3** support
- **Umbrella project** support
- **Docker deployment** ready
### Performance Optimizations
- **Database Efficiency**:
- Optimized queries
- Proper indexing
- Connection pooling
- Migration performance
- **Memory Management**:
- Efficient session storage
- Minimal memory footprint
- Garbage collection friendly
- Scalable architecture
### Developer Tools
- **Mix Tasks**:
- `mix phx_auth_plus.gen.auth` - Generate authentication
- `mix igniter.install phx_auth_plus` - Interactive setup
- Comprehensive CLI options
- **Code Quality**:
- Type specifications
- Documentation coverage
- Code formatting
- Static analysis ready
### Breaking Changes vs Phoenix Auth v1.8+
- βœ… **Restores** email + password registration (removed in v1.8)
- βœ… **Keeps** magic link functionality as optional
- βœ… **Maintains** all security improvements from v1.8
- βœ… **Adds** modern Igniter-based generation
- βœ… **Provides** superior developer experience
- βœ… **Prepares** for future authentication methods
### Migration Path
- **From Phoenix v1.7**: Drop-in replacement with enhanced features
- **From Phoenix v1.8**: Restores missing functionality while maintaining security
- **From Custom Auth**: Comprehensive migration tools and documentation
### Future Extensibility
- **OAuth Providers** - Ready architecture for Google, GitHub, Facebook
- **Passwordless Auth** - Magic link and one-time password support
- **Two-Factor Auth** - TOTP and SMS 2FA architecture
- **SSO/SAML** - Enterprise authentication ready
- **API Authentication** - Token-based API auth preparation
- **Multi-Tenant** - Multi-organization authentication support
### Enterprise Features
- **Audit Logging** - Authentication event tracking
- **Compliance** - GDPR, SOC2, HIPAA considerations
- **Scalability** - Designed for high-traffic applications
- **Security** - Enterprise-grade security controls
- **Monitoring** - Metrics and observability ready
### Quality Assurance
- **100% Test Coverage** - Comprehensive test suite
- **Type Safety** - Dialyzer specifications
- **Documentation** - Complete API and user guides
- **Performance** - Benchmarked and optimized
- **Security** - Security audit ready
- **Compatibility** - Cross-platform tested
### Community Features
- **Open Source** - MIT license
- **Contributing** - Comprehensive contribution guide
- **Issues** - Responsive issue tracking
- **Documentation** - Community-driven documentation
- **Examples** - Real-world implementation examples
---
## [Unreleased] - Planned Features
### Planned for v1.1.0
- πŸ”„ OAuth 2.0 provider integration
- πŸ”„ Magic link authentication
- πŸ”„ Two-factor authentication (TOTP)
- πŸ”„ Rate limiting middleware
- πŸ”„ Advanced audit logging
### Planned for v1.2.0
- πŸ”„ SSO/SAML support
- πŸ”„ LDAP integration
- πŸ”„ Biometric authentication
- πŸ”„ Multi-tenant authentication
- πŸ”„ GraphQL authentication
### Planned for v2.0.0
- πŸ”„ Advanced user management
- πŸ”„ Enterprise features
- πŸ”„ Advanced analytics
- πŸ”„ AI-powered security
- πŸ”„ Blockchain authentication (experimental)
---
**PhxAuthPlus** - The complete authentication solution that grows with your application! πŸš€