decaporg / decaporg/decap-cms

Media Library backed by a Netlify CMS collection

Open
#6,160 5 comments 0 reactions 0 assignees View on GitHub
type: feature
Dominant language
JavaScript
Stars
19.4k
Forks
3.1k
Avg merge
1d 14h
Merged PRs (30d)
9

Description

**Is your feature request related to a problem? Please describe.**
As a Netlify CMS user, I would like the ability to present a media library where users can select from a curated collection of images, videos or other media items (potentially) not contained within git.

**Describe the solution you'd like**
When the media library component is opened, instead of displaying a list of media files contained in a media_folder, a list of items specified in a standard Netlify CMS collection would be displayed instead.

Collections of this type would need to adhere to a minimal base schema (id, url, but also potentially thumbnail, file size, etc) but could also be enriched with user specified fields, ex: tags #5029, location data (from exif or manually assigned), default alt text, attribution details, etc

On selecting a file from the media library, the default behavior would be to use the returned entries url as the value for the corresponding file or image field, but we could expose a configuration option to instead return a user configurable field (like an identifier).

**Sample Use Cases**
- A developer already has a large collection of media assets managed in a non-git data store (ex: s3) and would like to improve the UX of allowing editors to select from these assets
- A developer needs the ability to ensure that additional attributes related to the asset are available wherever it is used, ex: license mandated attributions

**Not (initially) in scope**
- Inserting / deleting new media into the collection from the media library UI
- Filtering, displaying or otherwise using additional user provided fields in the media library

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.