Hackpads are smart collaborative documents. .
547 days ago
Unfiled. Edited by Dave Reid 547 days ago
Media Initiative D8 Long-Term Dave thoughts
Dave R
  • What do I think an MVP looks like?
Better re-use of concepts and components in core - 8.2.x
  • Loosen up TypedData to make it easier to run arbitrary data through field widgets and formatters - would help allow more re-use of technologies in Entity Embed and Entity Browser. Needs investigation.
Support audio and video HTML 5 out of the box - 8.2.x
Entity Embed in core - 8.3.x?
  • Need to make selection configurable (simple selection vs file upload vs entity browser)
  • Make Entity Embed experimental 
  • Would be helpful to decouple FieldFormatters from requiring TypedData field definition. The current solution is a bit hacky.
URL Embed in core - 8.3.x?
  • Filter, field formatter for URL field, and CKEditor button
  • Need to complete the module in contrib first
  • Add support for converting links when pasted into CKEditor
  • Provide ability to configure embedding options
Entity Browser in core - 8.4.x?
  • Need inline_entity_form in core first?
  • We could potentially run a sprint on this at NYC Camp this year
The glue UI to help bring it all together with nice UX - 8.4.x?
  • User Stories
  • As a user, I want embed embedded media by URL in my WYSIWYG (via copy/paste or CKEditor button) so that I can create an enriching experience.
  • As a user, I want to upload audio and video files to my site and have them show up so that I can create an enriching experience.
  • Concerns
  • We lost our goal being able to re-use field widgets through everything (entity browser & entity embed).
  • Making a View a field widget for entity reference fields
  • Need to investigate re-using field widgets and formatters easier without actually having actual fields. Typed Data makes this super difficult in D8.
  • I still think files are files (make them fieldable), but remote media doesn't need to be represented locally for MVP
  • Involvement
I would like to be still involved in architecture, guidance and development, but I feel like my time is limited. I would like to make this my last hurrah to see it in. My current bandwidth to dedicate time is only about 5 hours per week. I need to figure out how I can make client work for Lullabot work with this effort. And family.
803 days ago
Unfiled. Edited by Janez Urevc 803 days ago
Janez U NYC Camp organizers did an awesome job and secured enough funds to bring many of most active contributors to New York for a week. We focused on many different parts of our ecosystem. Most notable improvements are explained further in the post. 
Entity Embed
Janez U
  • When writing this kind of updates I tend to give direct credits to people that contributed significant features/improvements. I think it is a nice thing to do. I believe people deserve at least that. Is that ok?
@Primsi worked hard (with most of the initial work at NYC Camp sprints) to bring DropzoneJS support to D8. Dropzone JS module provides very basic form element that can be used to bring very nice uploading experience to any form. Further he implemented Entity browser widget. Next planned step is implementation of field widget for core file and image fields. 
[ screenshot? ]
Entity browser seen a lot of smaller and bigger fixed in last few months. We created few new widget plugins. @primsi created Dropzone JS widget, which allows you to nicely upload file and media entities. @slashrsm worked on Inline entity form widget, which can create entities on the go. We also fixed a lot of bugs. 
[ add a screenshot or two? ]
Samuel Mortenston invested a lot of work in Views widget During NYC Camp sprints. He significantly improved it, focusing mostly on exposed filters support, which is now much more robust and reliable. There is still some work to do on this very important widget, but has reached the state where it is already very useful and ready for testing. 
Are we joking? No! Long-time Drupal users will recognize IEF from Drupal commerce world so what it has to do with us? As it turns out it can be very useful to build editorial workflows in many different fields, including media. IEF is very flexible and extensible, which makes it a great tool for wide variety of problems. 
In the last few months we worked with IEF maintainers (mostly @bojanz and @webflo) to push D8 port of IEF to a feature-parity with its D7 version. It recently achieved a state where it is capable of solving many needs in media field such as creating, editing and selecting media assets inline in the place where they are actually needed.
  • @slashrsm integrated IEF with Entity browser. We're able to use IEF as an Entity browser widget which allows us to create entities of any type inside EB.  We also connected IEF and EB the other way around. We can use EB as a drop-in replacement for auto-complete field in IEF's "Reference existing entity" functionality. 
Synergy levels that we achieved in cooperation between IEF and Media ecosystems shows how powerful the approach that we took for D8 is. In D7 times both Drupal commerce and Media needed to solve very similar problems and still we didn't cooperate at all. Nowdays, in the world of small components with limited focus we're able to reuse a lot of each others code, which not only makes us more efficient, but also creates deeper connections between different parts of our great community.
One of our D8 storage is already very mature and usable. We are already seeing many extensions that add support for local images, embeddable videos, tweets, Instagram photos, slideshows and audio
Main missing piece is currently configuration UI. There are some things that can be done via UI, but we still need to hack YAML files to configure more advanced features.
845 days ago
Unfiled. Edited by Dave Reid 845 days ago
Dave R File Entity Drupal 8 port
Base module (file_entity)
  • UI for adding, editing, deleting files
  • Multiple-step workflow for adding files
  • Permissions for file
  • Replace functionality on the file edit form
  • Revision support
  • @todo Figure out strategy about file replacement when revisions are involved.
  • Migration/Serialization/Normalizer/Search support?
  • API support for methods on the file entity object itself
Dave R
  • Pathauto integration should not be necessary - Pathauto in D8 should be content-entity-agnostic and provide automatic support for all content entity types.
  • file_entity_fieldable: Adding file types and fields on files
  • Support for adding fields to files
  • File types
  • Default file types (audio, document, image, video)
Split into separate modules:
  • file download widget and callback (file_download)
  • html5 audio and video formatters (??)
  • fallback display logic into an abstract field formatter (fallback_formatter)
  • Unknown if this can actually be used to manage the file display in D8 since there is not a real field to configure with the fallback formatter.
871 days ago
Unfiled. Edited by Chandan Singh 871 days ago
  • $text = $essence->replace($text, function($media) {
  •   return theme('embed__' . $media->type . '__' . $media->provider, $media);
  • }
975 days ago
Unfiled. Edited by Willy Karam 975 days ago
  1. Long Term Roadmap and funding objectives (Willy to setup commerce implementation setup, and we can link to NYC Camp or DA acct -- likely the latter)
  1. Development Update: Recap of development progress since DrupalCon Austin
  1. Other Modules: Status of the various other modules
987 days ago
Unfiled. Edited by Dave Reid 987 days ago
Activity comments Seems to have fallen flat A lot more recent activity and releases. Embed
Tests? Extensive unit tests Extensive unit tests Both
Demo code (would need removal) No Yes (but should be ignored) Both
1011 days ago
Unfiled. Edited by Janez Urevc , Chandan Singh 1011 days ago
Difficulty: Intermediate
Difficulty: Intermediate
Mentors: slashrsm and ?
Difficulty: Intermediate
Pre-requisites: PHP, JS
Janez U Entity browser is a contrib module for Drupal 8 that tries to provide powerful and flexible framework for searching and selecting of entities. There are many possible use cases that entity browser wants to solve:
  • select an image to be embedded in WYSIWYG editor, 
  • select few related content items and "attach" them to another content, 
  • upload few images, then select few more from library of existing media and use all of them in a media slideshow,
  • search YouTube for videos and attach them to a piece of content,
  • ...
Basic implementation of entity browser is already in place, but we need to invest a lot of work to make it fully functional. As a GSoC student you'll work with other contributor to improve various pieces of the module. This will make the project very interesting and diverse (you will get to work with PHP, JS and even some UX design).
If you're interested in this project, have any issues or want to discuss any of the aspects, feel free to ping 'slashrsm' in '#drupal-google' or in '#drupal-media'.
You will, depending on your interests and experience, set the goals together with your mentors. You can expect to:
  • help improving look and feel of entity reference field widget for Entity browser,
  • write integration with entity_embed,
  • improve appearance of entity browser in iFrame and modal display modes,
  • implement tabs for selection between widgets in entity browser,
  • implement configuration UI,
  • integrate entity browser with one or more of the full-featured media solutions,
  • write test coverage,
  • ...
We are open for your suggestions too. If you see anything that could be added and/or improved in entity browser please let us know. We want to make the project interesting to you and we need your feedback in order to achieve that.
Members (42)
Patrick Corbett Joe Fitzsimmons Bendik Brenne Jeff Eoff Peter Philipp Devaraj johnson Heshan Wanigasooriya Sascha Grossenbacher Tormi Tabor Sebastian sebas Peter Philipp Andreas Sahle nourhan ahmed Jayesh Solanki Dan Morrison Palash Vijay Thomas Christensen ankit.shah@acquia.com hainam@jcisio.com Brant Wynn

Create a New Collection


Move XXX to XXX

XXX will be invited to the XXX on XXX.


Contact Support

Please check out our How-to Guide and FAQ first to see if your question is already answered! :)

If you have a feature request, please add it to this pad. Thanks!

Log in