Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 7 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,12 @@ on:

jobs:
test:
name: Test (Node ${{ matrix.node-version }})
runs-on: ubuntu-latest
name: Test (Node ${{ matrix.node-version }}, ${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
node-version: [24, 25]

steps:
Expand All @@ -34,3 +36,6 @@ jobs:

- name: Build
run: node --run build

- name: Run tests
run: node --run test
4 changes: 4 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ jobs:
uses: actions/setup-node@v6
with:
node-version: 25
check-latest: true
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
Expand All @@ -40,6 +41,9 @@ jobs:
- name: Build
run: node --run build

- name: Run tests
run: node --run test

- name: Update version
run: |
git config user.name "${{ github.actor }}"
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/.cache
/dist
/node_modules
/coverage
38 changes: 36 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The plugin does not process the CSS in any way whatsoever, it is merely output i

## Installation

```
```bash
npm install -D ecij
```

Expand Down Expand Up @@ -133,9 +133,43 @@ ecij({
});
```

## Development

### Building

```bash
npm run build
```

### Formatting

```bash
npm run format
```

### Type Checking

```bash
npm run typecheck
```

### Running Tests

The project uses **integration tests** with **inline snapshot testing** to validate transformations.

```bash
# Run tests once
npm test

# Run tests with coverage
npm run test:coverage

# Update inline snapshots after intentional changes
npm test -- -u
```

## TODO

- Tests
- Scope handling
- Validate that the `css` used refers to the ecij export
- Full import/export handling (default/namespace import/export)
Expand Down
Loading