Skip to content

smartlegionlab/smart-password-manager

Repository files navigation

Smart Password Manager Web v1.2.0


Note: This is a production-ready password manager. For academic research on the underlying security paradigm, see The Pointer-Based Security Paradigm.


GitHub top language GitHub license GitHub release GitHub stars GitHub forks

🌐 Web-Based Smart Password Management

Smart Password Manager (web version).

Powered by smartpasslib - The core library for deterministic password generation.

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
  • 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
  • Frontend: HTML5, CSS3, JavaScript
  • 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

📜 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.