feat(lint): add biome formatter and linter, husky and lint-staged

This commit adds the Biome formatter and linter to replace Prettier, including:

- Add biome.json config file
- Add pre-commit hook with Husky
- Configure GitHub Action to run Biome checks
- Apply Biome formatting rules to codebase
- Remove Prettier dependencies
This commit is contained in:
Shintaro Jokagi
2025-05-15 13:52:37 +12:00
parent b4e5fe2bea
commit bcb1427a79
50 changed files with 904 additions and 793 deletions

View File

@@ -1,40 +1,35 @@
---
import Description from '~/components/Description.astro'
import DownloadScript from '~/components/download/DownloadScript.astro'
import PlatformDownload from '~/components/download/PlatformDownload.astro'
import { getReleasesWithChecksums } from '~/components/download/release-data.astro'
import Layout from '~/layouts/Layout.astro'
import { getChecksums } from '~/utils/githubChecksums'
import { getLocale, getUI } from '~/utils/i18n'
import Description from "~/components/Description.astro";
import DownloadScript from "~/components/download/DownloadScript.astro";
import PlatformDownload from "~/components/download/PlatformDownload.astro";
import { getReleasesWithChecksums } from "~/components/download/release-data.astro";
import Layout from "~/layouts/Layout.astro";
import { getChecksums } from "~/utils/githubChecksums";
import { getLocale, getUI } from "~/utils/i18n";
import { icon, library } from '@fortawesome/fontawesome-svg-core'
import {
faApple,
faGithub,
faLinux,
faWindows,
} from '@fortawesome/free-brands-svg-icons'
import { ExternalLink, Lock } from 'lucide-astro'
import { icon, library } from "@fortawesome/fontawesome-svg-core";
import { faApple, faGithub, faLinux, faWindows } from "@fortawesome/free-brands-svg-icons";
import { ExternalLink, Lock } from "lucide-astro";
export { getStaticPaths } from '~/utils/i18n'
export { getStaticPaths } from "~/utils/i18n";
const locale = getLocale(Astro)
const locale = getLocale(Astro);
const {
routes: { download },
layout,
} = getUI(locale)
} = getUI(locale);
library.add(faWindows, faLinux, faApple, faGithub)
const windowsIcon = icon({ prefix: 'fab', iconName: 'windows' })
const linuxIcon = icon({ prefix: 'fab', iconName: 'linux' })
const appleIcon = icon({ prefix: 'fab', iconName: 'apple' })
const githubIcon = icon({ prefix: 'fab', iconName: 'github' })
library.add(faWindows, faLinux, faApple, faGithub);
const windowsIcon = icon({ prefix: "fab", iconName: "windows" });
const linuxIcon = icon({ prefix: "fab", iconName: "linux" });
const appleIcon = icon({ prefix: "fab", iconName: "apple" });
const githubIcon = icon({ prefix: "fab", iconName: "github" });
const checksums = await getChecksums()
const releases = getReleasesWithChecksums(checksums)
const checksums = await getChecksums();
const releases = getReleasesWithChecksums(checksums);
const platformNames = download.platformNames
const platformDescriptions = download.platformDescriptions
const platformNames = download.platformNames;
const platformDescriptions = download.platformDescriptions;
---
<DownloadScript />