Skip to content

Commit

Permalink
Merge pull request #3 from hedgehoglab-engineering/test-workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
samturrell authored Oct 18, 2023
2 parents 4c00bd0 + 115503b commit 314bd6c
Show file tree
Hide file tree
Showing 27 changed files with 233 additions and 38 deletions.
31 changes: 31 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Run tests

on:
- push
- pull_request

jobs:
test:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: '.nvmrc'

- uses: pnpm/action-setup@v2
name: Install pnpm
with:
version: 8
run_install: |
- recursive: true
- name: Build
run: pnpm build

- name: Run tests
run: pnpm test
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
v20
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ Monorepo for managing all the linter configs used on projects within the hedgeho

### Eslint

> [!NOTE]
> The `@hedgehoglab/eslint-config` package pulls in all of the framework specific configs, so you should only need to pull in the specific config packages if there are incompatibilities.
- [@hedgehoglab/eslint-config](./packages/eslint-config)
- [@hedgehoglab/eslint-config-basic](./packages/eslint-config-basic)
- [@hedgehoglab/eslint-config-ts](./packages/eslint-config-ts)
Expand All @@ -20,6 +23,9 @@ Monorepo for managing all the linter configs used on projects within the hedgeho

### Stylelint

> [!NOTE]
> The `@hedgehoglab/stylelint-config` package pulls in all of the framework/pre-processor specific configs, so you should only need to pull in the specific config packages if there are incompatibilities.
- [@hedgehoglab/stylelint-config](./packages/stylelint-config)
- [@hedgehoglab/stylelint-config-basic](./packages/stylelint-config-basic)
- [@hedgehoglab/stylelint-config-scss](./packages/stylelint-config-scss)
Expand Down
5 changes: 4 additions & 1 deletion packages/eslint-config-basic/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,13 @@

# @hedgehoglab/eslint-config-basic

This package contains the standard ESlint configuration used on all hedgehog lab projects, both internally and for our clients.
This package contains the standard ESlint configuration used on all hedgehog lab projects, both internally and for our clients. It contains

This package is meant to be used with eslint configs using the new [ESlint flat config](https://eslint.org/docs/latest/use/configure/migration-guide#start-using-flat-config-files) format.

> [!NOTE]
> This package contains basic rules, and nothing framework specific. Please pull in the framework specific configs alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
4 changes: 3 additions & 1 deletion packages/eslint-config-basic/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"description": "Basic eslint config rules for the hedgehog lab org",
"keywords": [
"eslint-config",
"eslint",
"hedgehoglab"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/eslint-config-basic",
Expand All @@ -22,7 +23,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"dependencies": {
"eslint-plugin-i": "^2.28.1"
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-config-nuxt/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ This package contains the standard ESlint configuration used on all hedgehog lab

This package is meant to be used with eslint configs using the new [ESlint flat config](https://eslint.org/docs/latest/use/configure/migration-guide#start-using-flat-config-files) format.

> [!NOTE]
> This package contains Nuxt-specific rules, and not the basic rules. Please pull in the basic config alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
9 changes: 6 additions & 3 deletions packages/eslint-config-nuxt/package.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
{
"name": "@hedgehoglab/eslint-config-nuxt",
"version": "0.1.7",
"description": "Basic eslint config rules for the hedgehog lab org",
"description": "Nuxt eslint config rules for the hedgehog lab org",
"keywords": [
"eslint-config",
"hedgehoglab"
"eslint",
"hedgehoglab",
"nuxt"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/eslint-config-nuxt",
"license": "ISC",
Expand All @@ -22,7 +24,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"devDependencies": {
"tsup": "^7.2.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-config-react/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ This package contains the standard ESlint configuration used on all hedgehog lab

This package is meant to be used with eslint configs using the new [ESlint flat config](https://eslint.org/docs/latest/use/configure/migration-guide#start-using-flat-config-files) format.

> [!NOTE]
> This package contains React-specific rules, and not the basic rules. Please pull in the basic config alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
9 changes: 6 additions & 3 deletions packages/eslint-config-react/package.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
{
"name": "@hedgehoglab/eslint-config-react",
"version": "0.1.7",
"description": "Basic eslint config rules for the hedgehog lab org",
"description": "React eslint config rules for the hedgehog lab org",
"keywords": [
"eslint-config",
"hedgehoglab"
"eslint",
"hedgehoglab",
"react"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/eslint-config-react",
"license": "ISC",
Expand All @@ -22,7 +24,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"devDependencies": {
"tsup": "^7.2.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-config-ts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ This package contains the standard ESlint configuration used on all hedgehog lab

This package is meant to be used with eslint configs using the new [ESlint flat config](https://eslint.org/docs/latest/use/configure/migration-guide#start-using-flat-config-files) format.

> [!NOTE]
> This package contains TypeScript-specific rules, and not the basic rules. Please pull in the basic config alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
9 changes: 6 additions & 3 deletions packages/eslint-config-ts/package.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
{
"name": "@hedgehoglab/eslint-config-ts",
"version": "0.1.7",
"description": "Basic eslint config rules for the hedgehog lab org",
"description": "Typescript eslint config rules for the hedgehog lab org",
"keywords": [
"eslint-config",
"hedgehoglab"
"eslint",
"hedgehoglab",
"typescript"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/eslint-config-ts",
"license": "ISC",
Expand All @@ -22,7 +24,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"devDependencies": {
"tsup": "^7.2.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-config-vue/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ This package contains the standard ESlint configuration used on all hedgehog lab

This package is meant to be used with eslint configs using the new [ESlint flat config](https://eslint.org/docs/latest/use/configure/migration-guide#start-using-flat-config-files) format.

> [!NOTE]
> This package contains Vue-specific rules, and not the basic rules. Please pull in the basic config alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
9 changes: 6 additions & 3 deletions packages/eslint-config-vue/package.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
{
"name": "@hedgehoglab/eslint-config-vue",
"version": "0.1.7",
"description": "Basic eslint config rules for the hedgehog lab org",
"description": "Vue eslint config rules for the hedgehog lab org",
"keywords": [
"eslint-config",
"hedgehoglab"
"eslint",
"hedgehoglab",
"vue"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/eslint-config-vue",
"license": "ISC",
Expand All @@ -22,7 +24,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"dependencies": {
"eslint-plugin-vue": "^9.17.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/eslint-config/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ This package contains the standard ESlint configuration used on all hedgehog lab

This package is meant to be used with eslint configs using the new [ESlint flat config](https://eslint.org/docs/latest/use/configure/migration-guide#start-using-flat-config-files) format.

> [!NOTE]
> This package contains all the configs of the org, including all framework specific configs. Framework specific configs do not need to be pulled in alongside this one.
## Usage

Add the config to your project dependencies:
Expand Down
6 changes: 4 additions & 2 deletions packages/eslint-config/package.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
{
"name": "@hedgehoglab/eslint-config",
"version": "0.1.7",
"description": "Basic eslint config rules for the hedgehog lab org",
"description": "Combined eslint config rules for the hedgehog lab org",
"keywords": [
"eslint-config",
"eslint",
"hedgehoglab"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/eslint-config",
Expand All @@ -22,7 +23,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"dependencies": {
"@hedgehoglab/eslint-config-basic": "workspace:*",
Expand Down
11 changes: 8 additions & 3 deletions packages/prettier-config/package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
{
"name": "@hedgehoglab/prettier-config",
"version": "0.1.7",
"description": "",
"keywords": [],
"description": "Prettier config rules for the hedgehog lab org",
"keywords": [
"prettier-config",
"prettier",
"hedgehoglab"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/prettier-config",
"license": "ISC",
"author": "Sam Turrell <[email protected]>",
Expand All @@ -19,7 +23,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts"
"build": "tsup src/index.ts --format esm,cjs --clean --dts",
"test": "tsc --noEmit"
},
"devDependencies": {
"tsup": "^7.2.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/stylelint-config-basic/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@

This package contains the standard Stylelint configuration used on all hedgehog lab projects, both internally and for our clients.

> [!NOTE]
> This package contains basic rules, and nothing pre-processor specific. Please pull in the pre-processor specific configs alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
11 changes: 8 additions & 3 deletions packages/stylelint-config-basic/package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
{
"name": "@hedgehoglab/stylelint-config-basic",
"version": "0.1.7",
"description": "",
"keywords": [],
"description": "Basic stylelint config rules for the hedgehog lab org",
"keywords": [
"stylelint-config",
"stylelint",
"hedgehoglab"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/stylelint-config-basic",
"license": "ISC",
"author": "Sam Turrell <[email protected]>",
Expand All @@ -19,7 +23,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts && fix-tsup-cjs"
"build": "tsup src/index.ts --format esm,cjs --clean --dts && fix-tsup-cjs",
"test": "tsc --noEmit"
},
"devDependencies": {
"fix-tsup-cjs": "^1.2.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/stylelint-config-scss/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@

This package contains the standard Stylelint configuration used on all hedgehog lab projects, both internally and for our clients.

> [!NOTE]
> This package contains SCSS-specific rules, and not the basic rules. Please pull in the basic config alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
12 changes: 9 additions & 3 deletions packages/stylelint-config-scss/package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
{
"name": "@hedgehoglab/stylelint-config-scss",
"version": "0.1.7",
"description": "",
"keywords": [],
"description": "SCSS specific stylelint config rules for the hedgehog lab org",
"keywords": [
"stylelint-config",
"stylelint",
"hedgehoglab",
"scss"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/stylelint-config-scss",
"license": "ISC",
"author": "Sam Turrell <[email protected]>",
Expand All @@ -19,7 +24,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts && fix-tsup-cjs"
"build": "tsup src/index.ts --format esm,cjs --clean --dts && fix-tsup-cjs",
"test": "tsc --noEmit"
},
"dependencies": {
"stylelint": "^15.11.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/stylelint-config-vue/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@

This package contains the standard Stylelint configuration used on all hedgehog lab projects, both internally and for our clients.

> [!NOTE]
> This package contains Vue-specific rules, and not the basic rules. Please pull in the basic config alongside this one as needed.
## Usage

Add the config to your project dependencies:
Expand Down
12 changes: 9 additions & 3 deletions packages/stylelint-config-vue/package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
{
"name": "@hedgehoglab/stylelint-config-vue",
"version": "0.1.7",
"description": "",
"keywords": [],
"description": "Vue specific stylelint config rules for the hedgehog lab org",
"keywords": [
"stylelint-config",
"stylelint",
"hedgehoglab",
"vue"
],
"homepage": "https://github.com/hedgehoglab-engineering/frontend-linters/tree/main/packages/stylelint-config-vue",
"license": "ISC",
"author": "Sam Turrell <[email protected]>",
Expand All @@ -19,7 +24,8 @@
"./dist"
],
"scripts": {
"build": "tsup src/index.ts --format esm,cjs --clean --dts && fix-tsup-cjs"
"build": "tsup src/index.ts --format esm,cjs --clean --dts && fix-tsup-cjs",
"test": "tsc --noEmit"
},
"dependencies": {
"stylelint-config-html": "^1.1.0",
Expand Down
Loading

0 comments on commit 314bd6c

Please sign in to comment.