PHPackages                             thomaswelton/laravel-rackspace-opencloud - 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. [File &amp; Storage](/categories/file-storage)
4. /
5. thomaswelton/laravel-rackspace-opencloud

AbandonedArchivedLibrary[File &amp; Storage](/categories/file-storage)

thomaswelton/laravel-rackspace-opencloud
========================================

0.4.1(9y ago)3015.5k↓33.3%14[8 issues](https://github.com/thomaswelton/laravel-rackspace-opencloud/issues)[1 PRs](https://github.com/thomaswelton/laravel-rackspace-opencloud/pulls)PHPPHP &gt;=5.3.0

Since Aug 26Pushed 5y ago2 watchersCompare

[ Source](https://github.com/thomaswelton/laravel-rackspace-opencloud)[ Packagist](https://packagist.org/packages/thomaswelton/laravel-rackspace-opencloud)[ RSS](/packages/thomaswelton-laravel-rackspace-opencloud/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (8)Dependencies (3)Versions (9)Used By (0)

[![Latest Stable Version](https://camo.githubusercontent.com/74288c1750afc5be99ac62814f7ec0a81c255dc5ca883d4f646957f1c609f236/68747470733a2f2f706f7365722e707567782e6f72672f74686f6d617377656c746f6e2f6c61726176656c2d7261636b73706163652d6f70656e636c6f75642f762f737461626c652e706e67)](https://packagist.org/packages/thomaswelton/laravel-rackspace-opencloud)[![Total Downloads](https://camo.githubusercontent.com/8b9934ffdf14c682724b9c221ca44ad8a61e2fff6a71960390f95f1e53aca4be/68747470733a2f2f706f7365722e707567782e6f72672f74686f6d617377656c746f6e2f6c61726176656c2d7261636b73706163652d6f70656e636c6f75642f646f776e6c6f6164732e706e67)](https://packagist.org/packages/thomaswelton/laravel-rackspace-opencloud)[![Bitdeli Badge](https://camo.githubusercontent.com/eeb0803d0fdfec1d30fc1e3e4e262bfcb3823f07f2ea5b814f69a57b31c91d93/68747470733a2f2f64327765637a68766c38323376302e636c6f756466726f6e742e6e65742f74686f6d617377656c746f6e2f6c61726176656c2d7261636b73706163652d6f70656e636c6f75642f7472656e642e706e67)](https://bitdeli.com/free "Bitdeli Badge")

Installation
============

[](#installation)

Update your `composer.json` file to include this package as a dependency

```
"thomaswelton/laravel-rackspace-opencloud": "dev-master"
```

Register the OpenCloud service provider by adding it to the providers array in your `app/config/app.php` file.

```
'providers' => array(
	Thomaswelton\LaravelRackspaceOpencloud\LaravelRackspaceOpencloudServiceProvider
)
```

Alias the OpenCloud facade by adding it to the aliases array in the `app/config/app.php` file.

```
'aliases' => array(
	'OpenCloud' => 'Thomaswelton\LaravelRackspaceOpencloud\Facades\OpenCloud'
)
```

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

[](#configuration)

Copy the config file into your project by running

```
php artisan config:publish thomaswelton/laravel-rackspace-opencloud

```

Edit the config file to include your username, api key and region.

Usage
=====

[](#usage)

Artisan Commands
----------------

[](#artisan-commands)

Upload files via the command line.

Synchronize a whole directory. Copies all files to /public/assets

```
php artisan cdn:sync public/assets

```

Copies all files to /assets trimming 'public' from the path

```
php artisan cdn:sync public/assets --trim=public

```

The sync command will save a file adjacent to the synchronized directory. It contains the http and https urls for your container. Along with a md5 hash of the directory. In this way when a file changes inside a directory and is reuploaded you get a new cache busted URL.

If you are using the URL helper then it will return a CDN url for a file, if it finds a \*.cdn.json file adjacent to one of it's parent directories.

```
URL::asset('assets/image.jpg');

```

You should be able to run `php artisan cdn:sync public/assets --trim=public` before or during a deployment and once complete all files being called by `URL::asset()` will return a CDN resource

Upload to CDN
-------------

[](#upload-to-cdn)

Using this method will make the container public, even if previously set as private. This is a known issue yet to be addressed.

```
OpenCloud::upload($container, $file, $name = null)
```

- $container - (string) Name of the container to upload into
- $file - (string / UploadedFile) Path to file, or instance of 'Symfony\\Component\\HttpFoundation\\File\\UploadedFile' as returned by Input::file()
- $name - (string) Optional file name to be used when saving the file to the CDN.

Example:

```
Route::post('/upload', function()
{
	if(Input::hasFile('image')){
		$file = OpenCloud::upload('my-container', Input::file('image'));
	}

	$cdnUrl = $file->PublicURL();
	// Do something with $cdnUrl

	return Redirect::to('/upload');
});
```

Delete from CDN
---------------

[](#delete-from-cdn)

```
OpenCloud::delete($container, $file)
```

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance15

Infrequent updates — may be unmaintained

Popularity37

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 73.3% 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 ~141 days

Recently: every ~231 days

Total

8

Last Release

3648d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1b93a2491ddf17fc2e53ee81250b83cb0c77beb9f1780490324d676403771136?d=identicon)[thomaswelton](/maintainers/thomaswelton)

---

Top Contributors

[![thomaswelton](https://avatars.githubusercontent.com/u/678372?v=4)](https://github.com/thomaswelton "thomaswelton (11 commits)")[![cadyfatcat](https://avatars.githubusercontent.com/u/765649?v=4)](https://github.com/cadyfatcat "cadyfatcat (2 commits)")[![carlaron](https://avatars.githubusercontent.com/u/1194001?v=4)](https://github.com/carlaron "carlaron (1 commits)")[![lucacri](https://avatars.githubusercontent.com/u/2913531?v=4)](https://github.com/lucacri "lucacri (1 commits)")

### Embed Badge

![Health badge](/badges/thomaswelton-laravel-rackspace-opencloud/health.svg)

```
[![Health](https://phpackages.com/badges/thomaswelton-laravel-rackspace-opencloud/health.svg)](https://phpackages.com/packages/thomaswelton-laravel-rackspace-opencloud)
```

###  Alternatives

[aws/aws-sdk-php-laravel

A simple Laravel 9/10/11/12/13 service provider for including the AWS SDK for PHP.

1.7k35.6M75](/packages/aws-aws-sdk-php-laravel)[illuminate/filesystem

The Illuminate Filesystem package.

15261.6M2.6k](/packages/illuminate-filesystem)[stechstudio/laravel-zipstream

A fast and simple streaming zip file downloader for Laravel.

4633.7M3](/packages/stechstudio-laravel-zipstream)[spatie/laravel-google-cloud-storage

Google Cloud Storage filesystem driver for Laravel

2408.9M13](/packages/spatie-laravel-google-cloud-storage)[azure-oss/storage-blob-laravel

Azure Storage Blob filesystem driver for Laravel

63582.2k1](/packages/azure-oss-storage-blob-laravel)[spatie/laravel-backup-server

Backup multiple applications

17016.7k1](/packages/spatie-laravel-backup-server)

PHPackages © 2026

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