Giter Club home page Giter Club logo

first-issue's Introduction


Welcome! ๐Ÿ‘‹๐Ÿผ

First Issue is an initiative to curate a list of accessible issues from popular projects, so developers looking for a new (or first) project to contribute to can get started quickly.

Open-source maintainers are always looking to get more people involved, but it can be challenging to become a contributor. We believe First Issue lowers the barrier for future contributions - and this is why it exists.

Adding a new project

You're welcome to add a new project in First Issue, just follow these steps:

  • To maintain the quality of projects in First Issue, please make sure the GitHub repository you want to add meets the following criteria:

    • It has at least three issues with the good first issue label or other labels defined in config.json (see labels and the end).

    • It has at least 10 contributors.

    • It has at least 1000 stars.

    • It contains a README.md with detailed setup instructions for the project, and a CONTRIBUTING.md with guidelines for new contributors.

    • It is actively maintained (last update less than 1 month ago).

  • Add your repository's path (in the format owner/name and lexicographic order) to config.json.

  • Create a new pull-request. Please add the link to the issues page of the repository in the PR description. Once the pull request is merged, the changes will be live on firstissue.dev.

Help us grow

Navigating open-source projects can be quite overwhelming for begineers and experienced contributers alike. First-issue looks to solve this problem by providing a platform that serves as a starting point for those looking to get started with open-source or those who are looking to get into a new project.

How to help

It's easy! The more people who know about FirstIssue.dev, the better. There are various ways you can help us grow:

  • Contribute to awesome lists. Everyone uses them. They are community built resources on a wide variety of topics. Find one that relates to getting started with open-source and get FirstIssue.dev put in there. You could even create one yourself!
  • Blog about us. Have you ever used FirstIssue.dev and do you like what we are doing? Share your experience on platforms like:
  • Reach out to bloggers, tech influencers, developer and open-source on Twitter and YouTube, for example. Try and get FirstIssue.dev mentioned in a video or tweet!
  • Make a guide, like a blog post or a video. Teaching is a great way to learn: share your experience getting started in open-source and mention us in your content ๐Ÿ˜‰
  • Be creative! This is a non-comprehensive list of ideas. Once you have written an article, recorded a video, or have gotten us mentioned somewhere, come back here and let us know!

How does it work?

First Issue is a static website that uses Next.js, React and Typescript. The data shown on the website is loaded from the data.json file, which is generated by data/get.ts by querying the GitHub API to fetch issues from the repositories listed in config.json. The labels defined in config.json are used to filter issues for the repositories.

To contribute new features and changes to the website, you would want to run the app locally. Please follow these steps:

How to setup the project locally

  1. Fork the repository, clone it locally, create a new branch to work on a specific feature or bug fix without affecting the main branch of the repository. Make sure you have a recent version of Node.js installed on your computer.
  2. You can use the included data.json as dummy data or you can run npm run prebuild to fetch the latest data from GitHub yourself: for this, you will need to set the GH_PERSONAL_ACCESS_TOKEN environment variable to a valid GitHub Personal Access Token (PAT). Notice: repositories not maching the criteria listed above (see rules in data.jsonare automatically removed from config.json when the [data.json]data/data.json) script runs.
  3. Start the development server and open the app in your browser.
# install the dependencies
$ npm install
# start the development server
$ npm run dev

Good to know when you commit: the project contains a pre-commit hook that runs linters automatically to ensure code quality!

Credits

This project is based on good-first-issue. The app and generation scripts have been rewritten using Next.js, React and Typescript, new features have been added and the UI is being updated too. The deployment process has been streamlined, complexity has been reduced and further improvements are planned.

Special thanks to @chidame for UI/UX improvements, product management tips and help with the community.

first-issue's People

Contributors

lucavallin avatar dependabot[bot] avatar isaacwashere avatar cloudhoy avatar senatrius avatar talboren avatar vhalennng avatar vedantkhairnar avatar romeshkosme avatar rsaz avatar mwestphal avatar madisurya avatar clarerodev avatar thebarshablog avatar austinmay1 avatar atul8766 avatar anupama-pathirage avatar azigler avatar alitaimoor 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.