{"id":25631293,"url":"https://github.com/boompig/passzero","last_synced_at":"2025-04-14T16:52:50.236Z","repository":{"id":26250140,"uuid":"29697245","full_name":"boompig/passzero","owner":"boompig","description":"PassZero is an open-source password manager which is offered as a free service but can also be run by anyone locally","archived":false,"fork":false,"pushed_at":"2025-03-22T18:31:48.000Z","size":6844,"stargazers_count":8,"open_issues_count":23,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-22T19:26:56.322Z","etag":null,"topics":["flask","password-manager","postgresql","python","react"],"latest_commit_sha":null,"homepage":"https://passzero.herokuapp.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/boompig.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-01-22T19:57:39.000Z","updated_at":"2023-04-26T12:08:40.000Z","dependencies_parsed_at":"2025-03-22T19:35:06.736Z","dependency_job_id":null,"html_url":"https://github.com/boompig/passzero","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boompig%2Fpasszero","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boompig%2Fpasszero/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boompig%2Fpasszero/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boompig%2Fpasszero/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boompig","download_url":"https://codeload.github.com/boompig/passzero/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248922501,"owners_count":21183942,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flask","password-manager","postgresql","python","react"],"created_at":"2025-02-22T20:19:39.835Z","updated_at":"2025-04-14T16:52:50.214Z","avatar_url":"https://github.com/boompig.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PassZero\n\n[![Travis Build Status](https://travis-ci.org/boompig/passzero.svg?branch=master)](https://travis-ci.org/boompig/passzero)\n[![Coverage Status](https://coveralls.io/repos/github/boompig/passzero/badge.svg?branch=master)](https://coveralls.io/github/boompig/passzero?branch=master)\n\n## About\n\nPassZero is a secure password manager implemented in Python. It is accessible in the browser and can be run either locally or remotely.\n\n## Design\n\nPassZero is implemented as a simple web app with results held in a database, the frontend is presented as HTML in the browser, and the server is implemented in Python (Flask). All of the crypto happens server-side.\n\n## Running Locally\n\n### Docker\n\nbuild:\n\n```\ndocker compose build\n```\n\nrun:\n\nFirst edit `docker-compose.yml` and change the environment variable `SENDGRID_API_KEY` and `DATABASE_URL`.\n\n```\ndocker compose up\n```\n\n### Local Machine\n\n* install postgres\n    - on some platforms it may be necessary to install python bindings at the system level\n* install the following packages if not present:\n    - python-dev\n    - libssl-dev\n    - postgresql-server-dev\n* create virtualenv from requirements.txt\n* if running on Mac, install certificates using [this procedure](https://stackoverflow.com/a/10176685)\n* create self-signed certificate for SSL, place it at root of PassZero\n    - instructions [here](https://stackoverflow.com/questions/10175812/how-to-create-a-self-signed-certificate-with-openssl)\n* set environment variables\n    - `FLASK_ENV` - recommended to set this explicitly to \"production\" when running in a production capacity\n    - `DATABASE_URL`\n        - `postgres://\u003cusername\u003e:\u003cpassword\u003e@\u003chost\u003e:\u003cport\u003e/\u003cdatabase\u003e`\n    - `SENDGRID_API_KEY`\n    - `REAL_EMAIL` (testing only)\n    - alternatively create file `.env` with environment variable values from above. This file will be loaded using the dotenv package\n* `heroku local web`\n\n## Development\n\nAll instructions in \"running locally\", as well as:\n\n- install nodejs and npm\n- `make install`\n\nThere is limited support for running the server without an internet connection. Some parts of the site may not work, but if you set `OFFLINE=1` as an environment variable then portions of the site take that into account and try to work anyway.\n\nIf you want to run without HTTPS you can set the environment variable `NO_SSL=1`\n\nThe default flask server will always create database tables. If you want the gunicorn instantiation to create the tables, specify `GUNICORN_CREATE_TABLES=1`.\n\n### Building React Components\n\nMost of the client-side components are written using React. You need to re-compile the react bundle for each page after modifying. Run this command:\n\n```\nyarn build\n```\n\n### Changing CSS\n\nMost CSS is not included in the respective bundles.\nWhen modifying the CSS you have to rebuild the minified CSS using the command:\n\n```\nmake minify-css\n```\n\n### Running Unit Tests\n\n`make test`\n\n## Deploying\n\n* run `make` to generate new build ID so caches are invalidated for old CSS and JS resources\n    - can also just run `make build-name`\n* deploy to server\n\n## License\n\n* GPLv3\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboompig%2Fpasszero","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboompig%2Fpasszero","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboompig%2Fpasszero/lists"}