Giter Club home page Giter Club logo

0me9a / password Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 4.0 1.27 MB

Password is a free online tool that helps you create strong and random passwords for your accounts. You can customize your password options and copy the generated password to your clipboard with one click.

Home Page: https://password.ome9a.com

License: MIT License

HTML 4.67% CSS 2.05% TypeScript 93.28%
code code-red meterial-ui mui passwordgenerator random-password-generator react react-router tools

password's Introduction

Password Generator

Welcome to the Password Generator! This user-friendly, React-based web application is designed to create robust and secure passwords with ease.

Features

  • Customizable Passwords: Tailor your passwords based on length, complexity, and additional security measures like salt.
  • Password History: Access, manage, and bookmark your generated passwords for future use.
  • Copy to Clipboard: Effortlessly copy the generated passwords to your clipboard for immediate use.
  • Delete History: Clear your password history instantly with a single click.

Chrome/Edge Extension

Exciting news! The Password Generator now has a dedicated Chrome/Edge extension, bringing the power of password generation directly to your browser. Install it from the Microsoft Edge Add-ons for a seamless experience.

Getting Started

To use the Password Generator web application, follow these steps:

Installation

Clone the repository and install the necessary dependencies:

git clone https://github.com/0ME9A/password.git
cd password
npm install

Running the Application

Launch the development server:

npm start

The Password Generator should now be accessible at http://localhost:3000.

Contributing

We enthusiastically welcome contributions from the community! Here's how you can contribute:

  1. Fork the repository.
  2. Create a new branch for your changes.
  3. Implement your modifications in the created branch.
  4. Submit a pull request with a comprehensive description of your alterations.

Before contributing, kindly review our Contributing Guidelines and Code of Conduct for a smooth collaboration.

License

This project is licensed under the MIT License. For more details, please refer to the LICENSE file.

password's People

Contributors

0me9a avatar baliramstrikes avatar davidkozdra avatar dependabot[bot] avatar vikramnagwal avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

password's Issues

Settings not saving

My fault some of the settings are not saving

when you change the toggles for the history or the theme and reload the page it should save the setting you selectedd

Update Developer Profile Links in About Page

Description:
In the About page's developer section, the links to developers' profiles are currently redirecting to "devfinder.ome9a.com/{developer_id}" format. However, DevFinder profiles are accessible via "devfinder.ome9a.com/@{developer_id}" when the developer's ID starts with "@". This results in an error page for developers without "@" in their IDs.

Proposed Solution:
Update the developer profile links in the About page to follow the correct format, redirecting to "devfinder.ome9a.com/@{developer_id}" for consistent and error-free profile viewing.

This enhancement will improve the user experience and ensure that users are directed to the correct DevFinder profiles.

Accessibility

Check boxes need to be able to be selected on enter
if you focus tab to a check box and press enter it does not toggle

This is helpful for users that have physical motor conditions or a broken mouse.

Selected Item Status Not Resetting to Zero After Deletion in History Tab

Description:
In the history tab, when selecting password history items to delete, the status displaying the number of selected passwords does not reset to zero after deletion. If passwords are selected, deleted, and then additional items are selected, the status starts counting from the previously selected number instead of resetting to zero.

Steps to Reproduce:

  1. Open the history tab.
  2. Select a certain number of password history items for deletion.
  3. Delete the selected items.
  4. Attempt to select new items for deletion.

Expected Behavior:
The selected item status should reset to zero after deleting passwords. Subsequent selections should start counting from zero.

Actual Behavior:
After deletion, the selected item status retains the previously selected number, causing confusion in the count.

Additional Information:
A video recording demonstrating the issue is available.

Password.-.Generate.secure.and.random.passwords.and.2.more.pages.-.Personal.-.Microsoft.Edge.2023-11-23.09-05-01.compressed.mp4

Upgrade Password Website to Next.js

Description:
As the maintainer of the Password website, I propose upgrading our current implementation from Pure React to Next.js. Here are the reasons behind this proposal:

  1. Improved SEO: Next.js provides built-in support for server-side rendering (SSR), which can enhance search engine optimization (SEO) by delivering fully-rendered HTML pages to crawlers.

  2. Enhanced Performance: Next.js optimizes the performance of web applications through features like automatic code splitting and pre-fetching. This can lead to faster page loads and a better user experience.

  3. Simplified Routing: Next.js simplifies the routing process with its file-system-based routing system, making it easier to organize and manage routes.

  4. Static Site Generation (SSG): Next.js supports static site generation, allowing us to pre-render pages at build time. This can further improve performance and reduce the load on servers.

  5. Community and Ecosystem: Next.js has a vibrant community and a rich ecosystem of plugins and tools that can benefit the development and maintenance of our Password website.

Steps to Upgrade:

  1. Assess the current codebase and identify areas that need modification.
  2. Integrate Next.js into the project.
  3. Update components and routes to align with Next.js conventions.
  4. Test thoroughly to ensure the website maintains its current functionality.

Additional Notes:
Please feel free to share your thoughts and feedback on this proposal. If there are specific concerns or considerations, let's discuss them collaboratively.

References:

Update README to Reflect Project-Specific Information

Title: Update README to Reflect Project-Specific Information

Issue:

The current README.md file in the project repository is the default template provided by React.js. It needs to be updated to accurately represent the features, setup instructions, and guidelines specific to our Password Generator project.

Description:

The README file plays a crucial role in providing users and contributors with essential information about our Password Generator application. The current content lacks project-specific details, including the features, setup instructions, and contribution guidelines.

This issue aims to update the README file with the following key information:

  1. Features: Highlight the unique features of our Password Generator, such as password customization options, password history, clipboard functionality, and history management.

  2. Getting Started: Provide clear and comprehensive steps for users to clone the repository, install dependencies, and run the application locally.

  3. Contribution Guide: Clearly outline the contribution process, including forking the repository, creating branches, and submitting pull requests. It should also direct contributors to review our Contributing Guidelines and Code of Conduct for a smooth collaboration.

  4. License Information: Retain or update details regarding the project's license (MIT License) to ensure legal compliance.

Tasks:

  • Review the existing README file.
  • Update the file with project-specific details, including Features, Getting Started, Contributing, and License sections.
  • Ensure clarity and accuracy in the instructions provided.

Additional Notes:

The updated README file will not only guide users on using the Password Generator but also encourage community engagement through contributions while maintaining compliance with our project's licensing terms.

Assigned: @baliramStrikes

Labels:

  • documentation
  • help wanted
  • good first issue (if appropriate for newcomers)

The revised README will serve as a clear guide for users and potential contributors, enhancing the overall accessibility and understanding of our Password Generator project.

Accessibility Settings

Add a section to the settings for accessibility, include the wcag icon

image

should include a button that takes key input, to edit the key board select button
colors
size for fonts

all should be saved in local storage

Add Contributors Section to About Page

Description:
Add a contributors section to the About page, showcasing individuals who have contributed to the project. This section will acknowledge and highlight the valuable contributions made by the project's contributors.

Implementation Details:

  • Create a new section in the About page dedicated to listing contributors.
  • Display contributors' names along with their GitHub avatars or any other relevant information.
  • Automate the process of updating the contributors' list based on GitHub contributions.

Expected Outcome:
The contributors section should serve as a recognition and appreciation space for individuals who have contributed to the project.

Create Privacy Policy Page

Description:
As part of ensuring compliance with privacy regulations and enhancing transparency, we need to create a dedicated Privacy Policy page for our extension.

Tasks:

  1. Content Creation:

    • Draft a comprehensive privacy policy document outlining how user data is handled.
    • Include information about the types of data collected, how it's used, and any third-party services involved.
  2. Page Design:

    • Design and structure the Privacy Policy page to ensure it aligns with our extension's visual style.
    • Consider adding links or buttons for easy navigation.
  3. Integration:

    • Integrate the Privacy Policy page into the extension's user interface, ensuring users can easily access it.
  4. Testing:

    • Conduct thorough testing to ensure the Privacy Policy page displays correctly and is accessible on various devices.

Additional Information:

  • Refer to legal guidelines and best practices for crafting the privacy policy content.
  • Ensure the privacy policy reflects the actual data handling practices of our extension.

Dependabot in contributors listing

Dependabot as apart of the contributors, but the image is blank, the is alt="green iguana" this is clearly a placeholder
the alt tag should be the contributors name + profile picture

for missing srcs we need a placeholder image some thing like image = "https://github.com/${item.login}.png" | placeholder.png
image

in fairness not sure if Dependabot needs to be in the list and we can just check if item.login == Dependabot

Home Icon conditionally renders in the about page

image

I recommend adding a Home icon here
this will make it easy to go back to the main app when at the about page

image

It doesn't need to be conditional as the about us group icon appears in the about page

"
<Box sx={{ display: "flex", alignItems: "center", gap: 1 }}>
<Box
sx={{
borderRadius: 3,
padding: 1,
boxShadow: boxShadow,
bgcolor: palette.background.default,
}}
>
<Link
to={"/"}
title="About"
style={{
display: "flex",
justifyContent: "center",
alignItems: "center",
color: palette.text.primary,
}}
>



<Box
sx={{
borderRadius: 3,
padding: 1,
boxShadow: boxShadow,
bgcolor: palette.background.default,
}}
>
<Link
to={"/about"}
title="About"
"

Implement a footer for the website

Description:

Currently, the "password" website lacks a footer, which can provide valuable information and improve the overall user experience. To enhance the website's functionality and provide a more comprehensive experience, we propose implementing a footer that includes essential elements such as copyright information, contact details, and links to relevant pages.

Benefits of adding a footer:

  • Improved user experience: A well-designed footer can enhance the user experience by providing easy access to essential information and navigation options.

  • Enhanced website credibility: A footer with copyright information and contact details can instill trust and credibility in the website.

  • Consistent branding: A footer can maintain brand consistency by incorporating brand elements such as logos, color schemes, and typography.

Tasks:

  1. Design the footer layout: Create a visually appealing and user-friendly footer layout that aligns with the overall website design.

  2. Implement footer elements: Include essential elements in the footer, such as:

    • Copyright information: Clearly state the website's copyright year and ownership.
    • Contact details: Provide contact information, such as email address and contact form, for users to reach out to website administrators.
    • Links to relevant pages: Include links to important pages, such as the privacy policy, terms of service, and about us page.
  3. Integrate footer into the website: Seamlessly integrate the designed footer into the website's existing layout, ensuring compatibility across different browsers and devices.

  4. Test and refine: Thoroughly test the footer implementation to ensure it functions correctly and enhances the user experience. Make necessary adjustments based on testing results.

Add Metadata to About Page

Description:
Enhance the About page by incorporating metadata for improved SEO and user experience. Metadata, including the page title, description, and canonical URL, is essential for search engine visibility and presenting accurate information to users when they access the About page.

Tasks:

  1. Integrate React Helmet:

    • Install and configure the react-helmet package to manage metadata for React components.
  2. Set Metadata for About Page:

    • Dynamically set the page title to "Password Generator - About."
    • Add a concise and informative description for the page.
    • Set the canonical URL to the appropriate address.
  3. Review and Testing:

    • Ensure the metadata is correctly displayed in the document head.
    • Test the About page on different devices and browsers to confirm proper rendering.

Additional Information:

  • Refer to existing metadata patterns used in other pages for consistency.
  • Document any specific metadata requirements for the About page.

Password Strength Calcul

Title: Feature Request: Password Strength Calculator

Body:

Hello,

I would like to propose a new feature for our application - a Password Strength Calculator. This feature would provide real-time feedback to users about the strength of their passwords when they are setting or changing them.

Feature Description:

The Password Strength Calculator would analyze the user's password and calculate its strength based on various factors such as length, use of upper and lower case letters, numbers, special characters, etc. It would then display a strength indicator (e.g., Weak, Medium, Strong) to the user.

Benefits:

  1. Enhanced Security: By encouraging users to create stronger passwords, we can enhance the overall security of our application.
  2. Improved User Experience: Providing real-time feedback can make the process of creating a password more interactive and informative, improving the overall user experience.

Implementation Details:

While I don't have a specific implementation in mind, I believe this feature could be implemented using existing libraries or custom logic. It would be great to discuss this further with the team.

Looking forward to hearing your thoughts on this.

Best,
@0ME9A

Passwords can be generated with out required elements

_%:R[DeW?+d

this password was generated even though I asked for a number

xS?|}Klr{mty

no cap
)s?#2:>apx=2

Users will need specific items in the password for many reasons mostly because apps require these options
either use regex to test the generated item or look into another solution that will generate the password by randomizing the options, then the length, then ensure strength

like a hash map or dictionary pool of the options

Missing Contributing Guidelines and Code of Conduct Files

Title: Missing Contributing Guidelines and Code of Conduct Files

Hello,

I've noticed that the repository is missing the CONTRIBUTING.md and CODE_OF_CONDUCT.md files. These files are important for setting the expectations for contributors and maintaining a healthy and respectful community.

Issue Description:

  1. Contributing Guidelines: This file should provide instructions for how to contribute to the project, such as how to set up the development environment, how to submit a pull request, and the coding standards and conventions to follow.

  2. Code of Conduct: This file should outline the expected behavior for participants in the project, as well as the consequences for unacceptable behavior. It should also provide information on who to contact in case of violations.

Proposed Solution:

Create the CONTRIBUTING.md and CODE_OF_CONDUCT.md files with the appropriate content.

Thank you for considering this issue. I believe that adding these files would significantly improve the contributor experience and the overall health of the project.

Best,
@0ME9A

Feature Request: Password History

Title: Feature Request: Password History

Hello,

I'm using your password generator for a project and it's been incredibly helpful. However, I've noticed that there's no way to access previously generated passwords. This can be problematic if a user forgets to save a password or accidentally navigates away from the page.

Feature Description:

I propose the addition of a "Password History" feature. This would allow users to view and access their previously generated passwords. Ideally, this feature would:

  • Store a certain number of the most recently generated passwords (e.g., the last 10).
  • Display these passwords in a dedicated "Password History" section.
  • Allow users to easily copy these passwords to their clipboard.

Benefits:

  • Users can recover a password if they forget to save it.
  • Users can compare different passwords they've generated.
  • Enhances the overall user experience by providing a safety net for users.

Thank you for considering this feature request. I believe that the addition of a "Password History" feature would significantly improve the utility and user-friendliness of the password generator.

Best,
@0ME9A

Store history in local storage

The history of passwords can be saved locally with the local storage

this way users will have passwords for a longer period of time
On make a password or add to history
// Retrieve the existing passwords array from localStorage
const existingPasswords = localStorage.getItem("passwords")
? JSON.parse(localStorage.getItem("passwords"))
: [];

// Create a new password and push it to the existing array
const newPassword = "yourNewPassword"; // Replace with your actual password or password object
existingPasswords.push(newPassword);

// Save the updated array back to localStorage
localStorage.setItem("passwords", JSON.stringify(existingPasswords));

Feature Request: Add Copy Button in History List

Title: Feature Request: Add Copy Button in History List

Hello,

I'm using your password generator for a project and it's been incredibly helpful. However, I've noticed that there's no easy way to copy passwords from the history list. This can be a bit inconvenient if a user wants to quickly copy a previously generated password.

Feature Description:

I propose the addition of a "Copy" button for each item in the history list. This would allow users to easily copy a password from the history list to their clipboard. Ideally, this feature would:

  • Add a "Copy" button next to each password in the history list.
  • Copy the password to the user's clipboard when the "Copy" button is clicked.

Benefits:

  • Users can easily copy a password from the history list without having to manually select and copy it.
  • Enhances the overall user experience by providing a quick and convenient way to copy passwords.

Thank you for considering this feature request. I believe that the addition of a "Copy" button in the history list would significantly improve the utility and user-friendliness of the password generator.

Best,
@0ME9A

Add Metadata to Privacy Policy Page

Description:
We need to enhance the Privacy Policy page by adding appropriate metadata for better SEO and user experience. Metadata includes elements such as the page title, description, canonical URL, and any other relevant information. This will help improve search engine visibility and provide users with accurate information when they encounter the Privacy Policy page.

Tasks:

  1. Integrate React Helmet:

    • Install and configure the react-helmet package to manage metadata for React components.
  2. Set Metadata for Privacy Policy Page:

  3. Review and Testing:

    • Ensure the metadata is correctly displayed in the document head.
    • Test the Privacy Policy page on different devices and browsers to confirm proper rendering.

Additional Information:

  • Refer to existing metadata patterns used in other pages for consistency.
  • Document any specific metadata requirements for the Privacy Policy page.

Add Instant Copy Checkbox in Advanced Settings

Description:
Introduce a new feature in the settings tab, specifically within the advanced settings section, that allows users to instantly copy a newly generated password without requiring an additional click on the copy button. This feature will be implemented as a checkbox, and when checked, the generated password will automatically be copied to the clipboard upon generation.

Tasks:

  1. Design and UI:

    • Create a checkbox element within the advanced settings section of the settings tab.
    • Ensure the checkbox is appropriately labelled, providing clear instructions about its functionality.
  2. Functionality Implementation:

    • Implement the necessary logic to copy the generated password instantly if the checkbox is checked.
    • Include an option to disable this feature for users who prefer the traditional copy button.
  3. Testing:

    • Conduct thorough testing to ensure the new feature works seamlessly across different browsers and devices.
    • Check for potential conflicts with other settings or functionalities.
  4. Documentation:

    • Update relevant documentation, such as the user guide or tooltips, to inform users about the new feature.

Additional Information:

  • Consider user feedback and preferences to refine the implementation.
  • Ensure the feature aligns with the overall user experience and doesn't introduce confusion.

Accessibillity Issue in dark mode

Describe the bug
Hard to read this about us How to Get Started purple text in dark mode

To Reproduce
visual bug
be in dark mode
go to about us page

Expected behavior
make the text readable try black or white and be sure to check for the theme

Screenshots

image

Desktop (please complete the following information):

  • OS: Linux fedora
  • Browser Brave
  • Version [e.g. 22]

Create About Page

Description:
We need to create an "About" page for our website to provide users with information about both the website and the associated extension. This page should give an overview of our mission, features, and how users can benefit from both the website and the extension.

Tasks:

  1. Content Creation:

    • Draft content for the "About" page that includes information about the website and extension.
    • Highlight key features, mission, and how users can get started.
  2. Page Design:

    • Design the layout and structure of the "About" page to ensure it aligns with our website's visual style.
    • Consider using Material-UI components for a cohesive design.
  3. Integration:

    • Integrate the "About" page into our website, making it accessible through the navigation menu.
  4. Testing:

    • Conduct thorough testing to ensure the "About" page displays correctly and is responsive on various devices.

Additional Information:

  • Refer to our existing pages and style guide for consistency.
  • Consider including links to relevant sections such as the extension repository and the main project on GitHub.

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.