{"id":15048233,"url":"https://github.com/github/forgoodfirstissue","last_synced_at":"2025-04-04T17:04:17.541Z","repository":{"id":194217361,"uuid":"690352125","full_name":"github/forgoodfirstissue","owner":"github","description":"Find your first issue for good to contribute to","archived":false,"fork":false,"pushed_at":"2025-03-29T00:29:18.000Z","size":1264,"stargazers_count":120,"open_issues_count":13,"forks_count":53,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-29T01:26:52.189Z","etag":null,"topics":["github","open-source"],"latest_commit_sha":null,"homepage":"https://forgoodfirstissue.dev/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/github.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-12T03:07:11.000Z","updated_at":"2025-03-28T03:43:36.000Z","dependencies_parsed_at":"2023-09-26T09:58:48.676Z","dependency_job_id":"e11df0cf-6ab6-4b86-9e20-5ed3c439f3f5","html_url":"https://github.com/github/forgoodfirstissue","commit_stats":{"total_commits":282,"total_committers":15,"mean_commits":18.8,"dds":0.3014184397163121,"last_synced_commit":"9f714a9d4ca49f462cc7727069eceaf6b2266413"},"previous_names":["rubyforgood/happycommits","rubyforgood/forgoodfirstissue","github/forgoodfirstissue"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fforgoodfirstissue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fforgoodfirstissue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fforgoodfirstissue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fforgoodfirstissue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/github","download_url":"https://codeload.github.com/github/forgoodfirstissue/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247217174,"owners_count":20903008,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github","open-source"],"created_at":"2024-09-24T21:09:37.942Z","updated_at":"2025-04-04T17:04:17.520Z","avatar_url":"https://github.com/github.png","language":"TypeScript","readme":"Welcome! 👋🏼\n\n**For Good First Issue** curates social impact and civic tech open source projects that are looking for contributors and lists issues on those projects that are tagged with Help Wanted or Good First Issue.\n\nOpen-source maintainers are always looking to get more people involved, but it can be challenging to become a contributor. For Good First Issue lowers the barrier for future contributions to social and civic good projects - and this is why it exists.\n\n## Adding a new project\n\nYou're welcome to add a new project in For Good First Issue, just follow these steps:\n\n- To maintain the quality of projects in For Good First Issue, please make sure the GitHub repository you want to add meets the following criteria:\n\n  - It is a social impact or civic tech project.\n\n  - Ideally, it tags its issues with `help wanted` or `good first issue`.\n\n  - In the repository description it lists the sdg(s) it is working on. See [here](https://github.com/rubyforgood/human-essentials) for an example.\n\n  - It contains a README.md with detailed setup instructions for the project, and a CONTRIBUTING.md with guidelines for new contributors.\n\n  - It is actively maintained (last update less than 1 month ago).\n\n- Add your repository's path (in the format `owner/name` and lexicographic order) to [happycommits.json](happycommits.json).\n\n- 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 the site.\n\n## How does it work?\n\nFirst Issue is a static website that uses Next.js, React and Typescript. The data shown on the website is loaded from the [generated.json](generated.json) file, which is generated by [generate.ts](generate.ts) by querying the GitHub API to fetch issues from the repositories listed in [happycommits.json](happycommits.json). The labels defined in [happycommits.json](happycommits.json) are used to filter issues for the repositories.\n\nTo contribute new features and changes to the website, you would want to run the app locally. Please follow these steps:\n\n\n## How to setup the project locally\n1. 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.\n1. You can use the included [generated.json](generated.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 matching the criteria listed above (see rules in [generated.json](generated.json)) are automatically removed from [happycommits.json](happycommits.json) when the [generated.json](generated.json) script runs.\n1. Start the development server and open the app in your browser.\n\n```bash\n# install the dependencies\n$ npm install\n# start the development server\n$ npm run dev\n```\n\nGood to know when you commit: the project contains a `pre-commit` hook that runs linters automatically to ensure code quality!\n\n#### Credits\n\nThis project is based on [good-first-issue](https://github.com/deepsourcelabs/good-first-issue) and [first-issue](https://github.com/lucavallin/first-issue).\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithub%2Fforgoodfirstissue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgithub%2Fforgoodfirstissue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithub%2Fforgoodfirstissue/lists"}