{"id":14978360,"url":"https://github.com/axa-ch/easy-config","last_synced_at":"2026-04-01T17:23:03.390Z","repository":{"id":65720574,"uuid":"595144393","full_name":"axa-ch/easy-config","owner":"axa-ch","description":"Modern and strict configuration files to build consistently web applications.","archived":false,"fork":false,"pushed_at":"2026-03-18T09:47:25.000Z","size":497,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-19T01:00:08.317Z","etag":null,"topics":["easlint","eslint","linting","prettier","stylelint","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/axa-ch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-01-30T13:44:57.000Z","updated_at":"2026-03-18T09:47:30.000Z","dependencies_parsed_at":"2023-02-19T17:46:16.966Z","dependency_job_id":"e0412574-1d46-44ce-a2f7-351f8e5da8fa","html_url":"https://github.com/axa-ch/easy-config","commit_stats":{"total_commits":110,"total_committers":8,"mean_commits":13.75,"dds":0.6,"last_synced_commit":"94a138a8a08293a3cf7bf8f4dc54a28cf278d267"},"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"purl":"pkg:github/axa-ch/easy-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axa-ch%2Feasy-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axa-ch%2Feasy-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axa-ch%2Feasy-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axa-ch%2Feasy-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/axa-ch","download_url":"https://codeload.github.com/axa-ch/easy-config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axa-ch%2Feasy-config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["easlint","eslint","linting","prettier","stylelint","typescript"],"created_at":"2024-09-24T13:57:28.575Z","updated_at":"2026-04-01T17:23:03.363Z","avatar_url":"https://github.com/axa-ch.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# easy-config\n\n[![Build Status][ci-image]][ci-url]\n[![MIT License][license-image]][license-url]\n[![NPM version][npm-version-image]][npm-url]\n[![NPM downloads][npm-downloads-image]][npm-url]\n\nModern and strict configuration files to build consistently web applications.\n\n# Table of content\n\n1. [Getting Started](#getting-started)\n   1. [Installation](#biome-installation)\n   2. [Configuration](#biome-configuration)\n   3. [IDE Integration](#biome-integration)\n2. [Typescript Setup](#typescript-setup)\n3. [Stylelint Setup](#stylelint-setup)\n   1. [SCSS Setup](#stylelint-scss)\n   2. [CSS Order Setup](#stylelint-order)\n\n\u003ca id='getting-started'\u003e\u003c/a\u003e\n\n# Getting started\n\n## Installation\n\n\u003ca id='biome-installation'\u003e\u003c/a\u003e\nStart by installing [BiomeJS](https://biomejs.dev/), [Prettier](https://prettier.io/) and `@axa-ch/easy-config`.\n\n```shell\nnpm i -D --save-exact @biomejs/biome @axa-ch/easy-config prettier\n```\n\n\u003ca id='biome-configuration'\u003e\u003c/a\u003e\n\n## Configuration\n\nCreate a `biome.json` file at the root of your project\n\n```json\n{\n  \"$schema\": \"./node_modules/@biomejs/biome/configuration_schema.json\",\n  \"extends\": [\"./node_modules/@axa-ch/easy-config/biome/base.json\"]\n}\n```\n\nYou can configure this to your\nliking. [Follow the Configuration guide from biome](https://biomejs.dev/reference/configuration/).\n\nTo configure prettier, add a `.prettierrc.js` file with the following content:\n\n```js\nimport { prettier } from '@axa-ch/easy-config';\n\nexport default prettier.base;\n```\n\n### Why not use `biome format`?\n\nBiomes [formatting support](https://biomejs.dev/internals/language-support/) is currently not developed enough for us to\nmake the full move over to biome.\nFor instance, Biome currently doesn't support [CSS Formatting](https://github.com/biomejs/biome/issues/1285) or\nMarkdown.\nFurthermore, Biome doesn't plan to support SCSS in the foreseeing future, so it makes sense to stick to prettier.\n\n\u003ca id='biome-integration'\u003e\u003c/a\u003e\n\n## IDE Integration\n\nBiome provides plugins for the most common IDEs:\n\n- IntelliJ-based products: [Biome](https://plugins.jetbrains.com/plugin/22761-biome)\n- VSCode Extension: [Biome](https://marketplace.visualstudio.com/items?itemName=biomejs.biome)\n\n### IntelliJ\n\nWhen using IntelliJ, Biome and Prettier conflict when trying to run \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eAlt\u003c/kbd\u003e+\u003ckbd\u003e\nShift\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e. This is because Biome is set to run `biome check` when pressing this shortcut, Prettier is set\nup to format when this shortcut is used.\nTo avoid this conflict we would recommend Setting the prettier configuration to manual and then checking\nthe `Run on 'Reformat Code' action`. This way, you can press\n\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eAlt\u003c/kbd\u003e+\u003ckbd\u003eL\u003c/kbd\u003e to run Prettier. Alternatively, you can remap either of those commands to\ndifferent keystrokes.\n\n![prettier-config](docs/prettier-config.png)\n\n\u003ca id='typescript-setup'\u003e\u003c/a\u003e\n\n# Typescript setup\n\nStart by installing typescript:\n\n```shell\nnpm i -D --save-exact typescript\n```\n\nThen, create a `tsconfig.json` file and extend `@axa-ch/easy-config`:\n\n```json\n{\n  \"extends\": [\"@axa-ch/easy-config/ts-config/base\"]\n}\n```\n\n\u003ca id='stylelint-setup'\u003e\u003c/a\u003e\n\n# Stylelint setup\n\nStart by installing stylelint and the rules used by easy-config:\n\n```shell\nnpm i -D --save-exact stylelint stylelint-config-standard\n```\n\nExtend easy-config in the `.stylelintrc.js` file:\n\n```js\nimport { stylelint } from '@axa-ch/easy-config';\n\n/** @type {import('stylelint').Config} */\nexport default {\n  extends: [stylelint.base],\n};\n```\n\n\u003ca id='stylelint-scss'\u003e\u003c/a\u003e\n\n## SCSS Setup\n\nTo use Stylelint with [SASS](https://sass-lang.com/), start by installing the SCSS default config for stylelint:\n\n```shell\nnpm i -D --save-exact stylelint-config-standard-scss\n```\n\nExtend your stylelint configuration like shown below:\n\n```js\nimport { stylelint } from '@axa-ch/easy-config';\n\n/** @type {import('stylelint').Config} */\nexport default {\n  extends: [stylelint.base, stylelint.scss],\n};\n```\n\n\u003ca id='stylelint-order'\u003e\u003c/a\u003e\n\n## CSS Order Setup\n\nYou can install this extension if you want to ensure that CSS Properties are defined in a consistent way.\n\nStart by installing the extension:\n\n```shell\nnpm i -D --save-exact stylelint-order\n```\n\nExtend your stylelint configuration like shown below:\n\n```js\nimport { stylelint } from '@axa-ch/easy-config';\n\n/** @type {import('stylelint').Config} */\nexport default {\n  extends: [stylelint.base, stylelint.order],\n};\n```\n\n[ci-image]: https://img.shields.io/github/actions/workflow/status/axa-ch/easy-config/ci.yml?style=flat-square\u0026branch=main\n[ci-url]: https://github.com/axa-ch/easy-config/actions\n[license-image]: http://img.shields.io/badge/license-MIT-000000.svg?style=flat-square\n[license-url]: LICENSE\n[npm-version-image]: https://img.shields.io/npm/v/@axa-ch/easy-config.svg?style=flat-square\n[npm-downloads-image]: https://img.shields.io/npm/dm/@axa-ch/easy-config.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/@axa-ch/easy-config\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxa-ch%2Feasy-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faxa-ch%2Feasy-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxa-ch%2Feasy-config/lists"}