PHPackages                             arkounay/image-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. [Database &amp; ORM](/categories/database)
4. /
5. arkounay/image-bundle

AbandonedArchivedSymfony-bundle[Database &amp; ORM](/categories/database)

arkounay/image-bundle
=====================

Easier image upload form bundle with Doctrine

2.1.1(9y ago)1402PHPPHP &gt;=5.3.3

Since Jan 12Pushed 8y ago1 watchersCompare

[ Source](https://github.com/Arkounay/ImageBundle)[ Packagist](https://packagist.org/packages/arkounay/image-bundle)[ Docs](https://github.com/Arkounay/ImageBundle)[ RSS](/packages/arkounay-image-bundle/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (5)Dependencies (3)Versions (10)Used By (0)

Not maintained. Use [artgris/FileManagerBundle](https://github.com/artgris/FileManagerBundle) with [artgris/MediaBundle](https://github.com/artgris/MediaBundle) instead.
=========================================================================================================================================================================

[](#not-maintained-use-artgrisfilemanagerbundle-with-artgrismediabundle-instead)

Arkounay Image Bundle - Symfony Easier Doctrine image management
----------------------------------------------------------------

[](#arkounay-image-bundle---symfony-easier-doctrine-image-management)

[![alt tag](https://camo.githubusercontent.com/ca5fb2d524943247e5c0dfb012a4bc917ccc5d7a24797a28fd1eaabaa9c9ea68/687474703a2f2f6f7574657261726b2e636f6d2f73796d666f6e792f61726b6f756e61795f696d6167655f62756e646c652e706e67)](https://camo.githubusercontent.com/ca5fb2d524943247e5c0dfb012a4bc917ccc5d7a24797a28fd1eaabaa9c9ea68/687474703a2f2f6f7574657261726b2e636f6d2f73796d666f6e792f61726b6f756e61795f696d6167655f62756e646c652e706e67)

### Getting Started

[](#getting-started)

- Download the files:

    ```
      composer require arkounay/image-bundle

    ```
- In `AppKernel.php` add the bundle:

    ```
      new Arkounay\ImageBundle\ArkounayImageBundle()

    ```
- Then, run the following command:

    ```
      php bin/console assets:install

    ```
- In your twig template, you will then need to import the required assets:

    - CSS:

        ```

        ```
    - JS (**requires [jQuery](https://jquery.com/), [ninsuo/symfony-collection](https://github.com/ninsuo/symfony-collection) and optionally [bootstrap](http://getbootstrap.com/), [Font Awesome](http://fontawesome.io/) and [jQuery UI](https://jqueryui.com/)**):

        ```
          {# Import jQuery: #}

          {# Then the default bundle's JavaScript: #}
          {% include '@ArkounayImage/assets/include_js.html.twig' %}

        ```
- In `routing.yml`, you will need to import the Ajax route:

    ```
       arkounay_image:
           resource: "@ArkounayImageBundle/Resources/config/routing.yml"

    ```
- In config.yml, add the following Doctrine types:

    ```
      doctrine:
          dbal:
              types:
                  json_image: Arkounay\ImageBundle\Type\JsonImageType
                  json_images: Arkounay\ImageBundle\Type\JsonImagesType

    ```

### Usage

[](#usage)

In an entity, you can now add the new `json_image` types:

```
/**
 * @var Image
 * @ORM\Column(type="json_image")
 */
private $image;

/**
 * @var ArrayCollection|Image[]
 * @ORM\Column(type="json_images")
 */
private $imageCollection;

public function __construct()
{
    $this->imageCollection = new ArrayCollection();
}

```

You can bound these fields to a form using its corresponding type:

```
use Arkounay\ImageBundle\Form\JsonImagesType;
use Arkounay\ImageBundle\Form\JsonImageType;

// ...

$builder
    ->add('image', JsonImageType::class)
    ->add('imageCollection', JsonImagesType::class);

```

### Options:

[](#options)

**JsonImageType:**

- `'allow_alt' => true` allows the user to specify an alt
- `'path_readonly' => false` prevents the user from manually changing the path (it only adds a "readonly" attribute to the corresponding HTML input)

**JsonsImageType:**

Some [ninsuo/symfony-collection](https://github.com/ninsuo/symfony-collection)'s options are available directly:

- `'min' => 0`
- `'max' => 100`
- `'init_with_n_elements' => 1`
- `'add_at_the_end' => true`

### About the form HTML theme

[](#about-the-form-html-theme)

Include bootstrap's theme

```
{% form_theme form ':admin/includes:bootstrap_3_layout.html.twig' %}

```

To override the widget theme, check `Resources/views/forms/fields.html.twig`.

### Other

[](#other)

- By default, only `ROLE_ADMIN` can upload images. You can specify roles in config.yml, ie:

    ```
      arkounay_image:
          roles: ['ROLE_SUPER_ADMIN']

    ```
- This bundle works with [EasyAdminBundle](https://github.com/javiereguiluz/EasyAdminBundle), you can for example add multiple images by specifying the proper type:

    ```
      { property: 'imageCollection', type: 'Arkounay\ImageBundle\Form\JsonImagesType', type_options: {allow_add: true} }

    ```

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 76% 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 ~2 days

Total

9

Last Release

3392d ago

Major Versions

0.1.0 → 1.0.02017-01-12

1.0.2 → 2.0.02017-01-20

### Community

Maintainers

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

---

Top Contributors

[![Arkounay](https://avatars.githubusercontent.com/u/9340719?v=4)](https://github.com/Arkounay "Arkounay (19 commits)")[![artgris](https://avatars.githubusercontent.com/u/22889596?v=4)](https://github.com/artgris "artgris (6 commits)")

---

Tags

doctrineform-builderimagesymfonysymfony-bundlesymfonybundleimagedoctrineform

### Embed Badge

![Health badge](/badges/arkounay-image-bundle/health.svg)

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

###  Alternatives

[sonata-project/doctrine-orm-admin-bundle

Integrate Doctrine ORM into the SonataAdminBundle

46117.7M155](/packages/sonata-project-doctrine-orm-admin-bundle)[fresh/doctrine-enum-bundle

Provides support of ENUM type for Doctrine2 in Symfony applications.

4636.8M12](/packages/fresh-doctrine-enum-bundle)[debesha/doctrine-hydration-profiler-bundle

Information about hydration of doctrine entities at the profiler

133593.2k1](/packages/debesha-doctrine-hydration-profiler-bundle)[spiriitlabs/form-filter-bundle

This bundle aim to provide classes to build some form filters and then build a doctrine query from this form filter.

36465.8k8](/packages/spiriitlabs-form-filter-bundle)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1022.4k](/packages/rcsofttech-audit-trail-bundle)[ahmed-bhs/doctrine-doctor

Runtime analysis tool for Doctrine ORM integrated into Symfony Web Profiler. Unlike static linters, it analyzes actual query execution at runtime to detect performance bottlenecks, security vulnerabilities, and best practice violations during development with real execution context and data.

813.1k](/packages/ahmed-bhs-doctrine-doctor)

PHPackages © 2026

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