PHPackages                             jolimardi/laravel-sections - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. jolimardi/laravel-sections

ActiveLibrary

jolimardi/laravel-sections
==========================

Custom sections implementation by Joli Mardi

4.1.3(3mo ago)0245GPL-3.0PHPPHP ^8.1

Since Aug 29Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/jolimardi/laravel-sections)[ Packagist](https://packagist.org/packages/jolimardi/laravel-sections)[ RSS](/packages/jolimardi-laravel-sections/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (34)Used By (0)

Jolimardi - laravel-sections
============================

[](#jolimardi---laravel-sections)

**Ce package et fait pour fonctionner avec [Filament](https://filamentphp.com/docs/4.x/introduction/installation) et `composer require jolimardi/filament-video-field`**

Le CSS pour les sections est disponible sur le [repo Joli Mardi CSS](https://github.com/jolimardi/jolimardi-css/blob/main/layout/sections.css)

Installation
------------

[](#installation)

```
composer require jolimardi/laravel-sections
```

```
php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider"
```

#### Tags

[](#tags)

Il est également possible de *publish* le package en plusieurs fois en ajoutant différents tags, selon les besoins :

- `php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="models"` - *Publish aussi les models*
- `php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="migrations"`
- `php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="assets"`
- `php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="views"`
- `php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="enums"`
- - `php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="icons"`

3. Lancez les migrations pour ajouter les tables nécessaires à la base de données :

```
php artisan migrate`
```

Configuration
-------------

[](#configuration)

- Importez le fichier CSS du package dans `app.css` en ajoutant la ligne suivante *(Recommandé avec Vite.js)*:

```
@import "../../vendor/jolimardi/laravel-mysections/dist/sections.css";
```

Utilisation
-----------

[](#utilisation)

Utilisez la fonction `mySection($data, $key)` dans une views pour insérer une section. Pour passer des données spécifiques à la section ainsi que sa clé correspondante.

Composants
----------

[](#composants)

Il est possible d'utiliser le composant `` dans une views afin de définir des règles CSS pré-établies pour les sections. Voici un exemple :

```

    @mySection($sections, 'home.about')

        Ma section
        Largeur max-width-large et background "gray"

        Ma section
        Contenu de ma section

```

Customiser les sections
-----------------------

[](#customiser-les-sections)

Pour publier les vues dans votre projet et pourvoir les modifier (dans `resources/views/vendor/laravel-sections`) :

```
php artisan vendor:publish --provider="JoliMardi\MySections\MySectionsServiceProvider" --tag="views"
```

---

Création d'une nouvelle section intégrée à ce package
-----------------------------------------------------

[](#création-dune-nouvelle-section-intégrée-à-ce-package)

Voici les étapes à suivre pour créer une nouvelle section :

1. Ouvrez Nova et rendez-vous sur le tableau de bord.
2. Dans le menu, cliquez sur "Sections" pour ouvrir la liste des sections.
3. Cliquez sur "Ajouter une nouvelle section".

> Si vous avez ajouter une nouvelle section au packages, pensez à vous rentre sur "Sections templates" en amont pour lui donner un nom afin de pouvoir l'utiliser lors de la sélection du template

4. Sélectionnez les paramètres de la section. Trois sections sont pré-définies, mais il est possible d'en ajouter d'autres.
5. Pour ajouter une nouvelle section, allez dans "Section templates" sur Nova.
6. Donnez un nom à votre section et sélectionnez une vue.

*Remarque :* Ces instructions supposent que vous êtes déjà familiarisé avec l'utilisation de Nova et de Laravel. Si ce n'est pas le cas, je vous recommande de consulter la documentation officielle pour plus d'informations.

Modifier ce package (pour les contributeurs)
============================================

[](#modifier-ce-package-pour-les-contributeurs)

1. Installer les dépendances

```
composer install
npm install
```

2. Modifier un fichier css à chaque sauvegarde `dist/sections.css`

```
npx mix watch
```

Ou mettre à jour une fois en utilisant :

```
npx mix
```

> Remarque : Si vous modifier le contenu de `/dist` et que vous avez publish les assets. Il faut supprimer le fichier `section.css` dans `public/vendor/mysections` et relancer la commande pour publish le nouveau fichier (ou le --force marche ? A tester). (Voir Installation -&gt; Tags)

Ajouter une nouvelle section au package
---------------------------------------

[](#ajouter-une-nouvelle-section-au-package)

1. **Ajouter une nouvelle vue :** Créez et ajoutez une nouvelle vue dans le dossier `src/views`.
2. **Ajouter un fichier CSS :** Créez et ajoutez un fichier CSS correspondant dans le dossier `src/css`.
3. **Mettre à jour le fichier `webpack.mix.js` :** Ajoutez le fichier CSS à la configuration du `webpack.mix.js`.
4. **Compilation des assets :** Exécutez la commande npx mix pour recompiler les assets et actualiser le dossier `dist`.
5. **Mise à jour du submodule :** Si vous utilisez ce package en tant que submodule dans un autre projet, assurez-vous de mettre à jour le submodule.
6. **Référence :** Ensuite, reportez-vous à la section 'Création d'une nouvelle section' pour plus de détails sur la création d'une nouvelle section.

**Note :** Si on ajoute un fichier css, il faut l'ajouter au `webpack.mix.js` et relancé la commande `npx mix watch`.

Puis mettre à jour le dépôt et de mettre à jour votre projet avec les nouvelles modifications.

#### @TODO

[](#todo)

- Ajouter les variables css type max-width pour pouvoir utiliser le component `` sans avoir besoin de jolimardi-css
- Build le webpack.mix.js pour automatiquement récupérer tous les fichiers css du dossier relatif. J'ai essayé de glob les fichiers mais j'ai toujours un comportement qui ne convient pas.

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance80

Actively maintained with recent releases

Popularity14

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 98.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~27 days

Recently: every ~2 days

Total

33

Last Release

104d ago

Major Versions

0.3.2 → 1.02024-07-23

1.2.1 → 2.02024-09-12

2.0.3 → 3.02025-03-12

3.0.2 → 4.0.02026-01-19

### Community

Maintainers

![](https://www.gravatar.com/avatar/837198ca814b2f1f46b5d12c199582bb573ece7f5272b636f18b5ecde4340fc4?d=identicon)[JoliMardi](/maintainers/JoliMardi)

---

Top Contributors

[![romaincherot](https://avatars.githubusercontent.com/u/14823758?v=4)](https://github.com/romaincherot "romaincherot (72 commits)")[![EmilienHodee](https://avatars.githubusercontent.com/u/40523652?v=4)](https://github.com/EmilienHodee "EmilienHodee (1 commits)")

### Embed Badge

![Health badge](/badges/jolimardi-laravel-sections/health.svg)

```
[![Health](https://phpackages.com/badges/jolimardi-laravel-sections/health.svg)](https://phpackages.com/packages/jolimardi-laravel-sections)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
