PHPackages                             insyht/larvelous - 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. [Framework](/categories/framework)
4. /
5. insyht/larvelous

ActiveLibrary[Framework](/categories/framework)

insyht/larvelous
================

The Larvelous framework

v1.10.1(1y ago)2264PHPPHP ^8.2CI passing

Since Jun 15Pushed 1y ago1 watchersCompare

[ Source](https://github.com/insyht/larvelous)[ Packagist](https://packagist.org/packages/insyht/larvelous)[ RSS](/packages/insyht-larvelous/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (22)Versions (38)Used By (4)

Hoe het moet gaan werken: Elke website heeft 1 design, hierin worden dingen als kleuren en stijlen gedefinieerd (eigenlijk dus de css). De website bestaat uit pagina's. Elke pagina is gelinkt aan een template. Een template bestaat uit blokken, bijvoorbeeld een introductieblok of een imageslider blok. Naast blokken heb je ook nog formulieren, deze kun je net als blokken in een template plaatsen. Je kunt 1 of meer menus hebben, waarin je paginas kan plaatsen. In sommige blokken kun je een of meer media bestanden plaatsen, deze zijn apart te beheren onder het kopje Media. Ook heb je plugins, deze kunnen blokken/formulieren/templates/pagina's/menus/designs bevatten/modificeren.

Dus:

```
                                            Website--Design
                        ____________________________|____________________
                        |                                               |
                    Pagina--template                                    Pagina--template
            ____________________|                                           ________|________
            |                   |                                           |               |
            Blok                Blok                                        Blok            Blok
    ________|________
    |               |
    Media           Media

                                            Website--Design
                        _______________________|_______________________
                        |                                             |
                        Menu                                          Menu
      ___________________|____________              ___________________|____________
      |       |       |       |       |             |       |       |       |       |
    Pagina  Pagina  Pagina  Pagina  Pagina          Pagina  Pagina  Pagina  Pagina  Pagina

```

Deze boomstructuur wordt in de database opgeslagen in de models, en intern als JSON aangeboden via de website API, waarmee het CMS een connectie aan kan gaan. Het CMS heeft de website data dus zelf niet, maar baseert alles op de JSON die hij krijgt van de verbonden website. Eventueel zou ik deze JSON ook kunnen gebruiken als cache mechanisme op de site om deze sneller te maken (geen db queries meer nodig). Een voorbeeld:

{ "website": { "design": { "theme": "vegas", // Gebruik in de SCSS/themes map de SCSS met naam "vegas". Een theme bevat fonts, column structuren, etc. "baseColor1": "#000000", // Basiskleur 1 "baseColor2": "#000000", // Basiskleur 2 "shadowColor1": "#000000", // Schaduwkleur 1 "shadowColor2": "#000000", // Schaduwkleur 2 "darkColor1": "#000000", // Donkere kleur 1 "darkColor2": "#000000", // Donkere kleur 2 "lightColor1": "#000000", // Lichte kleur 1 "lightColor2": "#000000" // Lichte kleur 2 "fontColor1": "#000000", // Font kleur 1 "fontColor2": "#000000", // Font kleur 2 "fontColor3": "#000000" // Font kleur 3 }, "pages" : { "home" : { "id": 1, "title": "Startpagina", "url": "/", "blocks": \[ { "view": "introblock", "data": \[ { "name": "title", // In de view heb je een variabele met als naam "title" "value": "Dit is de titel van het intro blok" }, { "name": "content", // In de view heb je een variabele met als naam "content" "value": "Dit is een paragraaf voor de intro" } \] }, { "view": "paragraph", "data": \[ { "name": "title", "value": "Titel van een alinea" }, { "name": "subtitle", "value": "Subtitel van alinea" }, { "name": "content", "value": "Tekst van de alinea" }, { "name": "image", "value": 1 // Zie element 1 in "media" in deze JSON }, { "name": "imagePosition", "value": "left" }, { "name": "buttonTitle", "value": "Lees meer" }, { "name": "buttonLink", "value": "" }, { "name": "buttonAlt", "value": "Lees meer over deze alinea" } \] }, { "view": "cta", "data": \[ { "name": "question", "value": "Meer weten?" }, { "name": "employeeName", "value": "Jordy Thijs" }, { "name": "employeePicture", "value": 2 }, { "name": "profession", "value": "directeur" }, { "name": "phoneNumber", "value": "06 12 34 56 78" } \] } \] }, "landingspagina 1" : { "id": 2, "title": "Landingspagina 1", "url": "/landingspagina-1", "blocks": \[\] }, "landingspagina 2" : { "id": 3, "title": "Landingspagina 2", "url": "/landingspagina-2", "blocks": \[\] }, "over ons" : { "id": 4, "title": "Over ons", "url": "/over-ons", "blocks": \[\] } }, "menus": \[ { "id": 1, "pages": \[ { "id": 1, "title": "Homepage", "customUrl": null // Als null, dan gewoon de url pakken zoals gedefinieerd onder "pages", "subPages": \[\] }, { "id": 3, "title": "Mijn landingspagina", "customUrl": null // Als null, dan gewoon de url pakken zoals gedefinieerd onder "pages", "subPages": \[\] }, { "id": null, "title": "Google", "customUrl": "", "subPages": \[\] } \] } \], "media": \[ { "id": 1, "alt": "alinea afbeelding", "url": "", "url-thumbnail": "[https://mijnsite.nl/images/alinea\_thumbnail.jpg](https://mijnsite.nl/images/alinea_thumbnail.jpg)" }, { "id": 2, "alt": "Jordy Thijs", "url": "", "url-thumbnail": "[https://mijnsite.nl/images/jordy\_thumbnail.jpg](https://mijnsite.nl/images/jordy_thumbnail.jpg)" } \], "settings": {}, "plugins": {} } }

Database opbouw: pages id language\_id template\_id title url (of misschien juist de route?)

templates (dit is het soort pagina, bijvoorbeeld een textuele pagina of productpagina) id resource\_id (hiermee kan een template specifieke data opvragen) label view (pad van de Blade View, bijvoorbeeld templates/winkelwagen voor resources/views/templates/winkelwagen.blade.php)

blocks id resource\_id (hiermee kan een template specifieke data opvragen) view (pad van de Blade view vanaf de root, bijvoorbeeld insyht/larvelous-shop/resources/views/paragraph voor vendor/insyht/larvelous-shop/resources/views/paragraph.blade.php) label description

block\_variables id block\_id name (naam van de var in de Blade view maar dan zonder het dollarteken) label (naam vna het veld zoals de gebruiker het ziet in het CMS) type (textfield, textarea, imageselector, pageselector) required (boolean)

block\_variable\_values id block\_variable\_id language\_id value

block\_variable\_value\_template\_block (koppeltabel tussen template\_blocks en block\_variable\_values) id template\_block\_id block\_variable\_value\_id ordering (Voor als je van 1 block meerdere in een template hebt)

block\_templates (koppeltabel tussen templates en blocks) id page\_id block\_id enabled ordering

languages id name abbreviation (ISO-639-1)

SQL om bepaalde blokken te maken:

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance42

Moderate activity, may be stable

Popularity9

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity68

Established project with proven stability

 Bus Factor1

Top contributor holds 56.8% 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 ~15 days

Recently: every ~7 days

Total

33

Last Release

566d ago

Major Versions

0.10.0 → v1.0.02023-12-10

### Community

Maintainers

![](https://www.gravatar.com/avatar/39aa91367b7e981b79a57237cf4144e0d45e5dc3d070b6c0e1419de26b616dd7?d=identicon)[insyht](/maintainers/insyht)

---

Top Contributors

[![insyht](https://avatars.githubusercontent.com/u/23331102?v=4)](https://github.com/insyht "insyht (125 commits)")[![JordyThijsRB-Media](https://avatars.githubusercontent.com/u/85870221?v=4)](https://github.com/JordyThijsRB-Media "JordyThijsRB-Media (95 commits)")

---

Tags

larvelous

###  Code Quality

TestsPHPUnit

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/insyht-larvelous/health.svg)

```
[![Health](https://phpackages.com/badges/insyht-larvelous/health.svg)](https://phpackages.com/packages/insyht-larvelous)
```

###  Alternatives

[bagisto/bagisto

Bagisto Laravel E-Commerce

26.2k161.6k7](/packages/bagisto-bagisto)[krayin/laravel-crm

Krayin CRM

22.0k32.8k1](/packages/krayin-laravel-crm)[unopim/unopim

UnoPim Laravel PIM

9.4k1.8k](/packages/unopim-unopim)[raugadh/fila-starter

Laravel Filament Starter.

614.9k](/packages/raugadh-fila-starter)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1225.0k10](/packages/fleetbase-core-api)[ercogx/laravel-filament-starter-kit

This is a Filament v3 Starter Kit for Laravel 12, designed to accelerate the development of Filament-powered applications.

401.5k](/packages/ercogx-laravel-filament-starter-kit)

PHPackages © 2026

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