PHPackages                             velabuild/core - 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. [Admin Panels](/categories/admin)
4. /
5. velabuild/core

ActiveLibrary[Admin Panels](/categories/admin)

velabuild/core
==============

A full-featured AI Optimised CMS admin system, page builder, and content management package for Laravel

012[1 PRs](https://github.com/VelaBuild/core/pulls)PHP

Since Apr 19Pushed 1mo agoCompare

[ Source](https://github.com/VelaBuild/core)[ Packagist](https://packagist.org/packages/velabuild/core)[ RSS](/packages/velabuild-core/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependenciesVersions (3)Used By (0)

Vela Core
=========

[](#vela-core)

The core package for [Vela.build](https://vela.build) — a high-performance, standards-compliant, AI-friendly, extensible CMS built on Laravel.

[![License: MIT](https://camo.githubusercontent.com/08cef40a9105b6526ca22088bc514fbfdbc9aac1ddbf8d4e6c750e3a88a44dca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e737667)](LICENSE)

About
-----

[](#about)

This is the **core package** — it contains all the CMS logic, models, controllers, AI services, and admin panel. It is installed into Laravel projects as a Composer dependency.

**Want to get started quickly?** Use the [Vela CMS starter project](https://github.com/VelaBuild/cms) instead — it gives you a pre-configured Laravel application with Vela Core already wired up. Clone it once, customise it, and receive core updates via `composer update`.

Vela Core provides a full-featured content management system, page builder, and admin panel as a Laravel package. It's designed from the ground up to integrate AI capabilities natively — not as an afterthought — while remaining fast, extensible, and standards-compliant.

Features
--------

[](#features)

- **Page Builder** — Flexible block-based page builder with rows, blocks, widgets, and templates
- **AI-Native** — Built-in support for OpenAI, Claude, and Gemini for content generation, image generation, and AI-assisted workflows
- **Admin Panel** — Complete admin interface with authentication, roles, permissions, and 2FA
- **Media Management** — Integrated media library with image optimization and cache management (via Spatie Media Library)
- **Multilingual** — Full i18n support with 10 languages out of the box and translation management tools
- **SEO &amp; Analytics** — Google Analytics, Search Console, and PageSpeed Insights integration
- **Static Site Generation** — Generate static HTML and serve cached pages without booting Laravel
- **Extensible Registries** — Register custom blocks, menus, templates, widgets, and tools via the `Vela` facade
- **Cloudflare Integration** — Automatic cache purging and CDN management
- **PWA Support** — Icon generation and progressive web app configuration
- **Figma Export** — Design-to-code pipeline with Figma integration
- **Queue-Ready** — 14 async jobs for AI generation, content processing, translations, and more
- **Design System** — Project-level `/designsystem/` folder (git-tracked) holding brand docs, colour palette, and font choices. The admin block editor uses the palette/fonts as presets; the AI chatbot browses it on demand via `design_system_*` tools instead of getting the whole thing dumped into every prompt. Manage under Settings → Design System; also supports ZIP upload or URL import (e.g. from a Claude-generated design).

Requirements
------------

[](#requirements)

- PHP 8.1+
- Laravel 10 or 11

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

[](#installation)

```
composer require velabuild/core
```

The package auto-discovers its service provider and facade. Run the install command to publish assets and run migrations:

```
php artisan vela:install
```

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

[](#configuration)

Publish the configuration file:

```
php artisan vendor:publish --provider="VelaBuild\Core\VelaServiceProvider" --tag="config"
```

Configuration options include route prefixes, middleware stacks, AI provider settings, template selection, and multilingual setup. See the published config files for full details.

Static File Serving
-------------------

[](#static-file-serving)

Vela can generate pre-rendered HTML for public pages via `php artisan vela:generate-static`. When a matching static file exists, the page is served directly without booting Laravel — dramatically reducing response times and server load.

If you're using the [CMS starter project](https://github.com/VelaBuild/cms), this is already configured in `public/index.php`. If you're integrating Vela Core into an existing Laravel app, add the static file front-controller to the top of your `public/index.php` (before the Laravel bootstrap). It works by:

1. Reading `VELA_CACHE` from `.env` directly (lightweight file parse, no framework needed)
2. Mapping GET request URIs to pre-rendered HTML files in `resources/static/`
3. Serving the static file with cache headers and exiting — Laravel never boots
4. Falling through to normal Laravel bootstrap when no static file matches

Admin, auth, and API routes are automatically excluded. Static files are regenerated on content changes or manually via `php artisan vela:generate-static`. Set `VELA_CACHE=false` in `.env` to disable.

See the [CMS starter's `public/index.php`](https://github.com/VelaBuild/cms/blob/main/public/index.php) for the reference implementation.

Usage
-----

[](#usage)

### Writing a plugin

[](#writing-a-plugin)

Vela plugins are Laravel packages that register with Vela's extension points (blocks, menus, templates, widgets, tools). The canonical walkthrough — including the service-provider template, the `vela-page-editor-blocks` JS extension point, permission seeding, and the no-DB safety rules — lives in **[docs/plugins.md](docs/plugins.md)**.

The reference implementation is [**velabuild/snippets**](https://github.com/VelaBuild/snippets) — a real, small plugin that adds a Snippets admin page + a `Snippet` Page Builder block. Read its `SnippetsServiceProvider` alongside the plugin doc.

### Registering a block (quick example)

[](#registering-a-block-quick-example)

```
use VelaBuild\Core\Vela;

$vela = $this->app->make(Vela::class);

$vela->registerBlock('my-block', [
    'label'  => 'My Block',
    'icon'   => 'fas fa-cube',
    'view'   => 'my-namespace::public.block',    // public render
    'editor' => 'my-namespace::admin.block-form', // admin editor
    'defaults' => ['content' => [], 'settings' => []],
]);
```

### Registering a template

[](#registering-a-template)

```
$vela->registerTemplate('my-template', [
    'label' => 'My Template',
    'path'  => __DIR__.'/resources/views/templates/my-template',
]);
```

### Artisan Commands

[](#artisan-commands)

Vela ships with CLI commands for common tasks:

CommandDescription`vela:install`Initial setup and migration`vela:app-init`Initialize application configuration`vela:app-build`Build application assets`vela:create-content`Scaffold new content types`vela:import-content`Import content from external sources`vela:generate-image`AI image generation`vela:ai-wizard`Interactive AI content assistant`vela:generate-static`Generate static site files`vela:theme-check`Validate theme configuration`vela:cleanup-image-cache`Purge optimized image cacheRun `php artisan list vela` for the full list.

Testing
-------

[](#testing)

```
composer test
```

Or directly with PHPUnit:

```
vendor/bin/phpunit
```

Contributing
------------

[](#contributing)

Contributions are welcome! Please read our [Contributor License Agreement](CLA.md) before submitting a pull request.

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/my-feature`)
3. Commit your changes (`git commit -m 'Add my feature'`)
4. Push to the branch (`git push origin feature/my-feature`)
5. Open a pull request

By submitting a pull request, you agree to the terms of our [CLA](CLA.md).

Security
--------

[](#security)

If you discover a security vulnerability, please email  instead of opening a public issue.

License
-------

[](#license)

Vela Core is open-source software licensed under the [MIT License](LICENSE).

Links
-----

[](#links)

- [Website](https://vela.build)
- [CMS Starter Project](https://github.com/VelaBuild/cms)
- [Documentation](https://vela.build/docs)

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance61

Regular maintenance activity

Popularity5

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity15

Early-stage or recently created project

 Bus Factor1

Top contributor holds 88.4% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/ad0d81e88f801bc74aff0fd0c82cbfc86ab0853ebf0a4b12b39a96fe05f00cf2?d=identicon)[mnwalker](/maintainers/mnwalker)

---

Top Contributors

[![mnwalker](https://avatars.githubusercontent.com/u/9032080?v=4)](https://github.com/mnwalker "mnwalker (76 commits)")[![claude](https://avatars.githubusercontent.com/u/81847?v=4)](https://github.com/claude "claude (10 commits)")

### Embed Badge

![Health badge](/badges/velabuild-core/health.svg)

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

###  Alternatives

[leung/laravel-adminer

adminer for laravel5.\*

169.0k](/packages/leung-laravel-adminer)

PHPackages © 2026

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