PHPackages                             marphy/blogstudio-bundle - 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. marphy/blogstudio-bundle

ActiveSymfony-bundle

marphy/blogstudio-bundle
========================

Symfony bundle for integrating BlogStudio blog management

v0.1.0(1mo ago)00MITPHPPHP &gt;=8.2

Since Mar 27Pushed 1mo agoCompare

[ Source](https://github.com/marphy-sk/blogstudio-symfony)[ Packagist](https://packagist.org/packages/marphy/blogstudio-bundle)[ RSS](/packages/marphy-blogstudio-bundle/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (6)Versions (2)Used By (0)

BlogStudio Symfony Bundle
=========================

[](#blogstudio-symfony-bundle)

Symfony 7.2+ bundle for integrating [BlogStudio](https://blogstudio.dev) blog content and analytics tracking into your Symfony application.

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

[](#installation)

```
composer require marphy/blogstudio-bundle
```

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

[](#configuration)

Create `config/packages/blogstudio.yaml`:

```
blogstudio:
    api_key: '%env(BLOGSTUDIO_API_KEY)%'
    public_key: '%env(BLOGSTUDIO_PUBLIC_KEY)%'
    base_url: 'https://api.blogstudio.dev'  # optional, this is the default
    cache_ttl: 300                           # optional, seconds (0 = no cache)
```

Add to `.env`:

```
BLOGSTUDIO_API_KEY=your-server-side-api-key
BLOGSTUDIO_PUBLIC_KEY=your-client-side-public-key
```

Usage
-----

[](#usage)

### In a Controller

[](#in-a-controller)

```
use Marphy\BlogStudioBundle\Client\BlogStudioClientInterface;

class BlogController extends AbstractController
{
    #[Route('/blog', name: 'blog_index')]
    public function index(BlogStudioClientInterface $client): Response
    {
        $articles = $client->getArticles(limit: 10);

        return $this->render('blog/index.html.twig', [
            'articles' => $articles->articles,
            'nextCursor' => $articles->nextCursor,
        ]);
    }

    #[Route('/blog/{slug}', name: 'blog_show')]
    public function show(string $slug, BlogStudioClientInterface $client): Response
    {
        $article = $client->getArticle($slug);

        return $this->render('blog/show.html.twig', [
            'article' => $article,
        ]);
    }
}
```

### In Twig

[](#in-twig)

Requires `symfony/twig-bundle`.

```
{# List articles #}
{% set result = blogstudio_articles(10) %}
{% for article in result.articles %}
    {{ article.title }}
    {{ article.excerpt }}
{% endfor %}

{# Single article #}
{% set article = blogstudio_article('my-post-slug') %}
{{ article.title }}
{{ article.content|raw }}

{# Categories and tags #}
{% set categories = blogstudio_categories() %}
{% set tags = blogstudio_tags() %}

{# Analytics tracker (renders script tag) #}
{{ blogstudio_tracker(article.id) }}
```

### Available Twig Functions

[](#available-twig-functions)

FunctionReturnsDescription`blogstudio_articles(limit, cursor, categoryId)``ArticleList`List articles with pagination`blogstudio_article(slug)``Article`Get single article by slug`blogstudio_categories()``Category[]`List all categories`blogstudio_tags()``Tag[]`List all tags`blogstudio_tracker(articleId)``string` (HTML)Render analytics tracking scriptTest Connection
---------------

[](#test-connection)

```
php bin/console blogstudio:test
```

API Keys
--------

[](#api-keys)

BlogStudio uses two types of keys:

- **API Key** (`api_key`) — server-side only. Used to read articles, categories, and tags. Keep secret.
- **Public Key** (`public_key`) — client-side safe. Used only for analytics tracking. Can be exposed in HTML.

License
-------

[](#license)

MIT

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance90

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

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

Unknown

Total

1

Last Release

46d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/4ee539ab4b7e2e96227a019c86cae09c94e9f9680810649d0ee35bbd2301512b?d=identicon)[marphy](/maintainers/marphy)

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/marphy-blogstudio-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/marphy-blogstudio-bundle/health.svg)](https://phpackages.com/packages/marphy-blogstudio-bundle)
```

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[simplesamlphp/simplesamlphp

A PHP implementation of a SAML 2.0 service provider and identity provider.

1.1k12.4M193](/packages/simplesamlphp-simplesamlphp)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[jolicode/castor

A lightweight and modern task runner. Automate everything. In PHP.

53541.0k3](/packages/jolicode-castor)

PHPackages © 2026

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