Merge branch 'main' into refactor/tailwind-4-migration

This commit is contained in:
Bryan Galdámez 2025-06-18 00:30:31 -06:00
commit 2924e21793
No known key found for this signature in database
15 changed files with 256 additions and 252 deletions

2
.github/CODEOWNERS vendored
View file

@ -1 +1 @@
* @mauro-balades
* @mauro-valades

View file

@ -1,189 +1,197 @@
name: CI Pipeline
on:
pull_request:
types: [opened, synchronize, reopened]
concurrency:
group: ci-pipeline-${{ github.head_ref }}
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
check_changes:
name: Check Changes
runs-on: ubuntu-latest
permissions:
contents: read
outputs:
exists: ${{ steps.filter.outputs.exists }}
steps:
- uses: actions/checkout@v4
- name: Filter changes
uses: yumemi-inc/path-filter@v2
id: filter
with:
patterns: |
**
!**.md
!.gitignore
!.gitattributes
!.vscode/**
!.env.example
setup:
name: Setup Dependencies
needs: check_changes
if: ${{ needs.check_changes.outputs.exists == 'true' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Cache node_modules
id: cache-deps
- name: Check if node_modules cache exists
id: check-node-modules-cache
uses: actions/cache@v4
with:
path: |
.turbo
node_modules
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Verify pnpm installation
run: pnpm --version
- name: Install dependencies
run: pnpm install --frozen-lockfile
*/node_modules
key: ${{ runner.os }}-node-modules-${{ hashFiles('**/pnpm-lock.yaml') }}
lookup-only: true
eslint:
runs-on: ubuntu-latest
needs: setup
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
- uses: pnpm/action-setup@v4
node-version: lts/*
- name: Setup pnpm
if: steps.check-node-modules-cache.outputs.cache-hit != 'true'
uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Restore node_modules from cache
uses: actions/cache@v4
run_install: false
- name: Install dependencies
if: steps.check-node-modules-cache.outputs.cache-hit != 'true'
run: pnpm install --frozen-lockfile
- name: Save node_modules cache
if: steps.check-node-modules-cache.outputs.cache-hit != 'true'
uses: actions/cache/save@v4
with:
path: |
.turbo
node_modules
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Run Eslint check
run: pnpm exec turbo run lint
*/node_modules
key: ${{ runner.os }}-node-modules-${{ hashFiles('**/pnpm-lock.yaml') }}
prettier:
quality_checks:
name: ${{ matrix.name }}
needs: [check_changes, setup]
if: ${{ needs.check_changes.outputs.exists == 'true' }}
runs-on: ubuntu-latest
needs: setup
strategy:
matrix:
include:
- check: lint
name: Lint
- check: format
name: Format
- check: test
name: Test
- check: spell
name: Spell Check
- check: build
name: Build
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Restore node_modules from cache
uses: actions/cache@v4
with:
path: |
.turbo
node_modules
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Run Prettier check
run: pnpm exec turbo run format
cspell:
runs-on: ubuntu-latest
needs: setup
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Restore node_modules from cache
- name: Restore Turborepo Cache
uses: actions/cache@v4
with:
path: |
.turbo
node_modules
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Run cspell check
run: pnpm exec turbo run spell
path: .turbo
key: ${{ runner.os }}-turbo-${{ matrix.check }}-${{ github.sha }}
restore-keys: ${{ runner.os }}-turbo-${{ matrix.check }}-
vitest:
runs-on: ubuntu-latest
needs: setup
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Restore node_modules from cache
uses: actions/cache@v4
- name: Restore node_modules cache
uses: actions/cache/restore@v4
with:
path: |
.turbo
node_modules
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Run Vitest tests
run: pnpm exec turbo test
*/node_modules
key: ${{ runner.os }}-node-modules-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: ${{ runner.os }}-node-modules-
build:
runs-on: ubuntu-latest
needs: setup
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Restore node_modules from cache
uses: actions/cache@v4
with:
path: |
.turbo
node_modules
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Build project
run: pnpm exec turbo run build
- name: Upload build output
uses: actions/upload-artifact@v4
with:
name: build
path: |
dist
run_install: false
- name: Run ${{ matrix.name }}
run: pnpm exec turbo run ${{ matrix.check }}
playwright:
name: Playwright Tests
needs: [check_changes, setup, quality_checks]
if: ${{ needs.check_changes.outputs.exists == 'true' }}
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: lts/*
- uses: pnpm/action-setup@v4
with:
version: 10.11.0
- name: Restore node_modules from cache
- name: Restore Turborepo Cache
uses: actions/cache@v4
with:
path: |
.turbo
node_modules
path: .turbo
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
restore-keys: ${{ runner.os }}-turbo-
- name: Restore node_modules cache
uses: actions/cache/restore@v4
with:
path: |
node_modules
*/node_modules
key: ${{ runner.os }}-node-modules-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: ${{ runner.os }}-node-modules-
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
run_install: false
- name: Cache Playwright Browsers
uses: actions/cache@v4
with:
path: ~/.cache/ms-playwright
key: ${{ runner.os }}-playwright-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: ${{ runner.os }}-playwright-
- name: Install Playwright Browsers
run: pnpm exec playwright install --with-deps
- name: Download build output
uses: actions/download-artifact@v4
with:
name: build
path: dist
- name: Run Playwright tests
- name: Run Playwright Tests
run: pnpm exec turbo run test:playwright
verify:
name: Verify
needs: [check_changes, quality_checks, playwright]
runs-on: ubuntu-latest
if: always()
outputs:
success: ${{ steps.set-result.outputs.success }}
steps:
- name: Set Result
id: set-result
run: |
# Check if changes exist but no jobs ran, or if any job failed or was cancelled
if [[ "${{ needs.check_changes.outputs.exists }}" != "true" ]]; then
echo "success=true" >> $GITHUB_OUTPUT
echo "No relevant changes detected - pipeline passed"
elif [[ "${{ contains(needs.*.result, 'failure') }}" == "true" || "${{ contains(needs.*.result, 'cancelled') }}" == "true" ]]; then
echo "success=false" >> $GITHUB_OUTPUT
echo "Pipeline failed - some jobs failed or were cancelled"
exit 1
else
echo "success=true" >> $GITHUB_OUTPUT
echo "All jobs completed successfully"
fi

View file

@ -23,6 +23,14 @@ env:
jobs:
renovate:
runs-on: ubuntu-latest
permissions:
contents: write
issues: write
pull-requests: write
security-events: read
actions: read
checks: read
statuses: write
steps:
- name: Checkout
uses: actions/checkout@v4

View file

@ -53,6 +53,7 @@
"Pdzly",
"Ribaric",
"taroj",
"Turborepo",
"testid",
"theming",
"tuta",
@ -66,6 +67,7 @@
"wmfcdm",
"XPCOM",
"xmark",
"yumemi",
"zsync"
],
"flagWords": [],

View file

@ -5,7 +5,7 @@
"engines": {
"pnpm": "^10.0.0"
},
"packageManager": "pnpm@10.11.0",
"packageManager": "pnpm@10.12.1",
"scripts": {
"dev": "astro dev --port 3000",
"start": "astro preview --port 3000",
@ -39,6 +39,7 @@
"@types/react-dom": "^19.1.5",
"astro": "5.7.10",
"astro-navbar": "2.3.7",
"turbo": "^2.5.4",
"autoprefixer": "10.4.14",
"clsx": "2.1.1",
"date-fns": "4.1.0",
@ -92,7 +93,6 @@
"prettier": "3.5.3",
"prettier-plugin-astro": "0.14.1",
"prettier-plugin-tailwindcss": "^0.6.11",
"turbo": "^2.5.4",
"typescript-eslint": "8.33.0",
"vite-tsconfig-paths": "5.1.4",
"vitest": "3.1.3",

6
pnpm-lock.yaml generated
View file

@ -89,6 +89,9 @@ importers:
tailwindcss:
specifier: 4.1.8
version: 4.1.8
turbo:
specifier: ^2.5.4
version: 2.5.4
typescript:
specifier: 5.6.3
version: 5.6.3
@ -204,9 +207,6 @@ importers:
prettier-plugin-tailwindcss:
specifier: ^0.6.11
version: 0.6.12(prettier-plugin-astro@0.14.1)(prettier@3.5.3)
turbo:
specifier: ^2.5.4
version: 2.5.4
typescript-eslint:
specifier: 8.33.0
version: 8.33.0(eslint@9.27.0(jiti@2.4.2))(typescript@5.6.3)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Before After
Before After

Binary file not shown.

Binary file not shown.

View file

@ -1,131 +1,79 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:recommended", ":semanticCommits", "config:js-app"],
"timezone": "UTC",
"schedule": ["before 9am on Monday"],
"labels": ["dependencies"],
"assignees": ["@me"],
"prConcurrentLimit": 5,
"extends": ["config:recommended", "config:js-app"],
"labels": ["dependencies", "renovate"],
"prConcurrentLimit": 10,
"prHourlyLimit": 2,
"lockFileMaintenance": {
"enabled": true,
"automerge": false,
"schedule": ["before 9am on Monday"]
},
"rebaseWhen": "conflicted",
"dependencyDashboard": true,
"packageRules": [
{
"description": "Astro and React ecosystem packages",
"matchPackagePatterns": ["^@astrojs/", "^astro", "^react", "^@types/react"],
"groupName": "Astro and React core",
"schedule": ["before 9am on Monday"],
"automerge": false,
"reviewersFromCodeOwners": true
"description": "Group minor and patch-level updates",
"matchUpdateTypes": ["minor", "patch", "digest"]
},
{
"description": "Development dependencies",
"matchDepTypes": ["devDependencies"],
"groupName": "Dev dependencies",
"schedule": ["before 9am on Monday"],
"automerge": false,
"automergeType": "pr",
"minimumReleaseAge": "3 days"
"description": "Group Astro related packages",
"groupName": "astro",
"matchPackageNames": ["astro*", "@astrojs*"]
},
{
"description": "Testing packages",
"matchPackagePatterns": [
"^@testing-library/",
"^@playwright/",
"^vitest",
"^@vitest/",
"^jsdom"
],
"groupName": "Testing packages",
"schedule": ["before 9am on Monday"],
"automerge": false,
"automergeType": "pr"
"description": "Group React related packages",
"groupName": "react",
"matchPackageNames": ["react*", "@types/react*"]
},
{
"description": "ESLint and TypeScript packages",
"matchPackagePatterns": ["^@typescript-eslint/", "^eslint", "^typescript", "^@types/"],
"excludePackagePatterns": ["^@types/react"],
"groupName": "TypeScript and ESLint",
"schedule": ["before 9am on Monday"],
"automerge": false,
"automergeType": "pr"
"description": "Group testing libraries",
"groupName": "testing",
"matchPackageNames": ["vitest*", "@vitest*", "@testing-library*", "@playwright*", "jsdom*"]
},
{
"description": "Formatting and code quality tools",
"description": "Group ESLint and TypeScript packages",
"groupName": "eslint-typescript",
"matchPackageNames": ["eslint*", "@eslint*", "typescript*", "@typescript-eslint*"]
},
{
"description": "Group formatting and code quality tools",
"groupName": "code-quality",
"matchPackageNames": ["prettier*", "lefthook*", "@commitlint*", "cspell*", "@cspell*"]
},
{
"description": "Group TailwindCSS ecosystem",
"groupName": "tailwindcss",
"matchPackageNames": [
"prettier",
"prettier-plugin-astro",
"prettier-plugin-tailwindcss",
"husky",
"lint-staged"
],
"groupName": "Code formatting tools",
"schedule": ["before 9am on Monday"],
"automerge": false,
"automergeType": "pr"
"tailwind*",
"@tailwindcss*",
"autoprefixer",
"postcss",
"clsx",
"tailwind-merge"
]
},
{
"description": "TailwindCSS ecosystem",
"matchPackagePatterns": ["^tailwind", "^@tailwindcss/"],
"matchPackageNames": ["autoprefixer", "postcss", "clsx", "tailwind-merge"],
"groupName": "TailwindCSS ecosystem",
"schedule": ["before 9am on Monday"],
"automerge": false
"description": "Group FontAwesome packages",
"groupName": "fontawesome",
"matchPackageNames": ["@fortawesome*"]
},
{
"description": "FontAwesome packages",
"matchPackagePatterns": ["^@fortawesome/"],
"groupName": "FontAwesome packages",
"schedule": ["before 9am on Monday"],
"automerge": false,
"automergeType": "pr"
"description": "Group build and bundling tools",
"groupName": "build-tools",
"matchPackageNames": ["turbo*", "vite*", "jiti*", "wrangler*"]
},
{
"description": "Lucide icon packages",
"matchPackagePatterns": ["^lucide-"],
"groupName": "Lucide icons",
"schedule": ["before 9am on Monday"],
"automerge": false,
"automergeType": "pr"
"description": "Group type definitions",
"groupName": "type-definitions",
"matchPackageNames": ["@types*", "!@types/react*"]
},
{
"description": "Group devDependencies",
"groupName": "devDependencies",
"matchDepTypes": ["devDependencies"]
},
{
"description": "Major updates require manual review",
"matchUpdateTypes": ["major"],
"automerge": false,
"schedule": ["before 9am on Monday"],
"labels": ["dependencies", "major-update"],
"reviewersFromCodeOwners": true
},
{
"description": "Pin Node.js to LTS versions",
"matchPackageNames": ["node"],
"allowedVersions": "/^(18|20|22)\\./",
"automerge": false
},
{
"description": "Cloudflare Workers and Wrangler",
"matchPackageNames": ["wrangler", "@astrojs/cloudflare"],
"groupName": "Cloudflare ecosystem",
"schedule": ["before 9am on Monday"],
"automerge": false,
"reviewersFromCodeOwners": true
"labels": ["dependencies", "major-update"]
}
],
"vulnerabilityAlerts": {
"enabled": false,
"labels": ["security", "dependencies"],
"automerge": false,
"schedule": ["at any time"]
},
"osvVulnerabilityAlerts": true,
"dependencyDashboard": false,
"dependencyDashboardTitle": "Dependency Dashboard",
"dependencyDashboardHeader": "This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.",
"dependencyDashboardFooter": "Configure Renovate in `renovate.json`",
"configMigration": true,
"platformAutomerge": false,
"automergeStrategy": "squash"
"vulnerabilityAlerts": { "labels": ["security", "dependencies"] },
"osvVulnerabilityAlerts": true
}

Binary file not shown.

View file

@ -161,7 +161,7 @@
"members": {
"browser": {
"mauro": {
"name": "Mauro B.",
"name": "Mauro V.",
"description": "Creator, Main Developer",
"link": "https://cheff.dev/"
},

View file

@ -2781,5 +2781,45 @@
"workflowId": 15372237282,
"image": false,
"date": "01/06/2025"
},
{
"version": "1.13b",
"extra": "This update includes overall fixes, stability and a new way to manage spaces",
"fixes": [
"Fixed issues related to glance and split view",
"Fixed performance issues and high GPU usage for some users",
"Other small fixes and improvements"
],
"security": "https://www.mozilla.org/en-US/security/advisories/mfsa2025-47/",
"features": [
"There's a new way to manage spaces, which brings a more intuitive and user-friendly experience",
"Updated to firefox 139.0.4",
"Added support for google safebrowsing for better security",
"Collapsed toolbar gets a slight UI redesign"
],
"breakingChanges": [
"Customizable UI buttons at the bottom has been reset to a new default state"
],
"workflowId": 15630968997,
"image": false,
"date": "13/06/2025"
},
{
"version": "1.13.1b",
"extra": "",
"fixes": ["Small fixes from the previous release."],
"features": [],
"workflowId": 15656297661,
"image": false,
"date": "15/06/2025"
},
{
"version": "1.13.2b",
"extra": "",
"fixes": [],
"features": ["Show spaces when right clicking on the workspace indicator"],
"workflowId": 15668398583,
"image": false,
"date": "16/06/2025"
}
]

View file

@ -1,4 +1 @@
[
"This update includes some cool new features and fixes! Starting with comunity made Mods improvements and animations, and a new way to store your essentials for workspaces in different containers!",
"1.12.5b"
]
["This update includes a nice upgrade to workspace management and some nice fixes!", "1.13.2b"]

View file

@ -32,7 +32,8 @@
},
"test:playwright": {
"cache": true,
"inputs": ["**/*.{ts,tsx,js,jsx}"],
"dependsOn": ["build"],
"inputs": ["**/*.{ts,tsx,js,jsx,astro}"],
"outputs": ["playwright-report/**", "test-results/**"]
}
},