Files
MartinandMarco Pasqualetti d476f8cbe1 extract "core" package, small improvements (#137)
This PR mainly refactors the code by extracting a "core" package which
is then used by the "backend" and "frontend" apps.

Apart from this the PR also contains several smaller changes like fixing
dependabot, upgrading dependencies, aligned "package.json" files, added
tests, ...

addresses step 1 of #32 
closes #136

---------

Co-authored-by: Marco Pasqualetti <marco.pasqualetti@live.com>
2026-04-18 10:37:26 +02: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" }),
);