Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
65c7243
Add llms.txt and markdown export for AI-friendly documentation (#731)
Copilot Dec 27, 2025
797119f
refactor: reorganize sidebar, what is oxc and getting started (#738)
Boshen Dec 27, 2025
9f13e0d
feat: auto-redirect /blog to the latest blog post
Boshen Dec 27, 2025
b0a54ed
docs(linter): clarify default file ignoring behavior (#737)
Copilot Dec 27, 2025
e14613f
feat: add blog listing page at /blog
Boshen Dec 28, 2025
101bead
feat: add Connor Shea and Brad Zacher to team page
Boshen Dec 28, 2025
9cf75d4
chore(deps): update github-actions (#739)
renovate[bot] Dec 28, 2025
e83862a
chore(deps): update npm packages (#740)
renovate[bot] Dec 29, 2025
a85089a
Release 1.36.0 (#742)
Boshen Dec 29, 2025
63210a7
chore(deps): update dependency oxc-minify to ^0.106.0 (#743)
renovate[bot] Dec 29, 2025
176f338
chore(deps): update oxc apps (#744)
renovate[bot] Dec 29, 2025
f1d4830
chore(deps): fix @types/markdown-it-container
Boshen Dec 29, 2025
f27d6aa
add x
Boshen Dec 29, 2025
e69c08e
chore(deps): update crate-ci/typos action to v1.40.1 (#746)
renovate[bot] Dec 29, 2025
9306d6d
performance.md: add a missing space (#747)
DanielEScherzer Dec 30, 2025
b17966b
Restructure and rewrite most of Oxlint (#745)
Boshen Dec 31, 2025
dcffb83
docs(oxfmt): Updates for v0.21 (#734)
leaysgur Dec 31, 2025
41b0873
chore(deps): update crate-ci/typos action to v1.41.0 (#750)
renovate[bot] Dec 31, 2025
0c21394
chore(deps): update dependency oxlint-tsgolint to v0.10.1 (#751)
renovate[bot] Jan 1, 2026
87d831a
docs: General improvements to linter docs (#753)
connorshea Jan 2, 2026
18b2e83
chore(deps): update taiki-e/install-action action to v2.65.12 (#756)
renovate[bot] Jan 4, 2026
25f4353
chore(deps): update pnpm to v10.27.0 (#757)
renovate[bot] Jan 4, 2026
a9e1062
Add "quick start" section to "Migrate from Prettier" page (#761)
connorshea Jan 5, 2026
5fbeeb5
Release 1.37.0 (#762)
Boshen Jan 5, 2026
4f573dd
docs: Rework a few more oxlint docs pages (#760)
connorshea Jan 5, 2026
4bdb896
chore(deps): update oxc apps (#764)
renovate[bot] Jan 5, 2026
d95ad66
docs: Update the rule count on the home page to 650+. (#759)
connorshea Jan 5, 2026
34b670d
chore(deps): update dependency oxc-minify to ^0.107.0 (#763)
renovate[bot] Jan 5, 2026
a68bd0d
docs: Update formatter.md with configuration and usage details (#752)
kostyniuk Jan 6, 2026
f90ed80
docs(oxfmt): Updates for v0.22 (#765)
leaysgur Jan 6, 2026
09589ee
Release 1.38.0 (#766)
Boshen Jan 6, 2026
533709d
chore(deps): update oxc apps (#767)
renovate[bot] Jan 6, 2026
f5e9ad3
docs: Remove mention of an `.oxlintignore` file as it does not work w…
connorshea Jan 7, 2026
803bf23
docs: Add a "TIP" for using `ignorePatterns` in `.oxlintrc.json` (#769)
connorshea Jan 7, 2026
7a2f0fe
chore(deps): update crate-ci/typos action to v1.42.0 (#771)
renovate[bot] Jan 8, 2026
9b83dab
Merge https://github.com/oxc-project/oxc-project.github.io into rebrand
mdong1909 Jan 8, 2026
3a526e8
bump dependency
mdong1909 Jan 8, 2026
c538b27
chore: add team member override
mdong1909 Jan 8, 2026
89a0665
chore: bump theme v4.0.3
mdong1909 Jan 9, 2026
ad63df2
remove extra X social
mdong1909 Jan 9, 2026
082f2ba
refactor: consolidate overrides.css into style.css
mdong1909 Jan 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1
- uses: oxc-project/setup-node@141eb77546de6702f92d320926403fe3f9f6a6f2 # v1.0.5
- uses: oxc-project/setup-node@8958a8e040102244b619c4a94fccb657a44b1c21 # v1.0.6
- run: pnpm run lint --format github
- run: pnpm run fmt
- run: pnpm run knip
- run: git diff --exit-code # Must commit everything
- uses: crate-ci/typos@2d0ce569feab1f8752f1dde43cc2f2aa53236e06 # v1.40.0
- uses: crate-ci/typos@bb4666ad77b539a6b4ce4eda7ebb6de553704021 # v1.42.0
with:
files: .

Expand All @@ -42,7 +42,7 @@ jobs:
contents: write
steps:
- uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1
- uses: oxc-project/setup-node@141eb77546de6702f92d320926403fe3f9f6a6f2 # v1.0.5
- uses: oxc-project/setup-node@8958a8e040102244b619c4a94fccb657a44b1c21 # v1.0.6
- run: pnpm run build
env:
REDIRECT: true
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,15 @@ jobs:
persist-credentials: false

- name: Install Tools
uses: taiki-e/install-action@b9c5db3aef04caffaf95a1d03931de10fb2a140f # v2.65.1
uses: taiki-e/install-action@cc33365ec7e3350bc47bf935f247582cc6f68344 # v2.65.12
with:
tool: just

- run: rm -rf src/docs/guide/usage/linter/rules
- run: cd oxc && just website ..
- run: rm -rf oxc

- uses: oxc-project/setup-node@141eb77546de6702f92d320926403fe3f9f6a6f2 # v1.0.5
- uses: oxc-project/setup-node@8958a8e040102244b619c4a94fccb657a44b1c21 # v1.0.6
- run: pnpm run fmt

- uses: peter-evans/create-pull-request@98357b18bf14b5342f975ff684046ec3b2a07725 # v8.0.0
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/zizmor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
with:
persist-credentials: false

- uses: taiki-e/install-action@b9c5db3aef04caffaf95a1d03931de10fb2a140f # v2.65.1
- uses: taiki-e/install-action@cc33365ec7e3350bc47bf935f247582cc6f68344 # v2.65.12
with:
tool: zizmor

Expand Down
3 changes: 0 additions & 3 deletions .oxlintignore

This file was deleted.

270 changes: 153 additions & 117 deletions .vitepress/config/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,10 @@ export const enConfig = defineLocaleConfig("root", {
{
text: "Resources",
items: [
{ text: "Blog", link: "/blog/2025-12-08-type-aware-alpha" },
{ text: "Release Blog", link: BLOG_SIDEBAR[0].link },
{ text: "Endorsements", link: "/endorsements" },
{ text: "Team", link: "/team" },
{ text: "Release Notes", link: "https://github.com/oxc-project/oxc/releases" },
{ text: "Releases", link: "https://github.com/oxc-project/oxc/releases" },
{ text: "Website GitHub", link: "https://github.com/oxc-project/oxc-project.github.io" },
],
},
Expand All @@ -34,154 +35,189 @@ export const enConfig = defineLocaleConfig("root", {
sidebar: {
"/docs/guide/": [
{
text: "Guide",
items: [{ text: "Getting Started", link: "/docs/guide/introduction" }],
text: "Introduction",
collapsed: false,
items: [
{ text: "What is Oxc?", link: "/docs/guide/what-is-oxc" },
{ text: "Getting Started", link: "/docs/guide/introduction" },
],
},
{
text: "Tools",
text: "Oxlint",
collapsed: true,
link: "/docs/guide/usage/linter",
items: [
{ text: "Overview", link: "/docs/guide/usage/linter" },
{
text: "Linter",
link: "/docs/guide/usage/linter",
collapsed: true,
text: "Configure and integrate",
items: [
{ text: "Quickstart", link: "/docs/guide/usage/linter/quickstart" },
{ text: "Configuration", link: "/docs/guide/usage/linter/config" },
{ text: "Editor setup", link: "/docs/guide/usage/linter/editors" },
{ text: "CI & other setup", link: "/docs/guide/usage/linter/ci" },
{
text: "Configuring Oxlint",
link: "/docs/guide/usage/linter/config",
},
{
text: "Type-Aware Linting",
link: "/docs/guide/usage/linter/type-aware",
},
{
text: "Nested Configs",
text: "Nested configs",
link: "/docs/guide/usage/linter/nested-config",
},
{
text: "Rules",
link: "/docs/guide/usage/linter/rules",
},
{
text: "Plugins",
link: "/docs/guide/usage/linter/plugins",
},
{
text: "JS Plugins",
link: "/docs/guide/usage/linter/js-plugins",
},
{
text: "Automatic Fixes",
link: "/docs/guide/usage/linter/automatic-fixes",
},
{
text: "CLI reference",
link: "/docs/guide/usage/linter/cli",
},
{
text: "Configuration file reference",
link: "/docs/guide/usage/linter/config-file-reference",
},
{
text: "Versioning",
link: "/docs/guide/usage/linter/versioning",
},
],
},
{
text: "Formatter",
link: "/docs/guide/usage/formatter",
collapsed: true,
text: "Features",
items: [
{ text: "Built-in plugins", link: "/docs/guide/usage/linter/plugins" },
{ text: "Automatic fixes", link: "/docs/guide/usage/linter/automatic-fixes" },
{ text: "Ignore files", link: "/docs/guide/usage/linter/ignore-files" },
{
text: "Configuration",
link: "/docs/guide/usage/formatter/config",
},
{
text: "Integration",
link: "/docs/guide/usage/formatter/integration",
},
{
text: "CLI reference",
link: "/docs/guide/usage/formatter/cli",
},
{
text: "Configuration file reference",
link: "/docs/guide/usage/formatter/config-file-reference",
text: "Inline ignore comments",
link: "/docs/guide/usage/linter/ignore-comments",
},
{
text: "Migrating from Prettier",
link: "/docs/guide/usage/formatter/migrate-from-prettier",
text: "Multi-file analysis",
link: "/docs/guide/usage/linter/multi-file-analysis",
},
{ text: "Type-aware linting", link: "/docs/guide/usage/linter/type-aware" },
{ text: "JS plugins", link: "/docs/guide/usage/linter/js-plugins" },
],
},
{ text: "Parser", link: "/docs/guide/usage/parser" },
// {
// text: "Migration",
// items: [
// { text: "From ESLint", link: "/docs/guide/usage/linter/migrate-from-eslint" },
// { text: "From Biome", link: "/docs/guide/usage/linter/migrate-from-biome" },
// ],
// },
{
text: "Transformer",
link: "/docs/guide/usage/transformer",
collapsed: true,
text: "Reference",
items: [
{ text: "Rules reference", link: "/docs/guide/usage/linter/rules" },
{ text: "CLI reference", link: "/docs/guide/usage/linter/cli" },
{
text: "Lowering",
link: "/docs/guide/usage/transformer/lowering",
},
{
text: "TypeScript",
link: "/docs/guide/usage/transformer/typescript",
},
{
text: "JSX",
link: "/docs/guide/usage/transformer/jsx",
},
{
text: "Plugins",
link: "/docs/guide/usage/transformer/plugins",
},
{
text: "Global Variable Replacement",
link: "/docs/guide/usage/transformer/global-variable-replacement",
},
{
text: "Isolated Declarations",
link: "/docs/guide/usage/transformer/isolated-declarations",
text: "Config file reference",
link: "/docs/guide/usage/linter/config-file-reference",
},
{ text: "Versioning", link: "/docs/guide/usage/linter/versioning" },
],
},
],
},
{
text: "Oxfmt",
collapsed: true,
link: "/docs/guide/usage/formatter",
items: [
{
text: "Minifier",
text: "Overview",
link: "/docs/guide/usage/formatter",
},
{
text: "Configuration",
link: "/docs/guide/usage/formatter/config",
},
{
text: "Ignoring",
link: "/docs/guide/usage/formatter/ignoring",
},
{
text: "Integration",
link: "/docs/guide/usage/formatter/integration",
},
{
text: "CLI reference",
link: "/docs/guide/usage/formatter/cli",
},
{
text: "Configuration file reference",
link: "/docs/guide/usage/formatter/config-file-reference",
},
{
text: "Migrating from Prettier",
link: "/docs/guide/usage/formatter/migrate-from-prettier",
},
],
},
{
text: "Parser",
collapsed: true,
link: "/docs/guide/usage/parser",
items: [{ text: "Overview", link: "/docs/guide/usage/parser" }],
},
{
text: "Transformer",
collapsed: true,
link: "/docs/guide/usage/transformer",
items: [
{ text: "Overview", link: "/docs/guide/usage/transformer" },
{
text: "Lowering",
link: "/docs/guide/usage/transformer/lowering",
},
{
text: "TypeScript",
link: "/docs/guide/usage/transformer/typescript",
},
{
text: "JSX",
link: "/docs/guide/usage/transformer/jsx",
},
{
text: "Plugins",
link: "/docs/guide/usage/transformer/plugins",
},
{
text: "Global Variable Replacement",
link: "/docs/guide/usage/transformer/global-variable-replacement",
},
{
text: "Isolated Declarations",
link: "/docs/guide/usage/transformer/isolated-declarations",
},
],
},
{
text: "Minifier",
collapsed: true,
link: "/docs/guide/usage/minifier",
items: [
{
text: "Overview",
link: "/docs/guide/usage/minifier",
collapsed: true,
items: [
{
text: "Dead Code Elimination",
link: "/docs/guide/usage/minifier/dead-code-elimination",
},
{
text: "Syntax Normalization",
link: "/docs/guide/usage/minifier/syntax-normalization",
},
{
text: "Mangling",
link: "/docs/guide/usage/minifier/mangling",
},
{
text: "Whitespace Stripping",
link: "/docs/guide/usage/minifier/whitespace-stripping",
},
{
text: "FAQ",
link: "/docs/guide/usage/minifier/faq",
},
],
},
{ text: "Resolver", link: "/docs/guide/usage/resolver" },
{
text: "Dead Code Elimination",
link: "/docs/guide/usage/minifier/dead-code-elimination",
},
{
text: "Syntax Normalization",
link: "/docs/guide/usage/minifier/syntax-normalization",
},
{
text: "Mangling",
link: "/docs/guide/usage/minifier/mangling",
},
{
text: "Whitespace Stripping",
link: "/docs/guide/usage/minifier/whitespace-stripping",
},
{
text: "FAQ",
link: "/docs/guide/usage/minifier/faq",
},
],
},
{
text: "Resolver",
collapsed: true,
link: "/docs/guide/usage/resolver",
items: [{ text: "Overview", link: "/docs/guide/usage/resolver" }],
},
{
text: "Resources",
collapsed: false,
items: [
{ text: "Troubleshooting", link: "/docs/guide/troubleshooting" },
{ text: "All benchmarks", link: "/docs/guide/benchmarks" },
{ text: "Benchmarks", link: "/docs/guide/benchmarks" },
{ text: "Projects using Oxc", link: "/docs/guide/projects" },
{ text: "On media", link: "/docs/guide/media" },
{ text: "Talks & media", link: "/docs/guide/media" },
],
},
],
Expand Down
4 changes: 2 additions & 2 deletions .vitepress/config/rss.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,13 @@ export const rssConfig = defineConfig({
};
});
// Override https://github.com/vuejs/vitepress/blob/179ee6/src/node/markdown/plugins/containers.ts#L26
md.use(container, "code-group", {
(md.use as Function)(container, "code-group", {
render(tokens: Token[], idx: number) {
return tokens[idx].nesting === 1 ? "<table><tbody>" : "</tbody></table>\n";
},
});
// `createMarkdownRenderer` returns a cached global renderer, so the above modifications will be applied to the next rendering
const posts = await createContentLoader("blog/*.md", {
const posts = await createContentLoader(["blog/*.md", "!blog/index.md"], {
excerpt: true,
render: true,
}).load();
Expand Down
Loading