<p>Custom Asset sources are not possible in Craft 2 without some core hacking.</p>

<p>However totally doable in <a href="https://craftcms.com/3" rel="nofollow">Craft 3</a> (even in the dev preview).  There is an example of how to pull it off <a href="https://github.com/pixelandtonic/flysystem-google-cloud" rel="nofollow">here</a>.</p>

CC BY-SA 3.0
2016-07-20T20:27:27.843Z
Besides changing enableForPlugins to true in common.php, what other core hacking would be necessary?
Ben Croker
CC BY-SA 3.0
2016-07-20T20:39:56.210Z
The reason I ask is because this didn't seem to do the trick for me...
Ben Croker
CC BY-SA 3.0
2016-07-20T22:21:56.673Z
Possible something has broken or changed since we released the last dev preview.  Good news is, we hope to have a new one out soonish.
Brad Bell
CC BY-SA 3.0
2016-04-04T04:10:56.180Z
2016-04-04T04:10:56.180Z
Brad Bell
<p>I would love to extend Craft with a custom AssetSourceType. However it looks like components of type 'assetSource' are not extensible (enableForPlugins = false).</p>

<p>Is there a way to do this?
Or can I simply swap core services in the <code>common.php</code> without hacking the core?</p>

<p>My goal is to provide a 'S3CompatAssetSourceType' - the main difference to the S3AssetSourceType is the API endpoint.</p>

<p>Thanks.</p>

<plugin-development><assets><s3><extends>
Custom Asset Source Types - not possible
# Custom Asset Source Types - not possible

(Asked by: username_0 on 2016-03-29)

I would love to extend Craft with a custom AssetSourceType. However it looks like components of type 'assetSource' are not extensible (enableForPlugins = false).

Is there a way to do this?
Or can I simply swap core services in the `common.php` without hacking the core?

My goal is to provide a 'S3CompatAssetSourceType' - the main difference to the S3AssetSourceType is the API endpoint.

Thanks.

**Tags:** plugin-development, assets, s3, extends


---

## 1 answers

### Answer by username_1 on 2016-04-04. Score: 1

Custom Asset sources are not possible in Craft 2 without some core hacking.

However totally doable in [Craft 3](https://craftcms.com/3) (even in the dev preview). There is an example of how to pull it off [here](https://github.com/pixelandtonic/flysystem-google-cloud).

> **Comments:**
> **username_2**: Besides changing enableForPlugins to true in common.php, what other core hacking would be necessary?  
> **username_2**: The reason I ask is because this didn't seem to do the trick for me...  
> **username_1**: Possible something has broken or changed since we released the last dev preview.  Good news is, we hope to have a new one out soonish.  

---

