Nova2FA Documentation
Welcome to Nova2FA - a flexible, production-ready Two-Factor Authentication (2FA) package for Django applications.
What is Nova2FA?
Nova2FA provides a complete 2FA solution for Django projects with:
- 🔐 Multiple authentication methods (TOTP, Email OTP, Backup Codes)
- 🎨 Completely customizable unstyled templates
- 🔌 Pluggable architecture for custom methods
- 🛡️ Production-ready security features
- 🚀 Easy integration with existing Django projects
Quick Links
- Installation Guide
- Quick Start Tutorial
- Configuration Reference
- Security Guide ⭐ New in v1.1.0
- Customization Guide
- API Reference
Why Nova2FA?
Unlike other 2FA packages, Nova2FA is designed from the ground up to be:
- Flexible: Pluggable architecture lets you add custom authentication methods
- Unstyled: Bring your own design system - no forced styling
- Simple: Minimal configuration required to get started
- Powerful: Advanced features for production use
- Maintained: Active development and support
Features at a Glance
Authentication Methods
- TOTP (Time-based OTP): Works with Google Authenticator, Authy, Microsoft Authenticator, etc.
- Email OTP: Receive codes via email
- Backup Codes: Recovery codes for emergency access
- Extensible: Add SMS, push notifications, hardware keys, etc.
Security Features
- Encrypted TOTP secrets (v1.1.0+)
- Hashed backup codes (v1.1.0+)
- Account lockout after failed attempts (v1.1.0+)
- Configurable verification windows
- Built-in rate limiting
- Session-based verification
- Path-based access control
- Backup codes with usage tracking
Developer Experience
- Zero-friction installation
- Comprehensive documentation
- Example project included
- Minimal dependencies
- Django 4.2+ compatible
Community
- GitHub: brandnova/Nova2FA
- Issues: Report bugs or request features
- PyPI: nova2fa on PyPI
License
Nova2FA is released under the BSD 3-Clause License.