Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rajtatata/password-keeper
Backup your passwords online, encrypted
https://github.com/rajtatata/password-keeper
decryption encryption password tweetnacl vault
Last synced: 5 days ago
JSON representation
Backup your passwords online, encrypted
- Host: GitHub
- URL: https://github.com/rajtatata/password-keeper
- Owner: rajtatata
- Created: 2019-12-02T14:22:49.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-12-22T13:23:38.000Z (about 2 years ago)
- Last Synced: 2024-11-10T03:11:45.073Z (2 months ago)
- Topics: decryption, encryption, password, tweetnacl, vault
- Language: JavaScript
- Size: 672 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This project is a serverless app for storing passwords or any other sensitive data.
Demo: [pass.flaviorajta.com](https://pass.flaviorajta.com/)
Login: demo:demo
Master Password: demo## How it works
The backend uses Google Firestore as the database and Google Cloud Functions. The frontend is a React app which can also be hosted on Firebase Hosting. [TweetNacl](https://tweetnacl.js.org/) is used for encrypting and decrypting data.
- The backend always stores encrypted data
- The data is decrypted only on the frontend`Master Password` is the key used to encrypt/decrypt data. When this key is correct, the data will be correctly decrypted and the user will have the option to view or copy.
While logged in with demo account, go ahead and write `demo` as the Master Password and you will notice the data change.## How to deploy
- Create a Firebase Project, or use an existing one
- Navigate into `backend-firebase-functions` folder
- run `firebase init ` to initialize the firebase project
- check using the space bar only Functions
- choose the Project you want to use
- you can safely press Enter until everything finishes
- Navigate inside `backend-firebase-functions/functions`
- rename `.env.example` to `.env`
- be sure to change the TOKEN_SECRET inside `.env` to whatever you want
- run `firebase deploy` to deploy your function to the cloud
- once it completes it will display your function url, which will be needed below
- Navigate into `frontend-reactjs`
- rename `.env.example` to `.env`
- be sure to changre REACT_APP_SERVER_URL to your function url
- run `npm install` to install the npm packages
- run `npm run build` to build the project
- this will create a build folder inside
- move this build folder to `frontend-firebase-hosting`
- or you can run `npm run postbuild:windows` or `npm run postbuild:linux` depending on your os
- Navigate inside `frontend-firebase-hosting`
- run `firebase init` to initialize the firebase project
- check using the space bar only Hosting
- choose the Project you want to use
- you can safely press Enter until everything finishes
- run `firebase deploy` to deploy your static app to the cloud
- once it finishes it will show the Hosting URL