PHPackages                             i-lateral/silverstripe-slightly-better-bulkloader - 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. [PDF &amp; Document Generation](/categories/documents)
4. /
5. i-lateral/silverstripe-slightly-better-bulkloader

ActiveSilverstripe-vendormodule[PDF &amp; Document Generation](/categories/documents)

i-lateral/silverstripe-slightly-better-bulkloader
=================================================

It's the SilverStripe bulk loader, but ever so slightly better

1.0.0(7y ago)0653BSD-3-ClausePHP

Since Feb 25Pushed 7y ago4 watchersCompare

[ Source](https://github.com/i-lateral/silverstripe-slightly-better-bulkloader)[ Packagist](https://packagist.org/packages/i-lateral/silverstripe-slightly-better-bulkloader)[ Docs](https://github.com/i-lateral/silverstripe-slightly-better-bulkloader)[ RSS](/packages/i-lateral-silverstripe-slightly-better-bulkloader/feed)WikiDiscussions 1.0 Synced today

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

Slightly Better Bulkloader
==========================

[](#slightly-better-bulkloader)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/aaf034674beff01390c1404a4f63f67e612d1280aacee128e676d2806a21de03/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f692d6c61746572616c2f73696c7665727374726970652d736c696768746c792d6265747465722d62756c6b6c6f616465722f6261646765732f7175616c6974792d73636f72652e706e673f623d312e30)](https://scrutinizer-ci.com/g/i-lateral/silverstripe-slightly-better-bulkloader/?branch=1.0)[![Build Status](https://camo.githubusercontent.com/284db31c4c5076f255a4614be17bc5ab3eeece99aedf4d0efef5e3931931641c/68747470733a2f2f7472617669732d63692e6f72672f692d6c61746572616c2f73696c7665727374726970652d736c696768746c792d6265747465722d62756c6b6c6f616465722e7376673f6272616e63683d312e30)](https://travis-ci.org/i-lateral/silverstripe-slightly-better-bulkloader)

It's the SilverStripe bulk loader, but ever so slightly better!

This module expands the default SS version and adds error logging per import row and attempts to solve issues where Excel sometimes adds blank columns to the end of a CSV (which then fails to import)

Install
-------

[](#install)

Instalation via composer:

```
# composer require i-lateral/silverstripe-slightly-better-bulkloader

```

Usage
-----

[](#usage)

By default this module should automatically replace `BulkLoader_Result` with a custom version that track errors.

However to make the most of this, you need to also implement your own version of `CSVBulkLoader` for example:

### ModelAdmin

[](#modeladmin)

Adding the Custom CSV uploader via ModelAdmin

```
namespace App\Admin;

use SilverStripe\Admin\ModelAdmin;
use ilateral\SilverStripe\SlightlyBetterBulkLoader\CsvBulkLoader;

class MyModelAdmin extends ModelAdmin
{
    private static $managed_models = [
        MyDataObject::class
    ];

    private static $model_importers = [
        MyDataObject::class => CsvBulkLoader::class
    ];
}
```

### Manualy Called

[](#manualy-called)

An example of adding a custom CSV import after a form has been submitted.

```
use SilverStripe\Forms\Form;
use ilateral\SilverStripe\SlightlyBetterBulkLoader\CsvBulkLoader;

class MyImportForm extends Form
{
    public function import($data, $form)
    {
        $loader = CsvBulkLoader::create();
        $results = $loader->load($_FILES['_CsvFile']['tmp_name']);

        $form->sessionMessage(
            $results->getMessagesString(""),
            $results->getMessageType(),
            ValidationResult::CAST_HTML
        );

        return $this->redirectBack();
    }
}
```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~0 days

Total

2

Last Release

2633d ago

### Community

Maintainers

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

---

Top Contributors

[![mlewis-everley](https://avatars.githubusercontent.com/u/687143?v=4)](https://github.com/mlewis-everley "mlewis-everley (29 commits)")

---

Tags

csv-importsilverstripesilverstripe-4silverstripecsvimportbulkload

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/i-lateral-silverstripe-slightly-better-bulkloader/health.svg)

```
[![Health](https://phpackages.com/badges/i-lateral-silverstripe-slightly-better-bulkloader/health.svg)](https://phpackages.com/packages/i-lateral-silverstripe-slightly-better-bulkloader)
```

###  Alternatives

[maatwebsite/excel

Supercharged Excel exports and imports in Laravel

12.7k144.3M712](/packages/maatwebsite-excel)[league/csv

CSV data manipulation made easy in PHP

3.5k166.1M646](/packages/league-csv)[goodby/csv

CSV import/export library

9555.6M23](/packages/goodby-csv)[burnbright/silverstripe-importexport

An upgrade to SilverStripe's bulk loading and exporting

4534.1k1](/packages/burnbright-silverstripe-importexport)[ddeboer/data-import-bundle

A Symfony2 bundle for the ddeboer/data-import library

691.3M1](/packages/ddeboer-data-import-bundle)[handcraftedinthealps/goodby-csv

CSV import/export library

441.6M4](/packages/handcraftedinthealps-goodby-csv)

PHPackages © 2026

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