Skip to content

Latest commit

 

History

History
56 lines (36 loc) · 2.12 KB

credits.md

File metadata and controls

56 lines (36 loc) · 2.12 KB

Credits

Data

Data used by the application is provided by GitHub via the REST API.

User interface

UI elements and icons by Material UI. Charts were made with MUI X Charts.

The word cloud visualization used in the application is based on react-wordcloud by Chris Zhou. However, a fork made by cyberblast was used for its React 18 support.

Favicon generated by Riku Rauhala with favicon.io

Misc

Programming language color codes are based on the Linguist project by GitHub. More specifically, the colors are taken from the language.yml file. The file colors.json has been manually created by Riku Rauhala based on languages.yml.

The list of languages was last updated on 9 May 2024. Some languages could be missing.

Here is a Python script that can be used to update the colors.json file.

import json
import requests
import yaml

YAML_URL = 'https://raw.githubusercontent.com/github-linguist/linguist/master/lib/linguist/languages.yml'
JSON_FILE = 'colors.json'

response = requests.get(YAML_URL)
if response.status_code != 200:
    print(f'Failed to fetch YAML file: {response.status_code}')
    exit()

data = yaml.safe_load(response.text)

languages = {}

for language, properties in data.items():
    try:
        color = properties['color'].lower()
        languages[language] = color
    except KeyError:
        pass


sorted_languages = {
    language: languages[language] for language in sorted(languages.keys(), key=lambda key: key.lower())
}

with open(JSON_FILE, 'w') as json_file:
    json.dump(sorted_languages, json_file, indent=2)

print(f'Data written to {JSON_FILE}')