Git Product home page Git Product logo

gprg's Introduction

What is GPRG?

The GitHub Profile Readme Generator is a user-friendly web application that simplifies the process of creating a visually appealing and informative README for your GitHub profile. A well-crafted README can help you showcase your skills, projects, and personality, making a lasting impression on visitors to your GitHub profile. With this tool, you can create a personalized and professional README in just a few clicks, enhancing your online presence and attracting more attention from the GitHub community.

Hacktoberfest

All Pull Requests with the Hacktoberfest label will count towards Hacktoberfest.

If you are a new contributor to this project, have a look out for issues that have the Hacktoberfest label.

Tech Stack

GPRG is built using the following technologies:

  • Next.js - a framework for building server-rendered React applications.

  • Typescript - a strongly typed programming language that builds on JavaScript.

  • Tailwind CSS - a utility-first CSS framework.

Quickstart

  1. Clone the repository: git clone https://github.com/your-username/GPRG

  2. Navigate to the project directory: cd GPRG

  3. Install dependencies: npm install

  4. Start the development server: npm run dev

  5. Open your browser and navigate to http://localhost:3000 to see the app in action.

Contributing

Contributions are always welcome!

  1. Fork the repository.
  2. Create a new branch: git checkout -b branch-name
  3. Commit your changes: git commit -m 'Add some feature'
  4. Push to the branch: git push -u origin branch-name
  5. Create a pull request.

See CONTRIBUTING.md for ways to get started.

gprg's People

Contributors

khairalanam avatar nayakswadhin avatar saswat10 avatar dependabot[bot] avatar smitkhobragade avatar

Stargazers

 avatar  avatar Raj Aryan avatar

Watchers

 avatar

gprg's Issues

Convert mdx to plain markdown

This is one of the issues I am currently working on and it's absolutely important. Here are the requirements and what's going on:

  • I have the form data stored in the local storage.
  • I am fetching the data from local storage to convert these form data into MDX (You can read about MDX here)
  • I use TSX to make my markdown components and import them to the main mdx file.
  • Finally, I have to convert this MDX to a plain markdown and display this markdown on the next page (after the form submission).
  • This markdown text can be displayed in a textarea tag for others to copy the markdown.

The above are the steps to solve this issue. However, you can start working on the fourth step since the previous three steps are done already.

Change the navigation bar on mobile view

The current navigation bar on the mobile view is just the same as the desktop view except smaller. I would like this navigation bar to be a hamburger menu.

  • The navigation bar has to be smooth on opening the menu and closing the menu, i.e., use transitions.
  • The navigation bar has to cover the entire mobile viewport with a dark background in low opacity.
  • The icons for hamburger and "X" must either be used from react-icons or can be done using plain CSS.

Add accessibility tags for the pages

The current project follows a basic level of accessibility, for instance, HTML semantic tags. However, the project doesn't incorporate the use of aria-labels and other accessibility tags. To anyone who is contributing for accessibility, you must be sending PRs for each page and not send a huge PR.

Write unit tests

The current project doesn't have any tests to make sure the code is secure. Here are the guidelines when it comes to writing tests:

  • All the unit tests must be included in the root directory under the tests folder
  • Even though there is no defined structure for the tests folder structure, the tests folder structure may follow the same structure as the main project structure except that each folder has to be appropriately labeled.
  • You must use Jest as your testing framework.
  • Your PR should only address testing of either one or a maximum of two components. If you want to write tests for more components, send the appropriate PRs for each component.

Update README

The current readme is just a Nextjs-generated readme and has to be updated. The readme has to include these sections (not in order):

  • Small introduction
  • Setup documentation (must include commands to set up the project)
  • contributing guide (keep it short) and should link to CONTRIBUTING.md
  • tech stack used

You may include other sections as you wish but the above four must be included.

Improve on the website design

The current website design is pretty minimal but boring. Here are some things you can work on:

  • Main page
  • Contact page
  • About page

Since this is a small but good issue to work on, you can design and develop all the above-mentioned pages and send them as one single PR. We can discuss here more about what colors, designs, and typography to use. Once all these are decided, you can start working on the issue. Plus, you can add some information to the above-mentioned pages but has to be appropriate to the project.

Handle the errors and inputs for the main form

The main form doesn't have any kind of indication to know whether a certain input is handling valid input or not, or whether a certain input is required or not. Here are some of the things you can work on:

  • Certain fields are considered required and there are some fields that are multiple in number but only some of them are required. If a user doesn't fill these inputs and tries to submit the form, it has to be alerted by indicating in red which fields are required.
  • There are many fields that handle certain types of inputs like numbers and links. The user has to give the correct input and has to be alerted in case the user provides an invalid input. For instance, if a user provides a number for an input that only accepts links, then it has to be alerted just under the input that the user must provide a link.

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.