Code Monkey home page Code Monkey logo

password-shield's Introduction

Password Manager Application

This project is a password manager application that allows users to securely store their website names and passwords. The application provides a user interface for managing passwords, including adding, editing, and deleting website credentials. It also incorporates an authentication system to ensure that only authorized users can access their passwords.

Table of Contents

Features

  • User registration and authentication
  • AES-256 encryption for password security
  • View decrypted passwords for individual websites
  • Add, edit and delete website password entries
  • Responsive design for mobile and desktop devices
  • Error handling and validation for forms

Technologies

The project utilizes the following technologies:

  • Backend:

    • Node.js: A JavaScript runtime for server-side development.
    • Express.js: A web application framework for Node.js.
    • PostgreSQL: A powerful open-source relational database management system.
    • TypeScript: A typed superset of JavaScript that compiles to plain JavaScript.
  • Frontend:

    • React.js: A JavaScript library for building ui components.

Application Setup

To setup the application locally, follow these steps:

  1. Star and Fork this repo to create your own copy to work from.

  2. Clone the repository you forked to your local machine using:

       git clone <your_forked_repo_url>
  3. Navigate to the Server directory using command "cd server" and create a .env file and copy contents of .env.example file to .env file and add all secret keys to setup postgres database and backend.

  4. Install dependencies in server directory of project:

       npm install
  5. Start the server using command:

       npm start
  6. create a Table (schema) by making a POST request to API endpoint http://localhost:8080/schema API endpoint using Postman or other API testing tools.

  7. Now Navigate to the client directory using command "cd client" and create a .env.local file and copy contents of .env.sample file to .env.local file and add server URL.

  8. Install dependencies in client directory of project:

       npm install
  9. Start the application using command:

       npm start
  10. Open http://localhost:3000 in your browser to see the application.


How to Contribute

Contributions are welcome! If you would like to contribute to the project, please follow these steps:

  1. Clone and setup this application locally by following above application setup steps.

  2. Create a new branch for the issue you assigned to work on, using below command:

       git checkout -b your_branch_name
  3. Make your changes to the code.

  4. Once you are satisfied with your changes, commit them with a descriptive commit message using below command:

       git add .
       git commit -m "feat: Add feature X"
  5. Push your changes to your forked repository:

       git push origin your_branch_name
  6. Create a pull request by clicking the "Pull request" button on the original repository page.

  7. Wait for the project maintainer to review your pull request and provide feedback.

  8. If your pull request is accepted, it will be merged into the main branch of the project. Congratulations, you've contributed to the project!


Usage

To use the application, follow these steps:

  1. Register a new account with your username, email and password.
  2. Log in to the application using email and password.
  3. Add a new website name and password by filling out the form and clicking the "Add New" button.
  4. View your website name and password entries in the main page.
  5. Click the "eye" button to view the decrypted password.
  6. Edit or delete a website name and password entry by clicking the corresponding button in the main page.

password-shield's People

Contributors

abhijeetnishal avatar danmolloy avatar abhinavhaldiya avatar saksham1411 avatar abhiperfect avatar sanmarg avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.