A secure, local password manager built with Django that allows you to store and manage your login credentials with features like password versioning, custom fields, and file import/export capabilities.
- Secure storage of login credentials (domain, username, password)
- Optional 2FA code and backup codes storage
- Custom fields for additional information
- Password version history
- Daily backups
- Dark mode UI
- Import from CSV and JSON files
- Search and filter functionality
- Multiple logins per domain
- Docker
- Docker Compose
- Clone the repository:
git clone <repository-url>
cd LocalPasswordManager- Create a
.envfile in the root directory with the following content:
MYSQL_DATABASE=password_manager
MYSQL_USER=password_manager
MYSQL_PASSWORD=password_manager
MYSQL_ROOT_PASSWORD=password_manager
MYSQL_PORT=3306
MYSQL_VERSION=8.0
- Build and start the containers:
docker-compose up --build- Create a superuser to access the application:
docker-compose exec backend python manage.py createsuperuser- Access the application at http://localhost:8002
- Log in to the application
- Click "Add Login" in the navigation bar
- Fill in the required information:
- Domain (e.g., "example.com")
- Username
- Password
- Optional: 2FA code, backup codes, label
The application supports importing login items from CSV and JSON files.
domain,username,password,two_factor_code,backup_codes,label
example.com,user@example.com,password123,123456,BACKUP1234,Personal[
{
"domain": "example.com",
"username": "user@example.com",
"password": "password123",
"two_factor_code": "123456",
"backup_codes": "BACKUP1234",
"label": "Personal",
"custom_fields": {
"notes": "Some notes",
"recovery_email": "recovery@example.com"
}
}
]The application automatically creates daily backups of all login items. You can also manually trigger a backup by clicking the "Backup" button in the navigation bar.
- This is a local password manager intended for personal use
- The application uses Django's built-in security features
- Passwords are stored in the database
- It's recommended to:
- Use strong passwords
- Keep your system secure
- Regularly backup your data
- Never expose the application to the internet
LocalPasswordManager/
├── docker-compose.yml
├── .env
├── mysql/
│ └── Dockerfile
└── password-manager-app/
├── Dockerfile
├── requirements.txt
├── manage.py
├── password_manager/
│ ├── settings.py
│ └── urls.py
├── passwords/
│ ├── models.py
│ ├── views.py
│ ├── forms.py
│ └── urls.py
└── templates/
├── base.html
└── passwords/
├── home.html
├── login_item_detail.html
└── ...
- Django 5.0.6
- MySQL 8.0
- TailwindCSS for styling
- Docker for containerization
MIT License