Skip to content

smartlegionlab/smart-password-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

34 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Smart Password Manager Web v1.1.1

GitHub top language GitHub license GitHub release GitHub stars GitHub forks

🌐 Web-Based Smart Password Management

A professional Django-based web application for managing and generating smart passwords with deterministic cryptography. Provides a comprehensive web interface for secure password management.

Powered by smartpasslib - The core library for deterministic password generation

🌟 Key Features

  • 🌐 Web-Based Interface - Access your password manager from any device
  • πŸ”’ Zero Password Storage - Passwords generated on-demand, never stored in database
  • 🎨 Responsive Design - Works seamlessly on desktop and mobile devices
  • πŸ“ Project Organization - Organize credentials by projects and categories
  • πŸ” Advanced Search - Quickly find and manage your login information
  • ⚑ Real-Time Generation - Instant password generation with cryptographic security

Your passwords don't need to be stored because they were never created - they already exist as mathematical certainties, waiting to be discovered through the correct combination of login and secret phrase.


πŸš€ Quick Start

Prerequisites

  • Python 3.8+
  • PostgreSQL (recommended) or SQLite
  • Redis (for Celery tasks, optional)

Installation

1. Install PostgreSQL

# Arch Linux
sudo pacman -S postgresql

# Ubuntu/Debian
sudo apt-get install postgresql postgresql-contrib

# Initialize database cluster (Arch Linux)
sudo su - postgres -c "initdb --locale en_US.UTF-8 -D '/var/lib/postgres/data'"
sudo systemctl start postgresql
sudo systemctl enable postgresql

2. Project Setup

# Clone repository
git clone https://github.com/smartlegionlab/smart-password-manager.git
cd smart-password-manager

# Create virtual environment
python -m venv venv
source venv/bin/activate

# Install dependencies
pip install --upgrade pip
pip install -r requirements.txt

# Install PostgreSQL adapter
pip install psycopg2-binary

3. Database Configuration

-- Access PostgreSQL shell
sudo -u postgres psql

-- Create database
CREATE DATABASE smart_password_manager_db
    OWNER postgres
    ENCODING 'UTF-8'
    LC_COLLATE 'en_US.UTF-8'
    LC_CTYPE 'en_US.UTF-8'
    TEMPLATE template0;

4. Environment Configuration

Create .env file in project root:

# Core Settings
DJANGO_ENV=development
SECRET_KEY=your-generated-secret-key-here
DEBUG=True

# Database Settings
DB_NAME=smart_password_manager_db
DB_USER=postgres
DB_PASSWORD=postgres
DB_HOST=localhost
DB_PORT=5432

# Optional: Redis/Celery Settings
REDIS_URL=redis://localhost:6379/1
CELERY_BROKER_URL=redis://localhost:6379/0

Generate secret key:

python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"

5. Database Migration & Setup

# Apply migrations
python manage.py migrate

# Create superuser
python manage.py createsuperuser

# Collect static files
python manage.py collectstatic

6. Run Development Server

python manage.py runserver

Access the application at: http://localhost:8000 Admin interface: http://localhost:8000/admin

🎨 Interface Preview

Web Interface Modern web interface for smart password management

πŸ—οΈ Architecture

Technology Stack

  • Backend: Django 5.2+
  • Database: PostgreSQL (recommended) or SQLite
  • Frontend: HTML5, CSS3, JavaScript
  • Security: SHA3-512, deterministic cryptography
  • Task Queue: Celery with Redis (optional)

Database Configuration

Default development credentials:

  • User: postgres
  • Password: postgres
  • Database: smart_password_manager_db
  • Host: localhost
  • Port: 5432

πŸ”„ Smart Password Ecosystem

This web application is part of a comprehensive suite:

πŸ–₯️ Desktop Applications

πŸ› οΈ Console Tools

πŸ’‘ Core Technology

πŸ›‘οΈ Security Features

  • No Password Storage - Credentials generated on-demand
  • PostgreSQL Security - Enterprise-grade database security
  • Django Security - Built-in protection against common vulnerabilities
  • Cryptographic Security - SHA3-512 and system entropy
  • Environment Variables - Secure configuration management

πŸ“– Related Resources

Learn about the technology behind this application:

πŸš€ Production Deployment

For production deployment, consider:

  • Using PostgreSQL with secure credentials
  • Setting DEBUG=False
  • Using environment-specific settings
  • Configuring proper SSL/TLS certificates
  • Setting up backup strategies

πŸ’» Development

Development Setup with PyCharm

  • Database user: postgres
  • Database password: postgres
  • Configure PostgreSQL data source in PyCharm

Testing

# Run tests
python manage.py test

# Run with coverage
coverage run manage.py test
coverage report

πŸ“œ License

BSD 3-Clause License

Copyright (c) 2025, Alexander Suvorov

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Explore more professional tools at Smart Legion Lab