Skip to content

A user-friendly, secure password manager, on the web

License

Notifications You must be signed in to change notification settings

josfam/passkeyper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Passkeyper

A user-friendly, secure password manager, on the web

Inspiration

Passkeyper represents the journey we've taken in our ALX software engineering program. It's not just about code; it’s the result of our growth, countless late nights troubleshooting, and the excitement of finally blending everything we’ve learned into one project. We wanted to build something meaningful, something people could find useful. Passkeyper is our way of saying, "This is how far we've come, and we're excited about where we're headed next."

Table of Contents

The Premise

This project is the MVP of our Portfolio Project, concluding our backend specilization track at Alx Africa. We were able to choose who we wanted to work with and what we wanted to work on, as long as we present a working program at the end of the two weeks of development.

The Team

The project was developed by:

Technologies

  • Backend
    • Python
    • Flask
  • Frontend
    • React
    • TypeScript
    • Tailwind
  • Database
    • PostgreSQL

Architecture

coming soon...

Demo

Watch our product demo to see Passkeyper in action:

Key Features Showcased

  • Secure password storage and management
  • Intuitive user interface
  • Easy password organization
  • Quick access to saved credentials
  • Zero-knowledge architecture

Project Setup

Clone the repo

$ git clone [email protected]:josfam/passkeyper.git
$ cd passkeyper/

Installation/Configuration

Dependencies - backend || frontend

database

setup your postgres database www.postgresql.org

backend

  • setup your environmental variables:
DATABASE_URI_STRING="<YOUR_DATABASE_URI>"
SECRET_KEY="<YOUR_SECRET_KEY>"
CLIENT_ADDRESS="http://localhost:5173"
  • in one terminal, from the root directory:
$ cd backend
$ pip3 install virtualenv
$ virtualenv .venv
$ source .venv/bin/activate
$ pip3 install -r requirements.txt
$ ...
$ <done>
$ flask db init
$ flask db migrate
$ flask run

frontend

  • setup your environmental variables:
VITE_FLASK_APP_API_URL='http://127.0.0.1:5000/'
  • in another terminal, from the root directory:
$ cd frontend
$ npm install
$ ...
$ <done>
$ npm run dev

Future Plans

  • Browser extension
  • Account recovery
  • Full email and password monitoring
  • 2-step verification / 2 Factor

Acknowledgements

All work contained in this project was completed as part of the curriculum for Alx. ALX is a leading technology training provider, built to accelerate the careers of young Africans through the technology and professional skills that enable them to thrive in the digital economy. The program prepares students for careers in the tech industry using project-based peer learning. For more information, visit Alx Africa.

License

MIT License