cloudbase/skeleton

The official CloudBase plugin template package.

Installs: 3

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:project

pkg:composer/cloudbase/skeleton

1.2.0 2025-10-06 23:30 UTC

This package is auto-updated.

Last update: 2025-11-06 23:38:59 UTC


README

A template project for creating CloudBase plugins.

composer create-project cloudbase/skeleton my-plugin

Routes & Controllers

Controllers

Your plugin controllers need to be defined inside config/services.yaml - a default definition has been created for you which will more often than not require no changes - unless you'd like your controllers to live outside your plugins src/Controllers directory:

  CloudBase\Skeleton\Controller\:
    resource: '../src/Controller'
    tags: [ 'controller.service_arguments' ]
    autowire: true
    public: true

Routes

Your controllers are responsible for defining their own routes as attributes. See the example controller provided at src/Controller/PluginController.php.

Your controller methods must return a Symfony\Component\HttpFoundation\Response object.

You can render plain text by returning a new Response():

return new Response('Hello, world!', 200);

Templates

CloudBase uses Latte as its templating engine. You can return rendered Latte templates:

return $this->renderedLatteResponse('@vendor/package/index');

The above code will render your plugins views/index.latte template.