定制 tomdazy/php-scss-compiler 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tomdazy/php-scss-compiler

最新稳定版本:v1.0.2

Composer 安装命令:

composer require tomdazy/php-scss-compiler

包简介

Simple and lightweight SCSS compiler and watcher for PHP 8 using scssphp.

README 文档

README

pipeline status License: MIT Static Badge Packagist Downloads

Ce projet a pour but de proposer une solution simple et légère de compiler les fichiers SCSS en PHP v8.

Il s'appuie sur scssphp et fournit deux modes d'exécution :

  • build : compile une fois tous les fichiers configurés
  • watch : surveille les fichiers SCSS et recompile automatiquement en cas de modification

Le package a été pensé pour être facile à intégrer dans des projets PHP qui ne veulent pas dépendre d'une toolchain Node.js.

Fonctionnalités

  • configuration simple via un fichier PHP
  • support des fichiers, dossiers et patterns glob
  • support récursif des dossiers
  • destination configurable par entrée
  • exclusion optionnelle des partials (_*.scss)
  • sortie CSS compressée ou lisible
  • suivi basique des dépendances locales (@import, @use, @forward)
  • exécutable CLI prêt à l'emploi via vendor/bin/scss-builder

Installation

Depuis Packagist

composer require tomdazy/php-scss-compiler

En local

composer install

Configuration

Crée un fichier scss.config.php dans ton projet.

Tu peux partir de l'exemple fourni dans config/scss.config.example.php.

Exemple minimal

<?php

declare(strict_types=1);

return [
    'style' => 'compressed',
    'watch_interval' => 1.0,
    'compile_on_start' => true,
    'verbose' => true,
    'entries' => [
        [
            'sources' => [
                __DIR__ . '/assets/scss',
            ],
            'destination' => __DIR__ . '/public/css',
            'recursive' => true,
            'include_partials' => false,
        ],
    ],
];

Utilisation

Build

vendor/bin/scss-builder build scss.config.php

Watch

vendor/bin/scss-builder watch scss.config.php

Si aucun fichier de configuration n'est fourni, le binaire cherche par défaut scss.config.php dans le dossier courant.

Structure de configuration

Le fichier de configuration doit retourner un tableau avec les clés suivantes :

  • style : compressed ou expanded
  • watch_interval : intervalle de surveillance en secondes
  • compile_on_start : compile immédiatement au démarrage du mode watch
  • verbose : active les logs
  • entries : liste des entrées à compiler

Chaque entrée accepte :

  • sources : tableau de fichiers, dossiers ou patterns
  • destination : dossier de sortie, ou fichier CSS si une seule source fichier est utilisée
  • recursive : parcours récursif si la source est un dossier
  • include_partials : compile aussi les partials _*.scss

Exemples d'entrées

Plusieurs fichiers vers un dossier

[
    'sources' => [
        __DIR__ . '/assets/scss/app.scss',
        __DIR__ . '/assets/scss/admin.scss',
    ],
    'destination' => __DIR__ . '/public/css',
]

Un fichier vers un fichier précis

[
    'sources' => [
        __DIR__ . '/assets/scss/landing.scss',
    ],
    'destination' => __DIR__ . '/public/css/landing.bundle.css',
]

Un dossier récursif

[
    'sources' => [
        __DIR__ . '/modules',
    ],
    'destination' => __DIR__ . '/public/modules-css',
    'recursive' => true,
    'include_partials' => false,
]

Développement

composer install
composer test
vendor/bin/scss-builder build config/scss.config.example.php

Philosophie

  • simple
  • lisible
  • portable
  • facile à embarquer dans un projet PHP
  • sans surcouche inutile

Licence

MIT

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 4
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-04-12

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固