✨ Migrate linting & formatting to Biome + TypeScript improvements#813
Conversation
|
This pull request is automatically being deployed by Amplify Hosting (learn more). |
2ac7616 to
f19cba7
Compare
There was a problem hiding this comment.
Pull Request Overview
This PR replaces ESLint/Prettier with Biome, strengthens TypeScript usage, and standardizes file/component naming.
- Renamed React component imports and file paths to snake_case
- Converted many JS modules to TypeScript and updated Docusaurus theme components
- Adjusted tooling configs (tsconfig, tailwind.config, GitHub Action) for Biome and TypeScript
Reviewed Changes
Copilot reviewed 122 out of 124 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| versioned_docs/**/scenarios/create.md | Updated import path from AcademyPromo to academy-promo |
| tsconfig.json | Added module: "NodeNext"/moduleResolution and scoped @site/* paths |
| tailwind.config.js | Simplified and reorganized theme color definitions |
| src/utils/index.ts | Reordered clsx/twMerge imports and formatted cn |
Files not reviewed (1)
- crowdsec-docs/package-lock.json: Language not supported
Comments suppressed due to low confidence (4)
crowdsec-docs/src/components/academy-promo.tsx:13
- Use Docusaurus'
useBaseUrlhelper for asset URLs (e.g.useBaseUrl('/img/academy/' + props.image)) to ensure correct base path resolution in production.
<a href={LINK} target="_blank">
crowdsec-docs/src/components/academy-promo.tsx:4
- Fallback for UTM parameters defaults to a space character, potentially resulting in malformed URLs. Use an empty string as the fallback or handle absence of
props.utmexplicitly.
const LINK = `https://academy.crowdsec.net/course/${props.course}${process.env.NODE_ENV === "production" ? props.utm : " "}`;
crowdsec-docs/tsconfig.json:8
- The
@/*path alias was removed; verify no code still relies on that shortcut or consider re-adding it to avoid import errors.
"paths": {
crowdsec-docs/src/utils/index.ts:5
- [nitpick] This line is indented with a tab instead of spaces, which differs from the rest of the file; unify on the project's preferred indentation style for consistency.
return twMerge(clsx(inputs));
|
There probably a component |
|
Your rebase on master seems to have missing files / edits that were in #810 link to previous comment about |
e886613 to
6cf96d1
Compare

✨ Migrate linting & formatting to Biome + TypeScript improvements
This PR brings a major cleanup and tooling upgrade to our documentation project 🚀 which involves a lot of linting, formatting, file renaming, and file moving.
✅ Replaced ESLint/Prettier with Biome (⚡ super fast linter/formatter)
✅ Migrated JavaScript config files to TypeScript where possible
✅ Added GitHub Action to check code quality with Biome on PRs
✅ Added proper TypeScript types for Docusaurus sidebar/config
✅ Renamed files to follow consistent snake_case naming 🐍
🔥 Migrate some CSS code to Tailwind
💄 Update UI -> Alerts, Footer, Code blocks, Sidebar
⭐ Premium badge updated to align with Console
Let me know if you spot anything off 👀
Screenshots
Before/after
Next steps: