{"id":20956960,"url":"https://github.com/rahul-jha98/passwordkeeper","last_synced_at":"2025-05-14T05:32:36.853Z","repository":{"id":41389384,"uuid":"334975117","full_name":"rahul-jha98/PasswordKeeper","owner":"rahul-jha98","description":"Web-app to help you securely store your encrypted passwords in your Google Drive.","archived":false,"fork":false,"pushed_at":"2022-01-03T12:10:23.000Z","size":1682,"stargazers_count":47,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2023-03-06T13:53:35.168Z","etag":null,"topics":["google-drive","google-sheets","material-design","material-ui","password-manager","react"],"latest_commit_sha":null,"homepage":"https://thepasswordkeeper.netlify.app/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rahul-jha98.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-02-01T14:25:25.000Z","updated_at":"2023-03-01T15:32:18.000Z","dependencies_parsed_at":"2022-09-03T18:50:27.281Z","dependency_job_id":null,"html_url":"https://github.com/rahul-jha98/PasswordKeeper","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahul-jha98%2FPasswordKeeper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahul-jha98%2FPasswordKeeper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahul-jha98%2FPasswordKeeper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahul-jha98%2FPasswordKeeper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rahul-jha98","download_url":"https://codeload.github.com/rahul-jha98/PasswordKeeper/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225277650,"owners_count":17448719,"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":["google-drive","google-sheets","material-design","material-ui","password-manager","react"],"created_at":"2024-11-19T01:28:48.476Z","updated_at":"2024-11-19T01:28:48.933Z","avatar_url":"https://github.com/rahul-jha98.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp class='logo'\u003e\n  \u003cimg alt=\"logo\" src=\"https://raw.githubusercontent.com/rahul-jha98/PasswordKeeper/image_assets/Logo.svg\" width=\"480\"\u003e\n\u003c/p\u003e\n\n\u003e Securely store your passwords in your Google Drive.\n\n**🚀 Checkout the website live at** : https://thepasswordkeeper.netlify.app/\n\nPassword Keeper is a web app that can be used to store your passwords or other account details in your Google Drive. The data is store in an encrypted format and can only be decrypted using a master password that you set during first login.\n\n## 🤔 Why Google Sheet?\nFor storing all the encrypted passwords a Google Sheet stored in your Google Drive is used as a database. The reason for choosing this approach is that since the Google Sheet will only store the passwords of a singe person and the number of passwords a will hopefully never be more than hundred. Thus, there is not much performace harm in using Google Sheet to store data. \nBut the benefit of using Google Sheet is that it completely removes the need for a backend. Since, Google provides REST API to manipulate Google Sheet the web-app could directly interact with data stored in Google Sheet.\n\n## ⚡ Features\nWith so many password manager already existing, one might wonder why should anyone choose PasswordKeeper. Here are a few reasons -\n- **No Backend** - PasswordKeeper is a standalone web app without any backend server. The data you enter is saved directly in your Google Drive. \n- **Web Based** - While there are many password managers that do not have a backend but rather store the passwords in the user's mobile device itself. The limitation of this approach is that if you don't have your mobile near you, you cannot access your passwords.\n- **Free to use**\n- **Open Source** - The complete source code of PasswordKeeper is available on Github thus you can verify that there is nothing suspicious happening and also help make PasswordKeeper better for everyone.\n- **Custom Categories** - PasswordKeeper provides option to add categories with custom fields to customize it based on you use case.\n\n## 👀 How it looks\n\n\u003ch4\u003eMain Screen\u003c/h4\u003e\n\u003cimg width=\"780px\" src=\"https://raw.githubusercontent.com/rahul-jha98/PasswordKeeper/image_assets/Home.png\" /\u003e\n\n\u003ch4\u003eDetail Screen\u003c/h4\u003e\n\u003cimg width=\"780px\" src=\"https://raw.githubusercontent.com/rahul-jha98/PasswordKeeper/image_assets/Detail.png\" /\u003e\n\n\u003ch4\u003eData in Google Sheet\u003c/h4\u003e\n\u003cimg width=\"780px\" src=\"https://raw.githubusercontent.com/rahul-jha98/PasswordKeeper/image_assets/Sheet.png\" /\u003e\n\n\u003ch4\u003eCustom Categories\u003c/h4\u003e\n\u003cimg width=\"780px\" src=\"https://raw.githubusercontent.com/rahul-jha98/PasswordKeeper/image_assets/Category.png\" /\u003e\n\n\n## 🛠️ Tools used to build\n\n\u003ca href=\"https://developer.mozilla.org/en-US/docs/Web/JavaScript\" target=\"_blank\"\u003e \u003cimg align=\"left\" alt=\"JavaScript\" height =\"48px\"  src=\"https://raw.githubusercontent.com/rahul-jha98/github_readme_icons/main/language_and_tools/square/javascript/javascript.svg\"\u003e \u003c/a\u003e\n\u003ca href=\"https://reactjs.org/\" target=\"_blank\"\u003e \u003cimg align=\"left\" alt=\"React\" height =\"48px\" src=\"https://raw.githubusercontent.com/rahul-jha98/github_readme_icons/main/language_and_tools/square/react/react.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://material-ui.com/\" target=\"_blank\"\u003e \u003cimg align=\"left\" alt=\"Material UI\" height =\"48px\" src=\"https://raw.githubusercontent.com/rahul-jha98/README_icons/main/language_and_tools/square/material-ui/material-ui.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/rahul-jha98/sheets-database\" target=\"_blank\"\u003e \u003cimg alt=\"Material UI\" height =\"48px\" src=\"https://raw.githubusercontent.com/rahul-jha98/sheets-database/main/docs/assets/imgs/logo.svg\"\u003e\u003c/a\u003e\n\n## 🔧 Setup Local Environment\n\n_Make sure you have [Yarn](https://classic.yarnpkg.com/en/docs/install/#debian-stable)_\n\n1. Clone the repository\n\n```\ngit clone https://github.com/rahul-jha98/PasswordKeeper.git\ncd PasswordKeeper\n```\n\n2. Install dependencies\n\n```\nyarn install\n```\n\n3. Create a `.env` file with the contents of `.env.sample`. Go to https://console.cloud.google.com/apis/dashboard and create a API key for Drive API and OAuth Consent Screen Client ID. Set these values in `.env` file.\n\n4. Run the start script using\n\n```\nyarn start\n```\n\nApplication should be up and running at [http://localhost:3000](http://localhost:3000).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahul-jha98%2Fpasswordkeeper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frahul-jha98%2Fpasswordkeeper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahul-jha98%2Fpasswordkeeper/lists"}