Files
github-stats-extended/apps/backend/scripts/generate-langs-json.js
T
Martin 8907b9de70 avoid format changes in update-langs workflow (#81)
~~(I know the change in generate-langs-json.js isn't really necessary,
but I think it still makes sense to have it.)~~
2026-02-17 09:41:26 +01:00

31 lines
835 B
JavaScript

import fs from "fs";
import axios from "axios";
import { default as jsYaml } from "js-yaml";
import * as prettier from "prettier";
const LANGS_FILEPATH = "./src/common/languageColors.json";
// Retrieve languages from github linguist repository yaml file
const response = await axios.get(
"https://raw.githubusercontent.com/github/linguist/master/lib/linguist/languages.yml",
);
// and convert them to a JS Object
const languages = jsYaml.load(response.data);
const languageColors = {};
// Filter only language colors from the whole file
Object.keys(languages).forEach((lang) => {
languageColors[lang] = languages[lang].color;
});
// Debug Print
// console.dir(languageColors);
const jsonString = JSON.stringify(languageColors);
fs.writeFileSync(
LANGS_FILEPATH,
await prettier.format(jsonString, { parser: "json" }),
);