-
Notifications
You must be signed in to change notification settings - Fork 89
✨ Migrate linting & formatting to Biome + TypeScript improvements #813
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
This pull request is automatically being deployed by Amplify Hosting (learn more). |
2ac7616 to
f19cba7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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: