PasswdSL is a console-based password manager that allows you to securely store and manage your credentials in a local PostgreSQL database. It provides a simple and efficient way to handle your passwords directly from the command line.
- Secure Local Storage: All your passwords are stored in a local PostgreSQL database, ensuring that your data remains under your control.
- Full CRUD Operations: Create, Read, Update, and Delete your passwords with simple commands.
- Command-Line Interface: A straightforward and easy-to-use command-line interface for all operations.
- Self-Hosted: No external servers are involved. Your data stays with you.
Before you begin, ensure you have the following installed on your system:
- PostgreSQL: You must have PostgreSQL installed and running on your system. You can download it from the official PostgreSQL website: https://www.postgresql.org/download/
- Download the Build: Download the latest version of PasswdSL for Windows by clicking here.
Note: To use it on Linux and Mac you need to build it from the source code, if you don't know how to do it, then click here to learn about it
- Unzip the downloaded folder.
- Set Environment Variable:
- Copy the path to the unzipped
passwdsl
folder. - Open the "Environment Variables" settings in Windows.
- Under "System variables," select the
Path
variable and click "Edit." - Click "New" and paste the copied path to the
passwdsl
folder. - Click "OK" to save the changes.
- Copy the path to the unzipped
- Run PasswdSL:
- Open a new terminal or command prompt.
- Type
passwdsl
and press Enter.
The first time you run a command, PasswdSL will prompt you to set up your database connection.
- Database Name: When prompted, enter the database name. It is crucial to use
mypasswds
as the database name. - Table Name: The table where your passwords will be stored must be named
allpasswds
. - Table Columns: The
allpasswds
table must have the following three columns with the exact same names:id
(bigserial, PRIMARY KEY)platform
(text, NOT NULL)passwd
(text, NOT NULL)
- Restart terminal and type
passwdsl
to start using PasswdSL.
You can use the following SQL script to create the table:
CREATE TABLE public.allpasswds
(
id bigserial NOT NULL,
platform text NOT NULL,
passwd text NOT NULL,
PRIMARY KEY (id)
);
ALTER TABLE IF EXISTS public.allpasswds
OWNER to postgres;
COMMENT ON TABLE public.allpasswds
IS 'all passwords';
Here are some images to guide you through the database setup process in PostgreSQL:
Once the setup is complete, you can start using PasswdSL with the following commands:
See all your credentials.
>_ passwds
See the password for a specific platform.
>_ passwd -of gmail
Add a new password for a platform.
>_ passadd -cred MyNewPassword123 -of github
Remove a password for a specific platform.
>_ passrm -of facebook
Update the password for a specific platform.
>_ passup -new MyUpdatedPassword456 -of twitter
Display all available commands.
>_ help
Exit the PasswdSL console.
>_ q
Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.