[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-610":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":10,"languages":10,"totalLinesOfCode":10,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":15,"starSnapshotCount":15,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},610,"first-contributions","firstcontributions\u002Ffirst-contributions","firstcontributions","🚀✨ Help beginners to contribute to open source projects","https:\u002F\u002Ffirstcontributions.github.io",null,54427,104092,518,58,0,19,92,497,86,45,"MIT License",false,"main",true,[26,27,28,29,30,31,32,33,34,35],"beginner","beginner-friendly","contribute","contribution","contributions-welcome","good-first-contribution","good-first-issue","good-first-pr","open-source","tutorial","2026-06-12 02:00:16","[![Open Source Love](https:\u002F\u002Ffirstcontributions.github.io\u002Fopen-source-badges\u002Fbadges\u002Fopen-source-v1\u002Fopen-source.svg)](https:\u002F\u002Fgithub.com\u002Ffirstcontributions\u002Fopen-source-badges)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg)](https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT)\n[![Open Source Helpers](https:\u002F\u002Fwww.codetriage.com\u002Froshanjossey\u002Ffirst-contributions\u002Fbadges\u002Fusers.svg)](https:\u002F\u002Fwww.codetriage.com\u002Froshanjossey\u002Ffirst-contributions)\n\n#### _Read this in [other languages](docs\u002Ftranslations\u002FTranslations.md)._\n\u003Ckbd>[\u003Cimg title=\"Shqip\" alt=\"Shqip\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fal.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.al.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Armenian\" alt=\"Armenian\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fam.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.arm.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Uzbek\" alt=\"Uzbek language\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fuz.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.uz.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Azərbaycan dili\" alt=\"Azərbaycan dili\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Faz.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.aze.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"বাংলা\" alt=\"বাংলা\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fbd.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.bn.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Bulgarian\" alt=\"Bulgarian\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fbg.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.bg.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Português (Brasil)\" alt=\"Português (Brasil)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fbr.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.pt_br.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Català\" alt=\"Català\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fcatalan1.png\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ca.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"中文 (Simplified)\" alt=\"中文 (Simplified)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fcn.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.zh-cn.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Czech\" alt=\"Czech\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fcz.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.cs.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Deutsch\" alt=\"Deutsch\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fde.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.de.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Dansk\" alt=\"Dansk\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fdk.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.da.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"المصرية\" alt=\"المصرية\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Feg.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.eg.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Dezéiriya\" alt=\"Dezéiriya\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fdz.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.dz.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Español de España\" alt=\"Español de España\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fes.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.es.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Française\" alt=\"Française\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ffr.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.fr.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Gaeilge\" alt=\"Gaeilge\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fie.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ga.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Galego\" alt=\"Galego\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002F6\u002F64\u002FFlag_of_Galicia.svg\u002F1200px-Flag_of_Galicia.svg.png\" width=\"22\">](docs\u002Ftranslations\u002FREADME.gl.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Ελληνικά\" alt=\"Ελληνικά\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fgr.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.gr.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"ქართული\" alt=\"ქართული\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fge.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ge.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Magyar\" alt=\"Magyar\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fhu.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.hu.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Bahasa Indonesia\" alt=\"Bahasa Indonesia\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fid.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.id.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"עִברִית\" alt=\"עִברִית\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fil.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.hb.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"ગુજરાતી \u002F हिन्दी \u002F मराठी \u002F മലയാളം \u002F ಕನ್ನಡ \u002F తెలుగు \u002F ଓଡିଆ \u002F छत्तीसगढ़ी \u002F ਪੰਜਾਬੀ\" alt=\"ગુજરાતી \u002F हिन्दी \u002F मराठी \u002F മലയാളം \u002F ಕನ್ನಡ \u002F తెలుగు \u002F ଓଡିଆ \u002F छत्तीसगढ़ी \u002F ਪੰਜਾਬੀ\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fin.svg\" width=\"22\">](docs\u002Ftranslations\u002FTranslations.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"தமிழ்\" alt=\"தமிழ்\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Flk.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ta.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"فارسی\" alt=\"فارسی\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fb\u002Fba\u002FFlag_of_Iran_before_1979_Revolution.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.fa.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Italiano\" alt=\"Italiano\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fit.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.it.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"日本語\" alt=\"日本語\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fjp.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ja.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"සිංහල\" alt=\"සිංහල\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Flk.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.si.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Kiswahili (Kenya)\" alt=\"Kiswahili (Kenya)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fke.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.kws.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"한국어\" alt=\"한국어\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fkr.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ko.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Lietuvių kalba\" alt=\"Lietuvių kalba\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Flt.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.lt.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Limba Română\" alt=\"Limba Română\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmd.svg\" width=\"22\"> \u003Cimg title=\"Limba Română\" alt=\"Limba Română\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fro.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ro.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"မြန်မာ\" alt=\"မြန်မာ\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmm.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.mm_unicode.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Македонски\" alt=\"Македонски\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmk.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.mk.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Español de México\" alt=\"Español de México\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmx.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.mx.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Bahasa Melayu \u002F بهاس ملايو‎ \u002F Malay\" alt=\"Bahasa Melayu \u002F بهاس ملايو‎ \u002F Malay\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmy.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.my.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Dutch\" alt=\"Dutch\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fnl.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.nl.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Norsk\" alt=\"Norsk\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fno.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.no.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"नेपाली\" alt=\"नेपाली\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fnp.svg\" width=\"15\">](docs\u002Ftranslations\u002FREADME.np.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Wikang Filipino\" alt=\"Wikang Filipino\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fph.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.fil.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"English (Pirate)\" alt=\"English (Pirate)\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fpirate.png\" width=\"22\">](docs\u002Ftranslations\u002FREADME.en-pirate.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"اُاردو\" alt=\"اردو\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fpk.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ur.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Twi (Ghana)\" alt=\"Twi (Ghana)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fgh.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.gh.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Polski\" alt=\"Polski\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fpl.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.pl.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Português (Portugal)\" alt=\"Português (Portugal)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fpt.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.pt-pt.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Русский язык\" alt=\"Русский язык\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fru.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ru.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"العربية\" alt=\"العربية\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fsa.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ar.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Svenska\" alt=\"Svenska\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fse.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.se.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Slovenčina\" alt=\"Slovenčina\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fsk.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.slk.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Slovenščina\" alt=\"Slovenščina\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fsi.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.sl.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"ภาษาไทย\" alt=\"ภาษาไทย\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fth.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.th.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Türkçe\" alt=\"Türkçe\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ftr.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.tr.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"中文(Traditional)\" alt=\"中文(Traditional)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ftw.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.zh-tw.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Українська\" alt=\"Українська\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fua.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ua.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Tiếng Việt\" alt=\"Tiếng Việt\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fvn.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.vn.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Tanzania\" alt=\"Swahili language\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ftz.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.sw.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Zulu (South Africa)\" alt=\"Zulu (South Africa)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fza.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.zul.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Afrikaans (South Africa)\" alt=\"Afrikaans (South Africa)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fza.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.afk.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Igbo (Nigeria)\" alt=\"Igbo (Nigeria)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fng.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.igb.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Bambara (Mali)\" alt=\"Bambara (Mali)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fml.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.mli.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Hausa (Nigeria)\" alt=\"Hausa (Nigeria)\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002F5\u002F5d\u002FFlag_of_the_Hausa_people.svg\u002F1280px-Flag_of_the_Hausa_people.svg.png\" width=\"22\">](docs\u002Ftranslations\u002FREADME.hau.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Yoruba (Nigeria)\" alt=\"Yoruba (Nigeria)\" src=\"https:\u002F\u002Fwww.fotw.info\u002Fimages\u002Fn\u002Fng%7Deoyor.gif\" width=\"22\">](docs\u002Ftranslations\u002FREADME.yor.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Latvia\" alt=\"Latvia\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Flv.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.lv.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Suomeksi\" alt=\"Suomeksi\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ffi.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.fi.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Беларуская мова\" alt=\"Беларуская мова\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fby.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.by.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Српски\" alt=\"Српски\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Frs.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.sr-Cyrl.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Srpski\" alt=\"Srpski\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Frs.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.sr-Latn.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Қазақша\" alt=\"Қазақша\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fkz.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.kz.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Bosanski\" alt=\"Bosanski\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fba.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.bih.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Hrvatski\" alt=\"Hrvatski\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fhr.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.hr.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"پښتو\" alt=\"پښتو\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Faf.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ps.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Af-soomaali\" alt=\"Somalia\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fso.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.so.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Español de Ecuador\" alt=\"Ecuador\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fec.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ec.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Luganda (Uganda)\" alt=\"Luganda (Uganda)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fug.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.lug.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Turkmen\" alt=\"Turkmen language\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ftm.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.tm.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Ewe (TOGO)\" alt=\"Ewe (TOGO)\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ftg.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ewe.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"አማርኛ\" alt=\"አማርኛ\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fet.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.am.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Kurdî\" alt=\"Kurdî\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002F3\u002F35\u002FFlag_of_Kurdistan.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.kr.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Malagasy\" alt=\"Malagasy\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmg.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.mg.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"ភាសាខ្មែរ\" alt=\"ភាសាខ្មែរ\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fkh.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.kh.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Morocco\" alt=\"Moroccan Darija\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fma.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ma.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Mongolian\" alt=\"Mongolian\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fmn.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.mn.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Tounsi\" alt=\"Tounsi\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Ftn.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.tn.md)\u003C\u002Fkbd>\n\u003Ckbd>[\u003Cimg title=\"Lingala\" alt=\"Lingala\" src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fhampusborgos\u002Fcountry-flags@main\u002Fsvg\u002Fcd.svg\" width=\"22\">](docs\u002Ftranslations\u002FREADME.ln.md)\u003C\u002Fkbd>\n\n# First Contributions\n\nThis project aims to simplify and guide the way beginners make their first contribution. If you are looking to make your first contribution, follow the steps below.\n\n_If you're not comfortable with command line, [here are tutorials using GUI tools.](#tutorials-using-other-tools)_\n\n\u003Cimg align=\"right\" width=\"300\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Ffork.png\" alt=\"fork the repository\" \u002F>\n\n#### If you don't have git on your machine, [install it](https:\u002F\u002Fdocs.github.com\u002Fen\u002Fget-started\u002Fquickstart\u002Fset-up-git).\n\n## Fork this repository\n\nFork this repository by clicking on the fork button on the top of this page.\nThis will create a copy of this repository in your account.\n\n## Clone the repository\n\n\u003Cimg align=\"right\" width=\"300\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fclone.png\" alt=\"clone the repository\" \u002F>\n\nNow clone the forked repository to your machine. Go to your GitHub account, open the forked repository, click on the code button, then on SSH tab and then click the _copy url to clipboard_ icon.\n\nOpen a terminal and run the following git command:\n\n```bash\ngit clone \"url you just copied\"\n```\n\nwhere \"url you just copied\" (without the quotation marks) is the url to this repository (your fork of this project). See the previous steps to obtain the url.\n\n\u003Cimg align=\"right\" width=\"300\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fcopy-to-clipboard.png\" alt=\"copy URL to clipboard\" \u002F>\n\nFor example:\n\n```bash\ngit clone git@github.com:this-is-you\u002Ffirst-contributions.git\n```\n\nwhere `this-is-you` is your GitHub username. Here you're copying the contents of the first-contributions repository on GitHub to your computer.\n\n## Create a branch\n\nChange to the repository directory on your computer (if you are not already there):\n\n```bash\ncd first-contributions\n```\n\nNow create a branch using the `git switch` command:\n\n```bash\ngit switch -c your-new-branch-name\n```\n\nFor example:\n\n```bash\ngit switch -c add-alonzo-church\n```\n\n\u003Cdetails>\n\u003Csummary> \u003Cstrong>If you get any errors using git switch, click here:\u003C\u002Fstrong> \u003C\u002Fsummary>\n\nIf the error message \"Git: `switch` is not a git command. See `git –help`\" appears, it's likely because you're using an older version of git.\n\nIn this case, try to use `git checkout` instead:\n\n```bash\ngit checkout -b your-new-branch-name\n```\n\n\u003C\u002Fdetails>\n\n## Make necessary changes and commit those changes\n\nNow open `Contributors.md` file in a text editor, add your name to it. Don't add it at the beginning or end of the file. Put it anywhere in between. Now, save the file.\n\n\u003Cimg align=\"right\" width=\"450\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fgit-status.png\" alt=\"git status\" \u002F>\n\nIf you go to the project directory and execute the command `git status`, you'll see there are changes.\n\nAdd those changes to the branch you just created using the `git add` command:\n\n```bash\ngit add Contributors.md\n```\n\nNow commit those changes using the `git commit` command:\n\n```bash\ngit commit -m \"Add your-name to Contributors list\"\n```\n\nreplacing `your-name` with your name.\n\n## Push changes to GitHub\n\nPush your changes using the command `git push`:\n\n```bash\ngit push -u origin your-branch-name\n```\n\nreplacing `your-branch-name` with the name of the branch you created earlier.\n\n\u003Cdetails>\n\u003Csummary> \u003Cstrong>If you get any errors while pushing, click here:\u003C\u002Fstrong> \u003C\u002Fsummary>\n\n- ### Authentication Error\n     \u003Cpre>remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.\n  remote: Please see https:\u002F\u002Fgithub.blog\u002F2020-12-15-token-authentication-requirements-for-git-operations\u002F for more information.\n  fatal: Authentication failed for 'https:\u002F\u002Fgithub.com\u002F&lt;your-username&gt;\u002Ffirst-contributions.git\u002F'\u003C\u002Fpre>\n  Go to [GitHub's tutorial](https:\u002F\u002Fdocs.github.com\u002Fen\u002Fauthentication\u002Fconnecting-to-github-with-ssh\u002Fadding-a-new-ssh-key-to-your-github-account) on generating and configuring an SSH key to your account.\n\n  Also, you might want to run 'git remote -v' to check your remote address.\n  \n  If it looks anything like this:\n  \u003Cpre>origin\thttps:\u002F\u002Fgithub.com\u002Fyour-username\u002Fyour_repo.git (fetch)\n  origin\thttps:\u002F\u002Fgithub.com\u002Fyour-username\u002Fyour_repo.git (push)\u003C\u002Fpre>\n  \n  change it using this command:\n  ```bash\n  git remote set-url origin git@github.com:your-username\u002Fyour_repo.git\n  ```\n  Otherwise you'll still get prompted for username and password and get authentication error.\n\u003C\u002Fdetails>\n\n## Submit your changes for review\n\nIf you go to your repository on GitHub, you'll see a `Compare & pull request` button. Click on that button.\n\n\u003Cimg style=\"float: right;\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fcompare-and-pull.png\" alt=\"compare and create pull request\" \u002F>\n\nNow submit the pull request.\n\n\u003Cimg style=\"float: right;\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002FReadme\u002Fsubmit-pull-request.png\" alt=\"submit pull request\" \u002F>\n\nSoon I'll be merging all your changes into the main branch of this project. You will get a notification email once the changes have been merged.\n\n## Where to go from here?\n\nCongrats! You just completed the standard _fork -> clone -> edit -> pull request_ workflow that you'll often encounter as a contributor!\n\nCelebrate your contribution and share it with your friends and followers by going to [web app](https:\u002F\u002Ffirstcontributions.github.io\u002F#social-share).\n\nIf you'd like more practice, checkout [code contributions](https:\u002F\u002Fgithub.com\u002Froshanjossey\u002Fcode-contributions).\n\nNow let's get you started with contributing to other projects. We've compiled a list of projects with easy issues you can get started on. Check out [the list of projects in the web app](https:\u002F\u002Ffirstcontributions.github.io\u002F#project-list).\n\n### [Additional material](docs\u002Fadditional-material\u002Fgit_workflow_scenarios\u002Fadditional-material.md)\n\n## Tutorials Using Other Tools\n\n| \u003Ca href=\"docs\u002Fgui-tool-tutorials\u002Fgithub-desktop-tutorial.md\">\u003Cimg alt=\"GitHub Desktop\" src=\"https:\u002F\u002Fdesktop.github.com\u002Fimages\u002Fdesktop-icon.svg\" width=\"100\">\u003C\u002Fa> | \u003Ca href=\"docs\u002Fgui-tool-tutorials\u002Fgithub-windows-vs2017-tutorial.md\">\u003Cimg alt=\"Visual Studio 2017\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fc\u002Fcd\u002FVisual_Studio_2017_Logo.svg\" width=\"100\">\u003C\u002Fa> | \u003Ca href=\"docs\u002Fgui-tool-tutorials\u002Fgitkraken-tutorial.md\">\u003Cimg alt=\"GitKraken\" src=\"https:\u002F\u002Ffirstcontributions.github.io\u002Fassets\u002Fgui-tool-tutorials\u002Fgitkraken-tutorial\u002Fgk-icon.png\" width=\"100\">\u003C\u002Fa> | \u003Ca href=\"docs\u002Fgui-tool-tutorials\u002Fgithub-windows-vs-code-tutorial.md\">\u003Cimg alt=\"VS Code\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002F1\u002F1c\u002FVisual_Studio_Code_1.35_icon.png\" width=100>\u003C\u002Fa> | \u003Ca href=\"docs\u002Fgui-tool-tutorials\u002Fsourcetree-macos-tutorial.md\">\u003Cimg alt=\"Sourcetree App\" src=\"https:\u002F\u002Fwac-cdn.atlassian.com\u002Fdam\u002Fjcr:81b15cde-be2e-4f4a-8af7-9436f4a1b431\u002FSourcetree-icon-blue.svg\" width=100>\u003C\u002Fa> | \u003Ca href=\"docs\u002Fgui-tool-tutorials\u002Fgithub-windows-intellij-tutorial.md\">\u003Cimg alt=\"IntelliJ IDEA\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002F9\u002F9c\u002FIntelliJ_IDEA_Icon.svg\u002F512px-IntelliJ_IDEA_Icon.svg.png\" width=100>\u003C\u002Fa> |\n| ----------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [GitHub Desktop](docs\u002Fgui-tool-tutorials\u002Fgithub-desktop-tutorial.md)                                                                                             | [Visual Studio 2017](docs\u002Fgui-tool-tutorials\u002Fgithub-windows-vs2017-tutorial.md)                                                                                                                          | [GitKraken](docs\u002Fgui-tool-tutorials\u002Fgitkraken-tutorial.md)                                                                                                                                        | [Visual Studio Code](docs\u002Fgui-tool-tutorials\u002Fgithub-windows-vs-code-tutorial.md)                                                                                                                  | [Atlassian Sourcetree](docs\u002Fgui-tool-tutorials\u002Fsourcetree-macos-tutorial.md)                                                                                                                                      | [IntelliJ IDEA](docs\u002Fgui-tool-tutorials\u002Fgithub-windows-intellij-tutorial.md)                                                                                                                                                          |\n","firstcontributions\u002Ffirst-contributions 是一个旨在帮助初学者参与开源项目的教程项目。它通过提供详细的步骤和指南，引导用户完成从设置开发环境到提交第一个贡献的全过程，从而降低新用户对开源贡献的心理和技术门槛。该项目支持多种语言版本，确保了全球范围内的可访问性，并且其友好性和实用性得到了广泛认可，拥有超过5万颗星标和10万次分支。非常适合那些希望开始自己的开源之旅但不知如何下手的技术新手使用。",2,"2026-06-11 02:38:03","top_all"]