{"id":17743118,"url":"https://github.com/julien-r44/tooling-configs","last_synced_at":"2026-04-15T15:42:42.019Z","repository":{"id":40247662,"uuid":"493582027","full_name":"Julien-R44/tooling-configs","owner":"Julien-R44","description":"👌 My custom tool configurations ( ESLint, TS, Prettier ... )","archived":false,"fork":false,"pushed_at":"2024-03-19T22:08:18.000Z","size":417,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-05-01T15:26:04.547Z","etag":null,"topics":["eslint","eslint-plugin","prettier","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Julien-R44.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-05-18T08:49:11.000Z","updated_at":"2023-12-17T22:00:01.000Z","dependencies_parsed_at":"2023-11-20T21:24:39.097Z","dependency_job_id":"aeb4f5f6-505e-4aad-a2b5-10cd0af63e62","html_url":"https://github.com/Julien-R44/tooling-configs","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Julien-R44%2Ftooling-configs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Julien-R44%2Ftooling-configs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Julien-R44%2Ftooling-configs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Julien-R44%2Ftooling-configs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Julien-R44","download_url":"https://codeload.github.com/Julien-R44/tooling-configs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246558115,"owners_count":20796696,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eslint","eslint-plugin","prettier","typescript"],"created_at":"2024-10-26T05:42:40.979Z","updated_at":"2026-04-15T15:42:42.011Z","avatar_url":"https://github.com/Julien-R44.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/8337858/194765812-05e19fc8-3820-45c5-8d02-fd838d303200.png\"\u003e\n\u003c/p\u003e\n\n\u003e [!NOTE]\n\u003e Looking for ESLint/Prettier support? We now only support OXC (oxlint + oxfmt). Check the [last commit with ESLint/Prettier](https://github.com/Julien-R44/tooling-configs/tree/d7b363f).\n\n## Features\n\n- Shared presets for [OXC](https://oxc.rs/) tools (oxlint + oxfmt)\n- TypeScript configuration presets\n- CLI for quick project setup\n\n## Usage\n\n\u003e [!IMPORTANT]\n\u003e New/updated rules will not be considered as breaking changes. Only API changes will be considered as breaking changes.\n\n### CLI installation\n\nJust run this command in your project root directory:\n\n```bash\npnpm dlx @julr/tooling-configs@latest\n```\n\n### Manual install\n\n```bash\npnpm add -D oxlint oxfmt @julr/tooling-configs\n```\n\n### OXC (oxlint + oxfmt)\n\n#### oxlint\n\n```ts\n// oxlint.config.ts\nimport { defineConfig } from 'oxlint'\nimport { julrPreset } from '@julr/tooling-configs/oxc/lint'\n\nexport default defineConfig({\n  extends: [julrPreset()],\n})\n```\n\nOptions:\n\n| Option          | Type      | Default | Description                             |\n| --------------- | --------- | ------- | --------------------------------------- |\n| `adonisjs`      | `boolean` | `false` | Enable AdonisJS-specific rules          |\n| `perfectionist` | `boolean` | `false` | Enable import sorting via perfectionist |\n\n```ts\nexport default defineConfig({\n  extends: [julrPreset({ adonisjs: true, perfectionist: true })],\n})\n```\n\n#### oxfmt\n\n```ts\n// oxfmt.config.ts\nimport { julrPreset } from '@julr/tooling-configs/oxc/fmt'\n\nexport default julrPreset()\n```\n\nYou can override any option:\n\n```ts\nexport default julrPreset({ printWidth: 120, semi: true })\n```\n\nDefaults: `printWidth: 100`, `semi: false`, `singleQuote: true`, `trailingComma: 'all'`, `arrowParens: 'avoid'`.\n\n#### Scripts\n\n```json\n{\n  \"scripts\": {\n    \"lint\": \"oxlint\",\n    \"lint:fix\": \"oxlint --fix\",\n    \"format\": \"oxfmt --write .\"\n  }\n}\n```\n\n### Tsconfig\n\nNode (ESM):\n\n```json\n{\n  \"extends\": \"@julr/tooling-configs/tsconfigs/tsconfig.node\",\n  \"compilerOptions\": {\n    \"rootDir\": \"./\",\n    \"outDir\": \"./build\"\n  }\n}\n```\n\nNode Next (ESM + `ts` extensions):\n\n```json\n{\n  \"extends\": \"@julr/tooling-configs/tsconfigs/tsconfig.node-next\",\n  \"compilerOptions\": {\n    \"rootDir\": \"./\",\n    \"outDir\": \"./build\"\n  }\n}\n```\n\nVue:\n\n```json\n{\n  \"extends\": \"@julr/tooling-configs/tsconfigs/tsconfig.vue\",\n  \"compilerOptions\": {\n    \"rootDir\": \"./\",\n    \"outDir\": \"./build\"\n  }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjulien-r44%2Ftooling-configs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjulien-r44%2Ftooling-configs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjulien-r44%2Ftooling-configs/lists"}