Compare commits

..

1 Commits

Author SHA1 Message Date
BOT
777ec10ce4 Merge 27ffb33f3e into 78ce710906 2024-12-04 06:32:38 +03:00
4 changed files with 58 additions and 50 deletions

View File

@@ -1,7 +1,7 @@
<!-- DO NOT EDIT THIS FILE (`README.md`) --> <!-- DO NOT EDIT THIS FILE (README.md) -->
<!-- ALL ENTRIES SHOULD BE ADDED TO AND REMOVED FROM `data.json` --> <!-- ALL ENTRIES SHOULD BE IN TO THE data.json -->
<!-- SEE THE CONTRIBUTING GUIDE (`CONTRIBUTING.md`) FOR MORE GUIDANCE --> <!-- SEE THE CONTRIBUTING GUIDE (CONTRIBUTING.md) FOR MORE GUIDANCE -->
<!-- YOU MAY IGNORE THIS MESSAGE IF YOU ARE EDITING `README-template.j2` --> <!-- YOU MAY IGNORE THIS MESSAGE IF YOU ARE EDITING THE TEMPLATE -->
# Awesome First PR Opportunities [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) # Awesome First PR Opportunities [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
@@ -10,11 +10,10 @@ Inspired by [First Timers Only](https://kentcdodds.com/blog/first-timers-only) b
If you are a maintainer of open-source projects, add the label `first-timers-only` (or similar) to your project and list it here so that people can find it. If you are a maintainer of open-source projects, add the label `first-timers-only` (or similar) to your project and list it here so that people can find it.
If you are not a programmer but would like to contribute, check out the [Awesome for non-programmers](https://github.com/szabgab/awesome-for-non-programmers) list. If you are not a programmer but would like to contribute, check out the [Awesome for non-programmers](https://github.com/szabgab/awesome-for-non-programmers) list.
## Table of Contents:
||Languages| ## Table of Contents:
|--|--|{% for category_group, categories in category_groups.items() %} {% for category in categories %}
|{{ category_group }}|{% for category in categories %}[{{ category.title }}](#{{ category.link_id }}){% if loop.index < (categories | length) %}, {% endif %}{% endfor %}|{% endfor %} - [{{ category.title }}](#{{ category.link_id }}){% endfor %}
{% for category in categories %} {% for category in categories %}
## {{ category.title }} ## {{ category.title }}
{% for entry in category.entries %} {% for entry in category.entries %}

View File

@@ -6,50 +6,35 @@ TEMPLATEPATH = "./.github/"
TEMPLATEFILE = "README-template.j2" TEMPLATEFILE = "README-template.j2"
TARGETFILE = "./README.md" TARGETFILE = "./README.md"
def new_technology_dict(repo_technology):
return {"link_id": repo_technology.lower(), "entries": []}
technologies = {} technologies = {}
with open(DATAFILE, "r") as datafile: with open(DATAFILE, 'r') as datafile:
data = json.loads(datafile.read()) data = json.loads(datafile.read())
for technology in data["technologies"]: for technology in data["technologies"]:
technologies[technology] = { technologies[technology] = {"link_id": data["technologies"][technology], "entries": []}
"link_id": data["technologies"][technology],
"entries": [],
}
for repository in data["repositories"]: for repository in data["repositories"]:
repo_technologies = repository["technologies"] repo_technologies = repository["technologies"]
for repo_technology in repo_technologies: for repo_technology in repo_technologies:
if not technologies.get(repo_technology, False): if not technologies.get(repo_technology, False):
technologies[repo_technology] = new_technology_dict(repo_technology) technologies[repo_technology] = {"link_id": repo_technology.lower(), "entries": []}
technologies[repo_technology]["entries"].append(repository) technologies[repo_technology]["entries"].append(repository)
env = Environment(loader = FileSystemLoader(TEMPLATEPATH)) env = Environment(loader = FileSystemLoader(TEMPLATEPATH))
template = env.get_template(TEMPLATEFILE) template = env.get_template(TEMPLATEFILE)
categories = [] categories = []
for key, value in zip(technologies.keys(), technologies.values()): for key, value in zip(technologies.keys(), technologies.values()):
categories.append( categories.append({"title": key, "link_id": value["link_id"], "entries": value["entries"]})
{"title": key, "link_id": value["link_id"], "entries": value["entries"]}
)
categories = sorted(categories, key=lambda x: x["title"].upper()) categories = sorted(categories, key=lambda x: x["title"].upper())
category_groups = {"Misc": []}
for category in categories: for category in categories:
category["entries"] = sorted(category["entries"], key=lambda x: x["name"].upper()) category["entries"] = sorted(category["entries"], key=lambda x: x["name"].upper())
first_char = category["title"][0].upper()
if first_char in "ABCDEFGHIJKLMNOPQRSTUVWXYZ":
if first_char not in category_groups:
category_groups[first_char] = []
category_groups[first_char].append(category)
else:
category_groups["Misc"].append(category)
sponsors = data["sponsors"] sponsors = data["sponsors"]
output = template.render(category_groups=category_groups, categories=categories, sponsors=sponsors) output = template.render(categories=categories, sponsors=sponsors)
open(TARGETFILE, "w").write(output) open(TARGETFILE, "w").write(output)

View File

@@ -1,7 +1,7 @@
<!-- DO NOT EDIT THIS FILE (`README.md`) --> <!-- DO NOT EDIT THIS FILE (README.md) -->
<!-- ALL ENTRIES SHOULD BE ADDED TO AND REMOVED FROM `data.json` --> <!-- ALL ENTRIES SHOULD BE IN TO THE data.json -->
<!-- SEE THE CONTRIBUTING GUIDE (`CONTRIBUTING.md`) FOR MORE GUIDANCE --> <!-- SEE THE CONTRIBUTING GUIDE (CONTRIBUTING.md) FOR MORE GUIDANCE -->
<!-- YOU MAY IGNORE THIS MESSAGE IF YOU ARE EDITING `README-template.j2` --> <!-- YOU MAY IGNORE THIS MESSAGE IF YOU ARE EDITING THE TEMPLATE -->
# Awesome First PR Opportunities [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) # Awesome First PR Opportunities [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
@@ -10,24 +10,38 @@ Inspired by [First Timers Only](https://kentcdodds.com/blog/first-timers-only) b
If you are a maintainer of open-source projects, add the label `first-timers-only` (or similar) to your project and list it here so that people can find it. If you are a maintainer of open-source projects, add the label `first-timers-only` (or similar) to your project and list it here so that people can find it.
If you are not a programmer but would like to contribute, check out the [Awesome for non-programmers](https://github.com/szabgab/awesome-for-non-programmers) list. If you are not a programmer but would like to contribute, check out the [Awesome for non-programmers](https://github.com/szabgab/awesome-for-non-programmers) list.
## Table of Contents: ## Table of Contents:
||Languages| - [.NET](#net)
|--|--| - [Angular](#angular)
|Misc|[.NET](#net)| - [Ansible](#ansible)
|A|[Angular](#angular), [Ansible](#ansible)| - [C](#c)
|C|[C](#c), [C#](#c-1), [C++](#c-2), [Clojure](#clojure)| - [C#](#c-1)
|D|[Dart](#dart)| - [C++](#c-2)
|E|[Elixir](#elixir), [Elm](#elm)| - [Clojure](#clojure)
|G|[Go](#go)| - [Dart](#dart)
|H|[Haskell](#haskell)| - [Elixir](#elixir)
|J|[Java](#java), [JavaScript](#javascript), [JSON](#json), [Julia](#julia)| - [Elm](#elm)
|K|[Kotlin](#kotlin)| - [Go](#go)
|M|[Markdown](#markdown), [MLOps](#mlops)| - [Haskell](#haskell)
|P|[Perl](#perl), [PHP](#php), [Pug](#pug), [Python](#python)| - [Java](#java)
|R|[Ruby](#ruby), [Rust](#rust)| - [JavaScript](#javascript)
|S|[Scala](#scala), [Smalltalk](#smalltalk), [Swift](#swift)| - [JSON](#json)
|T|[TypeScript](#typescript)| - [Julia](#julia)
- [Kotlin](#kotlin)
- [Markdown](#markdown)
- [MLOps](#mlops)
- [Perl](#perl)
- [PHP](#php)
- [Pug](#pug)
- [Python](#python)
- [Ruby](#ruby)
- [Rust](#rust)
- [Scala](#scala)
- [Smalltalk](#smalltalk)
- [Swift](#swift)
- [TypeScript](#typescript)
## .NET ## .NET
@@ -157,6 +171,7 @@ If you are not a programmer but would like to contribute, check out the [Awesome
- [HMPL](https://github.com/hmpl-language/hmpl) _(label: good first issue)_ <br> Server-oriented customizable templating for JavaScript. - [HMPL](https://github.com/hmpl-language/hmpl) _(label: good first issue)_ <br> Server-oriented customizable templating for JavaScript.
- [Hoppscotch](https://github.com/hoppscotch/hoppscotch) _(label: good first issue)_ <br> A free, fast and beautiful API request builder. - [Hoppscotch](https://github.com/hoppscotch/hoppscotch) _(label: good first issue)_ <br> A free, fast and beautiful API request builder.
- [HueHive](https://github.com/croma-app/croma) _(label: good first issue)_ <br> A open source react native app iOS and android for color palette management - [HueHive](https://github.com/croma-app/croma) _(label: good first issue)_ <br> A open source react native app iOS and android for color palette management
- [Hyper](https://github.com/zeit/hyper) _(label: good first issue)_ <br> JS/HTML/CSS Terminal
- [iD](https://github.com/openstreetmap/iD) _(label: good first issue)_ <br> The easy-to-use OpenStreetMap editor in JavaScript. - [iD](https://github.com/openstreetmap/iD) _(label: good first issue)_ <br> The easy-to-use OpenStreetMap editor in JavaScript.
- [Jasmine](https://github.com/jasmine/jasmine) _(label: good first issue)_ <br> Simple JavaScript testing framework for browsers and node.js. - [Jasmine](https://github.com/jasmine/jasmine) _(label: good first issue)_ <br> Simple JavaScript testing framework for browsers and node.js.
- [Jest](https://github.com/facebook/jest) _(label: good first issue)_ <br> A complete and easy to set up JavaScript testing solution. - [Jest](https://github.com/facebook/jest) _(label: good first issue)_ <br> A complete and easy to set up JavaScript testing solution.

View File

@@ -594,6 +594,15 @@
], ],
"description": "Awesome ESLint rules." "description": "Awesome ESLint rules."
}, },
{
"name": "Hyper",
"link": "https://github.com/zeit/hyper",
"label": "good first issue",
"technologies": [
"JavaScript"
],
"description": "JS/HTML/CSS Terminal"
},
{ {
"name": "API-pull-with-JavaScript", "name": "API-pull-with-JavaScript",
"link": "https://github.com/AliBasboga/APIExampleWithExpress.git", "link": "https://github.com/AliBasboga/APIExampleWithExpress.git",