OpenProducer/newspack-platform

Scope out an MVP for the Radio and podcast platform

Closed this issue · 78 comments

The purpose of this task is to determine a base set of features and functionality we should include in an offering to small broadcasters, podcasters, and internet stations.

We're also working out a base set of features in this doc https://docs.google.com/document/d/1UYP6OfxlTn6WqcxycZ2RqGBHMcngBayDVe-ksAGxd5g/edit?usp=sharing

Features

We'll update this summary as the feature list evolves...

Complete

  • Mobile First Design Tools https://github.com/OpenProducer/openproducer/issues/10

    • Responsive, mobile-first theme
    • Upload Graphics and Pick Color Schemes
    • Choose Page Layouts and Style Page Elements
    • No more being locked into only what a theme offers
  • Video/Photos https://github.com/OpenProducer/openproducer/issues/8

    • Customizable Video Player
    • Image galleries and slideshows
    • Live Streaming
    • Analytics and Reporting
    • Widgets that display video from the media library or from YouTube, Vimeo, and other providers
    • Import media from Google Photos, Instagram, Flickr, and other providers
  • Revenue development https://github.com/OpenProducer/openproducer/issues/6

    • Enable Ads from providers like Google AdSense and WordAds
    • Accept payments and donations
      • Per-Program Crowdfunding
      • One-Click Donations
      • Peer to Peer Campaigns
    • Make it easy to create an online store.
  • Newsletter Support https://github.com/OpenProducer/openproducer/issues/7

    • Connect your site to Mailchimp
    • Signup form and widget
    • Easy import/export contacts and mailing lists
  • Syndication https://github.com/OpenProducer/openproducer/issues/12

    • Social Media Networks - Connect your website to the social media networks you use and share your content across all your social accounts with a single click. When you publish a post, it will appear on all connected accounts.
      • Facebook - Share posts to your news feed
      • Twitter - Share posts to your Twitter feed.
      • LinkedIn - Share posts with your LinkedIn connections.
    • Instant Articles for Facebook - Add support for Instant Articles for Facebook to your WordPress site.
    • Publish to Apple News - Export and sync posts to Apple format.
  • Events manager https://github.com/OpenProducer/openproducer/issues/17

    • Events Custom Post Type
    • Event calendar
    • Eventbrite integration
  • Radio & Podcast https://github.com/OpenProducer/openproducer/issues/9

    • Live Interactive Playlists
    • Program & spot scheduling
    • Live Broadcast
    • Listener Statistics and SoundExchange reporting
    • Radio Show Profiles
    • Built-in Podcast feed
    • Import and Broadcast Podcasts
    • Sticky audio player #22

Plugins

Newspack plugins

The following plugins ship with Newspack - as Newspack is a dependency of this platform, all of these plugins are supported by the Newspack team.

  • Newspack – a plugin that installs the Newspack themes, and the required plugins and some of the recommended plugins, automatically.
  • Newspack Ads – a plugin that helps connect your Newspack site to various ad providers.
  • Newspack Blocks – a collection of custom Gutenberg blocks, designed for building news sites, as well as some extensions to existing Gutenberg blocks.
  • Newspack Pop-ups – a plugin that allows you to create AMP-compatible pop-up notifications on your Newspack site.

Required plugins

The following plugins ship with Newspack - as Newspack is a dependency of this platform, all of these plugins are supported by the Newspack team.

  • AMP – a plugin that enables AMP, to serve up lightning fast sites.
  • Gutenberg – WordPress’s new block-based editor. Newspack runs the latest version of the Gutenberg plugin, which is developed ahead of the version built into WordPress.
  • Jetpack by WordPress.com – a plugin developed by Automattic that brings features from WordPress.com to self-hosted sites. Some features used by Newspack sites include Sharing, Site Accelerator, integration with WordAds, and Publicize.
  • PWA – a plugin that helps easily turn your WordPress websites into a Progressive Web App (PWA).
  • SiteKit by Google – makes it easy to set-up and configure Google Analytics, AdSense, Search Console and PageSpeed Insights, and adds a single dashboard for all to your WordPress Admin.
  • Yoast SEO – a powerful plugin that helps you with your site’s search engine optimization.

Recommended plugins

Newspack has a list of recommended plugins that have been thoroughly reviewed for features, quality, and code. We will include or recommend any of these as we get a better sense of requirements.

Unsupported plugins

The following plugins are not yet supported or recommended by Newspack. We should work with plugin developers to ensure each is compatible and then see if Newspack can recommend.

  • The Events Calendar - Create an events calendar and manage it with ease
  • Radio Station - a plugin to build and manage a Show Calendar in a radio station or Internet broadcaster’s WordPress website.

Development priorities

The following are not requirements for a MVP. We will support based on needs and available resources.

  • LibreTime - API + integration via/ Radio Station plugin #9
  • AzuraCast - Integration via/ API + Radio Station plugin #8

@trevortwining Do you have a template or process for completing this task? I wonder if we can use what @zirafa initially put together for Pushtape for inspiration? https://www.drupal.org/node/1398262

Similarly, our own product dev variation of @rickmanelius estimator and project reference guide could be super useful?
https://docs.google.com/spreadsheets/d/1SQHyn1Q-thseklq8h8FLriNGXjpFnoqEohwZGggjYcU/edit#gid=0

https://www.drud.com/workflow/the-practicality-of-project-reference-guides/

As we're product developing in the open, we should be as transparent and collabative wherever we can.

I can plug in details once we sort out a process.

Taking a fresh look at our gitlab repo, it's improved quite a bit since the project stalled. Possibly we 'should' use that for our main repo. Mirror here and drupal.org... however that works.

What do you think?
https://gitlab.com/openproducer/openproducer

@tonyzeoli I added you to this GitHub org and will give you access to the doc referenced in this poorly written description. Please feel free to ask questions, make revisions, or just wipe everything and replace with features/functionality you've already included in your client sites!

The copy and features have some Drupal references http://www.getopenproducer.com/

I 'think' we could probably take out all references to a particular CMS the platform is built on.

For DanceGruv, which is going to use LibreTime as it's automation software in place of AirTime, I have set up a system with WordPress that helps the station both broadcast its shows using LibreTime podcasting and set the show archive in WordPress as a post with WordPress plugin, Blubrry PowerPress as the Podcast generator, which provides the feed for people to sub to the podcast either in WordPress or through any podcast aggregator (iTunes, Google Play, Stitcher, etc)

In WordPress, we already restrict DJs/Hosts (and now Producers) to only be able to add/edit a show page and add a Post to append to the Show page using the blog and a meta box with the show page assignment tool. So, when someone posts the podcast, the feed pushes the audio content to its show schedule into LibreTime, while leaving it in WordPress as an archive post.

The only issue is publishing the post, but hiding it from the site until after the show airs, so that the archive doesn't appear online BEFORE the show airs. That would defeat the purpose of the live show to begin with.

To do this now, we're using the OnAir2 theme on DanceGruv, which sets up a Podcast "post type" or "CCK" in Drupal. But, we can build a theme which includes Radio Station and PowerPress to enable these functions. So, the radio station would get a pre-built theme with it scheduling software, archive/podcast ability, and push into LibreTime via the podcast feed URL created in Blubrry for each show. Blubrry has taxonomy and post type podcasting - so you use Taxonomy and then create a feed link for each show.

Could you integrate all this into a theme? Sure, but that's a lot of custom programming and truth be told, most stations that already have a theme they are using may not want to change their theme for a vareity of reasons. They may want us to improve upon what they have, but not replace it. Which is the realm of plugins - to enhance and not replace the station's current theme.

In this world, people tie themselves to themes like one would tie themselves to a sports team. There are "Yankee" fans and there are "Red Sox" fans. So, if you came to them with it in mind that they should "change their theme to one we created" they might say absolutely not. And even more so today, because page builders like Divi and Elementor are all the rage. And by giving someone a theme that doesn't have page builder tools, you'd be regressing and not progressing.

@tonyzeoli Thanks for this comment https://github.com/OpenProducer/openproducer/issues/2#issuecomment-543871398
Feels like we’ve had this discussion in LibreTime and Twitter and agree on the ‘decouple from theme’ approach.

It’s similar to how we’d build on Drupal.

Speaking of which…. would you be interested/able to PM on OpenProducer projects built on Drupal?

The customer/client-facing features would be pretty much the same - little different machinery under the hood.

As far as developing features and functionality that does not yet exist or needs to be improved… each could be a separate campaign or subproject on the OpenProducer collective https://opencollective.com/openproducer

That should include LibreTime, Radio Station, Open Collective integration, etc.

Would be great to loop @Robbt into this discussion since his station uses LibreTime + Drupal. For a Drupal 8 version of OpenProducer, we’d probably want to refactor what inspired the Radio Station plugin https://www.drupal.org/project/station/issues/2608594#comment-10795670

Robbt commented

I'm not sure how much Drupal development I plan on doing in the future. I haven't really gotten into Drupal 8. Time will see but I don't know if there is a future here. Focusing on platform agnostic widgets probably makes the most sense. Most of the station module plumbing could be replaced by LibreTime widgets. I'll have to check out what Tony is working on in Word Press.

@Robbt https:// wordpress.org/plugins/radio-station

  • Shows custom post type
  • Playlists custom post type
  • Add shows to Master Calendar
  • Add Master Calendar to Wordpress Page with a shortcode, set grid or list view.
  • Show override if schedule interrupted
  • encore presentation designation if a repeat
  • 12/24 hour view
  • upcoming show widget
  • current show / DJ / host widget

On our roadmap we’re building an API for products like LibreTime to connect and publish show and playlist content into WordPress. We want to help stations automate show info so no one has to login to WordPress if the data is coming from LibreTime. It eliminates duplicate efforts and ensures data accuracy.

Robbt commented

Thanks for the info. From an engineering perspective it might make more sense to build API calls that exposes this information in LibreTime and then there could be a synchronization script that runs and translates between the two APIs. Or even just have the WordPress plugin pull the info from the LibreTime API (which doesn't currently exist). I guess the question is whether there are other automation systems that you are planning on being interoperable with and what their API compatibility is. Thanks for sharing.

Robbt commented

Well LibreTime has an undocumented API, one of the next steps in LibreTime development is to spec out an API. We are actually discussing it in the developers channel of chat.libretime.org - the plan is at some point to create a new API for the next version of LibreTime.

As far as the podcast issue goes I'd suggest a good first step would be to open up an issue on github. I searched for podcast and did not see it, make sure you include a link to a feed that doesn't work and a feedburner version of the same feed. I don't know if anyone will step up and fix your problem but this will at least make it easier for someone to do so. If you already did this send me the link.

So the high-level goal is to provide stations/users with something they can configure and manage themselves. I'm less familiar with WordPress, but there are already a couple stable, well funded Drupal distributions that can be used as a base for this type of radio station and podcasting platform.

Without going too much into the technical weeds, a major benefit of creating a child distribution is we can collaborate with existing teams and partners to extend 'their' product. If the base distribution/product was on Open Collective, there could be a campaign or subcollective/subproject for our product + any features/functionality not included in the base distribution. For a variety of reasons, at this moment in time Acquia's Lightning may be better suited than Burda Magazine's Thunder as both a base distribution and partner.

Considering Radio Station is based on Drupal Station module, possibly there's an opportunity for Tony to assume the product manager role that Dan was going to take on? The functional requirements are similar https://github.com/OpenProducer/openproducer/issues/2#issuecomment-544139885 and a variation of what I was riffing on in this crowdfunding idea would provide funds to kick start development for the same partner I was referencing https://github.com/AMTVDigital/soundsandcolorsradio/issues/1

Here are a couple more examples of radio/podcast services that are extended by their own site builder and/or integration -

We'd like to include similar features in our site builder.

the plan is at some point to create a new API for the next version of LibreTime

We should include this in the MVP and develop any needed functionality as part of our beta. Probably could start by making sure all features are scoped out in the issue queue? https://github.com/LibreTime/libretime/issues

This comment is related - https://discourse.libretime.org/t/any-interest-in-libretime-available-as-a-saas-with-hosting-and-support/121/23

@tonyzeoli As (one of many things) mentioned in Slack

Could https://netmix.com/ provide this type of SaaS radio + site builder + custom services offering? https://github.com/OpenProducer/openproducer/issues/2#issuecomment-544848054

If so, OpenProducer could focus on developing, maintaining and funding the OSS product (and underlying projects). Netmix could be a primary service partner.

https://www.basswise.com/ is one of the best LibreTime powered sites I’ve come across. I really like how they’re scheduling, distributing and promoting DJ submitted shows. https://www.basswise.com/join

@James built it with Ruby on Rails, deployed using Dokku. The Framework is using Bootstrap 4 for the grid and custom CSS across the site.

Curious what it would take to build something like this on WordPress or Drupal.

Right now, I'm building out DanceGruv, a DJ culture site in Raleigh, NC. On the dev server, we've got WordPress integrated with Digital Ocean Spaces using a plugin for that specific purpose, so that all uploads go to DO Spaces and not to the server hosting WordPress itself. The site is using Blubrry PowerPress as the feed generator that builds the feed based on Podcasts created in WordPress. The feed is passed to Feedburner, because PowerPress feeds are not being accepted by LibreTime. So, it's burned as a Feedburner feed and then passed into LibreTime Podcasting. The smart block is assigned to a sheduled show which pulls the playist created by the Podcast. We are using the scheduling tool in AirTime WordPress theme and setting some modifications and restrictions on when a DJ can add a file to WordPress and schedule that file as a Show (has to be 60 minutes before air time so LibreTime can check the feed for new shows.

Quick followup on https://github.com/OpenProducer/openproducer/issues/2#issuecomment-544854222 and related discussions about LibreTime priorities libretime/libretime#935 (comment)

@paddatrapper @Robbt @tonyzeoli Would it be possible to collaborate on project scope for the LibreTime API? If so, where should we move that part of the discussion?

Would it be possible to collaborate on project scope for the LibreTime API? If so, where should we move that part of the discussion?

Thanks @tonyzeoli for posting WP requirements https://discourse.libretime.org/t/planning-out-an-api/341/7?u=gusaus

I'd like to include this functionality in the MVP.

Could we integrate MetaBrainz projects for stuff like

  • DJ tools
  • Playlist display
  • Artist profiles/music pages
  • etc.
Robbt commented

Using MetaBrainz is certainly a good idea, but to do so would require someone to get to know their API etc and see how to access the information and integrate it, and to also identify where it would be useful to connect it etc.

to do so would require someone to get to know their API etc and see how to access the information and integrate it, and to also identify where it would be useful to connect it etc.

@tonyzeoli Are you integrating MetaBrainz/MusicBrainz into Radio Station plugin and/or any of the WordPress/LibreTime sites?

Curious what it would take to build something like this on WordPress

In addition to the website builder, Radio.co provides some great examples for functionality we might want to build into LibreTime.

  • Voice Tracking - Record voice tracks in your browser and add them to playlists. Record voice tracking links, mix songs, and add jingles to create the perfect playlist that sounds like you’re broadcasting live.
  • Track Editor - Edit audio playback for any track directly in your browser. Adjust start/endpoints, fade in/out, and your track information, which is ideal for shows that want to segue smoothly between music.
  • Live Recording - Broadcast live to your listeners anytime. Takeover pre-programmed shows to connect with your audience in real-time.
  • Manage Your Radio Station's Media - Learn how to easily manage your radio station’s media by uploading files in bulk and organising tracks by genre or artist using tags to build your radio library.
  • Mixcloud Integration - Integrate your radio station with Mixcloud to publish live recordings and DJ mixes.
  • Listener Requests - Let listeners request songs and play them out on your radio station. The more popular a track request is, the sooner it will play!
  • Advanced Stats - Edit audio playback for any track directly in your browser. Adjust start/endpoints, fade in/out, and your track information, which is ideal for shows that want to segue smoothly between music.
  • News Bulletins - Broadcast the news, on the hour, to all your listeners automatically without manually scheduling events or replacing files.
  • DIY Player Kit - Embed a highly customisable radio player for your website out of the box or tailor it to suit your needs. There are lots of features at your disposal via our player API toolkit.
Robbt commented

So a MVP is by definition the minimum viable product, what would make sense is to figure out the least amount required to make something useful for radio stations vs. the laundry list of potential features etc that we have been putting together. What is the bare minimum to have something that would be useful for stations. All of these features are great but they would require a substantial amount of developer time and if the goal is to have something that is useful for stations we should figure out what is the most essential. It's possible the wordpress station plugin & libretime together with some basic documentation might be sufficient for a lot of people. The challenge with Drupal is that the station module (which the station plugin is inspired by) has not been updated for a long time and is unlikely to be doing anything. If we had a functional core then it would make sense for my station to switch to using it from what we have now. It also would make sense to figure out why the podcasts aren't processed correctly by LibreTime but someone could open an issue on the LibreTime git for that.

MVP is by definition the minimum viable product, what would make sense is to figure out the least amount required to make something useful for radio stations vs. the laundry list of potential features etc that we have been putting together.

Agreed - the radio.co features referenced in https://github.com/OpenProducer/openproducer/issues/2#issuecomment-575824770 would most likely be future functionality built into LibreTime. For 'this' MVP, it would great to include LibreTime 3.0 + API https://github.com/OpenProducer/openproducer/issues/2#issuecomment-544854222.

The challenge with Drupal is that the station module (which the station plugin is inspired by) has not been updated for a long time and is unlikely to be doing anything. If we had a functional core then it would make sense for my station to switch to using it from what we have now.

As mentioned in https://github.com/OpenProducer/openproducer/issues/2#issuecomment-544203268, we could pick up on the previous plan to crowdfund if stations like yours could allocate some resources (funds and/or development time) towards the development of a functional MVP. We've also been talking to NFCB about providing sites and services to their member stations (https://nfcb.org/map/).

Having an experienced PM to define this is key. Since @tonyzeoli has already defined the MVP for WordPress, would it be possible to do the same for Drupal? Could Netmix be the service provider for WordPress and Drupal powered sites? https://github.com/OpenProducer/openproducer/issues/2#issuecomment-557756879 Could Netmix be the company behind the MVP we're defining in this task? https://github.com/OpenProducer/openproducer/issues/2#issue-244538415

Would be great if we could clarify our goals/needs for an MVP and unify around a plan to market to stations.

@tonyzeoli

I have yet to include web development services on the Netmix
website, but I operate Digital Strategy Works

Sounds like Netmix and/or Digital Strategy Works could be OpenProducer's primary service provider/partner for this vertical. OpenProducer/community#3

Could Netmix be the company behind the MVP we're defining in this task https://github.com/OpenProducer/openproducer/issues/2#issue-244538415?
Could Netmix provide a SaaS offering?

If yes, what do you think about running with this type of plan? https://github.com/OpenProducer/administration/issues/5

  • Find 10 or so adventurous stations or podcasters to join the BETA
  • Gather use cases from them to cover the critical features of all sites
  • Build, migrate and launch each site
  • Iterate until we have something solid and generally usable
  • Launch the first version of the SaaS “self-service plan”, ending the beta period, and moving to general availability
  • Throughout the beta and beyond, all of the code, documentation, and related materials for the platform will be publicly available and contributed back to the project

Could Netmix be the company behind the MVP we're defining in this task #2 (comment)?
Could Netmix provide a SaaS offering?

https://discourse.libretime.org/t/libretime-services-and-other-ways-to-sustain-the-project/326/10?u=gusaus

Main decision here is whether or not LibreTime core team is interested or has the capacity to provide client-facing services. Similar to a LibreTime SaaS offering, this might be something core team members could collaborate on through a partner.

Could Netmix provide LibreTime services?

If we had a functional core then it would make sense for my station to switch to using it from what we have now.

@Robbt What if the MVP was powered by WordPress. Would migrating http://wcrsfm.org/ be an option?

Further followup to @Robbt's comment https://github.com/OpenProducer/openproducer/issues/2#issuecomment-575909406

What is the bare minimum to have something that would be useful for stations. All of these features are great but they would require a substantial amount of developer time and if the goal is to have something that is useful for stations we should figure out what is the most essential. It's possible the wordpress station plugin & libretime together with some basic documentation might be sufficient for a lot of people.

And some Slack discussion with @tonyzeoli

Theming is not a problem. We design and build on Divi, Elementor, Pro, Avada Fusion. It's the Radio Station stuff that they need from the plugin to run the website. You can see Radio Station working on https://www.ashevillefm.org/, just for a quick look at who's using it. We're releasing 2.3.0 next week, I think. Take a look at the 2.3.0 demo on https://radiostationdemo.com

After testing Radio Station plugin on WordPress (which I hadn't used in awhile), it certainly seems (to me at least) like WP already provides something that would be useful for stations. Has anyone done a feature comparison? If WP does provide a better solution out of the box, how complicated/time consuming would it be for stations stuck on Drupal 6 to migrate?

Here's a good description of a Drupal distribution (the project type for a Drupal MVP) https://dri.es/distributions-remain-a-growing-opportunity-for-drupal

A Drupal distribution packages a set of contributed and custom modules together with Drupal core to optimize Drupal for a specific use case or industry. For example, Open Social is a free Drupal distribution for creating private social networks. Open Social was developed by GoalGorilla, a digital agency from the Netherlands. The United Nations is currently migrating many of their own social platforms to Open Social.

Is there a WordPress equivalent to this type of configuration and project type?

Thanks for those examples -

  • https://www.peepso.com/ - social network plugin for WordPress that allows you to quickly and effortlessly add a social network or an online community, similar to Facebook right inside your WordPress site.
  • https://buddypress.org/ - helps you build any kind of community website using WordPress, with member profiles, activity streams, user groups, messaging, and more.

Reminded me of another custom setup currently under development.

Considering many community/public radio stations have similar goals and needs, I'm wondering if there's an opportunity to use and/or contribute to similar features? The beta process we've been proposing https://github.com/OpenProducer/openproducer/issues/2#issuecomment-577343638 is actually similar to what they're doing. https://newspack.blog/newspack-faq/

Little bit more on Newspack from their FAQ https://newspack.blog/newspack-faq/

Plugin

Newspack will be a plugin that selects, streamlines and simplifies the use of other plugins best suited to newsroom needs. It’s the maestro that will arrange and conduct an orchestra of plugins. And it eliminates most of publishers’ technology headaches and overhead.

Out of the box, Newspack should provide the following:

  • Publishing
    • ability to change the layout of their pages and presentations on the fly.
    • No more being locked into only what a theme offers.
    • Workflows will be streamlined and integrated with social media and newsletters.
  • Revenue development -
    • features that smoothly take readers through an audience-acquisition funnel to become subscribers or members.
    • Make it easy to create an online store.
    • Accepting payments and donations will be a breeze.
  • Audience engagement,
    • tools that ensure your readers can be part of a newsroom’s operations including story inception, sourcing, reporting, post-publication comments
    • planning for live events.

Included with Newspack are plugins for -

  • mobile delivery
  • search engine optimization
  • advertising delivery and management
  • feed ingestion
  • headline optimization
  • A/B testing
  • subscription and membership services
  • email marketing services
  • lead acquisition tools
  • advanced analytics
  • social-media and newsletter integration
  • subscription services

Theme

The Newspack theme will be based on the latest Gutenberg-era WordPress thinking, in line with the vision laid out here: one theme, many styles, blocks and templates. Newspack will not be about offering an unnecessary variety of themes. It will zero in on the precise visual needs of a newsroom, but still let publishers customize their site with a distinct look and layout.

As a new product in the post-Gutenberg-launch era, Newspack has the luxury to be a textbook application of Gutenberg concepts without significant backwards compatibility concerns. We hope to implement a modern hierarchy of blocks/themes/styles/templates, leveraging some of the most exciting work in the WordPress community, which will only grow more refined and powerful over time.

Could Newspack be a base for our MVP?

The plugin options for publishers are as follows -

  1. The most common and critical will be loaded by default when publishers create up or migrate their sites.
  2. Others will be offered to publishers during setup, depending on their preferences, such as whether they need advertising management tools.
  3. Other vetted and approved options will be listed in a directory.

Most online publishers incorporate media (photo galleries, videos, audio, etc.) so I'm assuming Newspack would include. Radio station plugin https://github.com/OpenProducer/openproducer/issues/2#issuecomment-544139885 may be able to provide the additional features public or community radio stations need. Offered during setup or a vetted and approved options.

I believe there's an opportunity to work with project owners and funders to include Radio station plugin and collaborate as a partner. https://github.com/OpenProducer/openproducer/issues/11

Thoughts?

From their FAQ https://newspack.blog/newspack-faq/

Newspack is still being developed and we plan a first-version release in March 2020, though an early version of the plugin is available now on our GitHub repo. As an open-source project, Newspack is also available to be downloaded and installed everywhere under the GPL v2.

I would think Radio Station could be the Newspack of Radio, Internet
Broadcasting, and Podcasting. That's where I intend to take this.

I agree! Wouldn't it make sense to leverage a plugin, theme, and funded development team if it's providing what stations need?

Might be worth testing and hitting their issue queue -
https://github.com/Automattic/newspack-plugin/issues
https://github.com/Automattic/newspack-theme/issues

I understand Radio Station and Newspack are both plugins. The latter is actually a bunch of plugins + base theme.

Could Newspack be a base for our MVP?

The plugin options for publishers are as follows -

  1. The most common and critical will be loaded by default when publishers create up or migrate their sites.
  2. Others will be offered to publishers during setup, depending on their preferences, such as whether they need advertising management tools.
  3. Other vetted and approved options will be listed in a directory.

It still won't be stable enough to use for another month, but if you look over all the functionality Newspack will provide https://github.com/OpenProducer/openproducer/issues/2#issuecomment-584957211, you're pretty close to a complete solution if Radio Station is plugged in.

I updated the features and related issues based on what Newspack provides out of the box. https://github.com/OpenProducer/openproducer/issues/2#issue-244538415

As far as I can tell, https://github.com/OpenProducer/openproducer/issues/9 is the only functionality Newspack does 'not' include. This would be provided by Radio Station plugin.

Other than that, security updates, new functionality, themes (there are several subthemes already included https://github.com/Automattic/newspack-theme), would be self-contained in the Newspack and sustained by their development team and partners.

It would be great if everyone else could test and tell me what I'm missing. The instructions
https://github.com/Automattic/newspack-plugin#how-to-install-newspack-on-your-site + Automattic/newspack-plugin#312 (comment) before stepping through the setup wizard + demo content (you'll see that option during setup) should provide a base setup like this to test.
https://live-newspack.pantheonsite.io/

Wouldn't it make sense to use Newspack as a base?

What else do stations need that isn't on the feature list?

With their 1.0 release, Newspack includes most of the features listed in the summary https://github.com/OpenProducer/openproducer/issues/2#issue-244538415

What other features/functionality do stations and podcasters need?

I disagree. I've been looking at the Newspack FAQ and I now better understand all this and what is offered. Newspack is offering specific, free WordPress themes that are already available in the theme library on WordPress.org. The thing about this initiative is that it's really a private initiative from Google and WordPress to support news organizations that need to generate revenue and providing.a suite of services for a few on WordPress VIP. There are many plugins they recommend that are not included in Newspack.

The feature list in the description needs an update, but all the issues here labeled with Newspack exist upon installation and can be easily accessed and configured via a Dashboard -
Dashboard ‹ Newspack — WordPress 2020-03-04 16-47-25

Newspack is offering specific, free WordPress themes that are already available in the theme library on WordPress.org.

As noted in https://github.com/OpenProducer/openproducer/issues/2#issuecomment-584957211 they provide a theme + plugin that extends two other dependencies. It's all easily installed and configurable via their setup wizard and dashboard.

The thing about this initiative is that it's really a private initiative from Google and WordPress to support news organizations that need to generate revenue and providing a suite of services for a few on WordPress VIP.

Not sure that's an accurate interpretation when all the code is freely available and licensed under GNU General Public License v2 and they provide instructions on how to self host https://github.com/Automattic/newspack-plugin#how-to-install-newspack-on-your-site

Yes, sure you can do it yourself, but to connect to WordAds, you must be a WordPress.com publisher. You cannot earn revenue from WordAds if you're not hosting on WordPress.com, or at least I don't think you can.

Good example of functionality included with Newspack but had not yet been documented https://github.com/OpenProducer/openproducer/issues/6#issuecomment-595131889. We do have some extendable options for radio stations and podcasters participating in a beta. https://github.com/OpenProducer/openproducer/issues/11

@tonyzeoli https://newspack.blog/support/plugins/ should provide some context/clarity to what we've discussing. Most (all?) of the recommended plugins can be downloaded and installed via the Setup wizard and/or Dashboard (see https://github.com/OpenProducer/openproducer/issues/2#issuecomment-594980098).

With Newspack launching their service this month, you'd expect functionality for events https://github.com/OpenProducer/openproducer/issues/17 and even audio/podcast to be included or recommended since many publishers have these needs.

Packaging everything together so a station or podcaster can DIY will require more research and discussion.

For a service provider (most publishers or radio stations still need some type of support), most of the ingredients are ready to mix. If we can get Radio Station plug-in to a point where it works well with Netmix, then possibly they could recommend or include down the line.

Not sure I'm adhering to proper git flow... or how a WordPress codebase is usually released, but https://github.com/OpenProducer/openproducer-platform/tree/master is an upstream of what we're developing and testing on Pantheon.

We need a proper development and release flow (do we have a PM who can take the lead?), but https://live-openproducer-platform.pantheonsite.io/ is basically Newspack with demo content enabled.

There are a few plugins that are not included or supported by Newspack (see the wiki for what's included). We should work with plugin developers to ensure each is compatible and then see if Newspack can recommend.

With the release of Radio Station 2.3, our main need for this MVP is to ensure it works with Newspack upon enabling. #6

Once we solidify process/pricing/service levels for a paid beta https://github.com/OpenProducer/openproducer-platform/issues/11, we 'should' be able direct resources (development and funds) towards features that still need work + integrations such as LibreTime and AzuraCast.

Just between users of Radio Station, LibreTime and AzuraCast, there should be a lot of good candidates for a paid beta and/or related services.

I added Radio Station #6 and The Events Calander #15 plugins to https://github.com/OpenProducer/openproducer-platform/tree/master after getting them to work with Newspack.

The platform isn't DIY ready, but we have all the source material in the repo to build sites for stations/podcasters/publishers as part of a paid beta, hackathon, or as part of a service.

Newspack again has provided inspiration for the latter https://github.com/OpenProducer/openproducer-platform/issues/11#issuecomment-614960582

We have feature requests for AzuraCast #8 and LibreTime integration #9 into Radio Station plugin.

While the former is more advanced since there's already an API, the combo of LibreTime & Radio Station plugin would better serve the needs of stations with multiple DJs and shows.

We could fine-tune requirements by building solutions for users of each. OpenProducer/community#11

In addition to a paid beta and/or related services, we can create crowdfunding campaigns for functionality that is not included with Newspack.

We have all the ingredients to incorporate something like CiviCRM's Make it Happen campaigns OpenProducer/community#13

With a PM to scope out each feature and take the lead across all projects (either through OpenProducer or as a partner), we could fill in the other folks needed to make it happen. OpenProducer/community#4

Any takers?

@tonyzeoli Do you mean this or something else? https://jetpack.com/support/jetpack-blocks/podcast-player-block/

That is indeed already built into our Newspack powered platform -
https://test-openproducer-platform.pantheonsite.io/music/a-collection-of-podcasts-embedded-with-jetpack-podcast-player-block/

With a sticky audio player in their queue #22, LibreTime & AzuraCast integrations into Radio Station would pretty much make this MVP complete for Radio stations and podcasters.

Pretty sure there are stations, LibreTime & AzuraCast users that would help fund development with a paid beta. One way to find out..... https://github.com/OpenProducer/community/issues/8

Following up on #6, I came across a WordPress based Community Media Platform built by the folks behind MetaRadio https://mediarealm.com.au/metaradio/
https://mediarealm.com.au/articles/recent-work-community-radio-website-platform/
https://www.cbaa.org.au/web-services

Glancing over their features (https://mediarealm.com.au/articles/recent-work-community-radio-website-platform/#featuresblocks0) it seems like we already include most/all in our platform #11. The main exception is the radio functionality still under development. #6 and possibly a subtheme with custom blocks/widgets #14 specifically for stations.

Since all the other key features and base theme(s) are included in Newspack (the platform we're extending), we could help fund the development of the last couple features with a platform beta or product offering. https://github.com/OpenProducer/community/issues/8

FWIW - here are a couple sites built on the current platform -
https://angelcityjazz.com/
https://justjazz.tv/

@tonyzeoli Feature list for the OpenProducer platform can probably be culled from the issue description #11 and the following sources -

https://docs.google.com/document/d/1UYP6OfxlTn6WqcxycZ2RqGBHMcngBayDVe-ksAGxd5g/edit#heading=h.r19wv0o5p6t2
https://github.com/OpenProducer/openproducer-platform/blob/main/README.md

Let me know if you need me to provide additional info or clarity.

@tonyzeoli If you haven't doneso recently, try installing https://github.com/Automattic/newspack-plugin per their instructions
https://github.com/Automattic/newspack-plugin/blob/master/README.md#how-to-install-newspack-on-your-site

That should give you a good sense for what the one plugin provides out of the box. It basically downloads all the dependencies does all your configuration and provides demo content during the initial setup.

The only thing we'd need to fork, develop, and maintain for OpenProducer would be this plugin (openproducer-plugin?) which would include additional dependencies (like Radio Station + The Events Calendar, etc) and custom configuration, branding, and demo content.

I haven't looked at the code to see exactly how it works, but it seems like we could do something similar w/o any custom programming or high degree of maintenance thereafter.

Well, JetPack itself does this, right? It's one plugin that installs a number of plugins on top of it. So, it seems as NewsPack does the same thing.

We can certainly look into this.

Let me attempt to install NewsPack. When it installs, does it actually add plugins to the Plugin library? Or, do you see your options through the Newspack Settings interface?

When it installs, does it actually add plugins to the Plugin library? Or, do you see your options through the Newspack Settings interface?

Another good thing about Newspack as a base is they're well funded and regularly making improvements since the first release about a year ago. It's actually been awhile since I installed from scratch, so the best way to see how the dependencies work is to install yourself.

@tonyzeoli below is my long-form reponse to OpenProducer/community#4 (comment)

...for the OpenProducer platform where it's an install package that includes Radio Station and its assorted features, we'll have to speak with @majick777 about how that rolls out. Of course, the free version will be included in OpenProducer, but we need to ascertain how something like JetPack works, where it's a plugin with multiple plugins that install as dependencies. I see this is themes, where the theme has dependant plugins that need to be installed. So, if OpenProducer is a "theme" per se, with it's dependant plugins to be included, that's certainly a doable scenario. I've just never had reason to do it before, but it can be done. All these themes you buy on ThemeForest have dependency plugins that are installed with the package. They just have to be activated from the dependant plugin panel. @majick777 probably knows how that works.

As noted in #11, The only thing we'd need to potentially fork, develop, and maintain for OpenProducer would be https://github.com/Automattic/newspack-plugin which would include additional dependencies (like Radio Station + The Events Calendar, etc) and custom configuration, branding, and demo content.

Not sure the theme analogy is needed because Newspack (and hence OpenProducer) does not require specific themes for it work. It would be nice to include a couple OpenProducer themes (children of the Newspack theme?) - the themes Newspack already includes work pretty well (out of the box - or with custom children) https://newspack.pub/support/themes/

I'm probably saying this all wrong - best way to understand it's not a theme (or theme dependent) again is to test it out - https://github.com/Automattic/newspack-plugin#readme

By the way, you'll have to learn how to commit OpenProducer to the WordPress repo via SVN or some other method. I can help you with that. There is a way to link Git rep to the WordPress repo. I've sort of set it up, but have never used it. I still commit via SVN by deleting what's up on WordPress now and replacing it with a new package using Versions for the Mac. I think you're PC, so they probably have one for PC too.

If OpenProducer ends up being a fork of the one Newspack plugin, I think we should mimic how/where they're releasing the plugin. Currently the plugin is only available on Github - https://github.com/Automattic/newspack-plugin

Think we can do the same for any themes we release -
https://github.com/Automattic/newspack-theme

it's probably important for you to think about releasing this as a theme and not a plugin, since the theme will be what you're offering along with the installed dependant packages unless @majick777 might advise differently. or, you could release a separate theme and then have your companion plugin. So, you would have the OpenProducder Theme in the theme directory and the OpenProducer plugin in the plugin directory.

Hopefully the previous comment provided clarity.

You're going to have to develop around this, so your budget is going to need to be in place and/or you get contributors to help you with coding this up and making it function correctly on install.

Not if I can make a good case for Netmix owning it https://github.com/OpenProducer/internal/issues/8

@tonyzeoli @majick777 Our unexpected, last-minute addition to FundOSS (https://fundoss.org/collective/openproducerplatform) has made figuring out resolving the issues brought up in #11 a burning priority.

https://fundoss.org/ starts in about two weeks and they've already ramped up their marketing and promotion. As the only WordPress participant, we should generate a good bit of additional promotion and funds from being actively engaged in the WordPress community leading up to and during the campaign. I'm fully prepared to take on that responsibility.

We'll get an additional bump from partnering or collaborating with Automattic, the product owners of the plugin we'll need to fork https://github.com/automattic/newspack-plugin

We can not really go public with this project until that happens. We need to establish how we'll work together or at minimum get their blessing on how we intend to proceed.

I'm well aware Radio Station PRO is the priority until it's launched. The reality is we now have a good chance to fund the final development piece and send funds downstream to dependencies (i.e. Radio Station) and integrations https://github.com/OpenProducer/openproducer-platform/issues?q=is%3Aissue+is%3Aopen+label%3A%22radio+station%22

@tonyzeoli If there's no hard deadline for releasing Radio Station PRO, maybe it would be worth spending a couple hours figuring out #11 and circling back to Newspack. We can discuss options and our approach in the following public thread. We could also put the call out for additional contributors if there's a need https://opencollective.slack.com/archives/C22E2D2F2/p1621323513001700

If we sort it out over the next couple days, we'll have an additional revenue stream and a promotional vehicle for Radio Station. The countdown clock is ticking on this one!

@gusaus Curious to know your experience with Newspack... finally had a chance to give it a spin and here's mine.

I installed the Newpack plugin and the setup screen attempted to install a bunch of required plugins and the Newspack theme. (Not sure why, but all of these failed to install for me, so I did so manually.)

Then, after installing the "required" plugins (marked with * in the below list) it says it is "installing core plugins", which include a mix of more Newspack plugins, curated popular plugins and even some Premium plugins (**):

Akismet Anti-Spam, AMP*, AMP TablePress, AutomateWoo**, Bing URL Submissions, Broadstreet, Co-Authors Plus, Coral Project, Disqus for WordPress, Distributor, DocumentCloud, Instant Articles for WP, Jetpack by WordPress.com*, Mailchimp for WooCommerce, Mailchimp for WordPress, Newspack Ads, Newspack Blocks*, Newspack Campaigns, Newspack Disqus AMP, Newspack Image Credits, Newspack Listings, Newspack Media Partners, Newspack Newsletters*, Newspack Rename Comments, Newspack Sponsors, Newspack Supporters, Organic Profile Block, Parse.ly, Password Protected, Publish to Apple News, PWA*, Pym.js Embeds, Redirection, Regenerate Thumbnails, Reusable Blocks Extended, Simple Local Avatars, Site Kit by Google*, Super Cool Ad Inserter, TablePress, Web Stories, WooCommerce*, WooCommerce Name Your Price**, WooCommerce Stripe Gateway, WooCommerce Subscriptions**, Wordpress Commenting**, WP GDPR Cookie Notice, Yoast SEO*

Again it seems like WordPress.Com service for Newspack they are keeping a list of curated plugins that best work with Newspack. And it does seem like the Newspack functionality can be used without the Newspack theme (or it's choice of 5 child themes) since the Newspack plugin site states: "To take full advantage of Newspack, the plugin and theme should be run together, but each should also work fine individually." It isn't clear yet what the combination of Newspack plugin and theme provides for over say, the plugin and a non-Newspack theme, and this will need further investigation.

The next step is to connect Automattic's Jetpack and Google's Site Kit, which is not optional since I cannot continue through the wizard without doing so... Obviously there are some "decisions not options" built into the Newspack project as is Automattic's way of doing things, currently I just wish I could see/know what the Newspack functionality actually IS somewhere more clearly without having to do all this and possibly spend hours looking through all the plugin code (and subplugin code) to work that out. I will have to get back to trying that when I have more time.

As for "forking" Newspack... I'm not seeing why that would at all be necessary? Probably not desirable or maintainable to keep a separate codebase, and should be extensible in the same way as other plugins. But so far It seems to be a bundling plugin for subplugins, and so I'd think it would be sufficient to bundle it further with whichever projects Open Producer wants to go along with it. Being aware of the setup/installation steps of course - this could possibly be streamlined by prebundling the "required" plugins for Newspack (or using another bundler for Open Producer such as the popular TGMPA.)

@majick777 Not sure if you were answering my urgent call #11, but I was really happy to see your last comment... so much that I'm staying up a bit longer to reply.

I strongly suggest you just take a few minutes and skim through the comments beginning here #11. That should give you a sense for my experience and the reasoning behind moving from Drupal to WordPress. It will also illustrate how I'm still trying to learn how WordPress works after spending the last decade immersed in Drupal. It should also be obvious that I'm just a site builder who has a hard time speaking in code.

I was trying to explain in this comment the reasoning behind a fork and why the only codebase we'd need to fork and maintain is this plugin https://github.com/automattic/newspack-plugin

I tried to explain 'why' in that comment.

There's not yet a proper release (or readme) but this code is just Newspack (including its dependencies) + Radio Station https://github.com/OpenProducer/openproducer-platform

The same code is powering this Pantheon instance https://live-openproducer-platform.pantheonsite.io/

I'd be happy to add you to the Pantheon team, so you can do a fresh install and test on that environment.

Bottom line is we need to make a decision on if/what to fork and the time/cost/people resources needed to maintain. Our participation in FundOSS should cover development costs if we can move quickly through the steps laid out in #11

Best case scenario would be if Netmix owned it and the same team behind Radio Station were the initial maintainers. I do think FundOSS will create an opportunity onboard contributors wherever there's a need.

@tonyzeoli @majick777 I'd be extremely grateful if we could touch base and make some decisions over the next day or so. We will be rewarded with funds flowing into our projects and pockets next month!

Okay, so I read through Tony's comments but haven't yet spoken to him about the project. We're both working hard on Radio Station PRO, which is the priority. I have put aside any sales efforts for now for Digital Strategy Works business to focus on Radio Station PRO and to finish one final project I'm working on for a Real Estate broker in Portland, ME. And, as you know, my son is a priority with Covid halving his school time, as well as my wife's health issues making me more responsible for things that most people take for granted.

That being said, if we were to fork Newspack, I don't see how we can maintain the Newspack system as a fork given our priorities and I don't know that forking Newspack would allow us to take new Newspack updates and continue to develop new ideas and code into the project. My understand is, and @majick777 correct me if I'm wrong, once you "fork" a plugin and spawn a new plugin, that you are disconnected from taking any and all updates and that if you're writing new code for that plugin, that there are bound to be clashes given that you're not closely following development of the parent and that when the parent pushes code, you're actually able to ascertain the changes and roll them into the fork while also being mindful of your own contributions to the forked version.

As someone who is a "site builder," I believe you think this is easy to do, but it's not or we'd see this happen far more frequently with a lot of projects. A fork means that you take what's build and go it alone. It doesn't mean that you take what's built, keep feeding off the parent, but then add new code to the project. No one can possibly know what's going on with the parent while developing the forked version.

Remember, once you fork a plugin, then you're in full control of that fork and disconnected from the parent. I don't know that you can continue to get what the parent has and even if you tried to take what the parent has, it would clas with what you're building. In fact, you might probably build the same feature two different ways and then what?

@majick777 are you in agreement with my thoughts here?

Thanks @tonyzeoli! First off I'm very aware of your business and family priorities. I would not be upping the urgency level if I didn't believe successful FundOSS (which is going to be my focus next month) would recoup whatever time is needed to make decisions on #11 and then following up with Newspack with our suggested approach and name change. It should also provide an incentive to @majick777 to fork and create an initial release (if he's interested in doing it). Obviously, I have no idea how much time that would take. I do know we can't fundraise during FundOSS on top of someone else's platform without sending funds to their development team or at minimum getting their blessing on what we're doing.

Really I'd be good with having the technical discussion with the Newspack product team. In my mind, the ideal would be to say we want to call it Radiopack and see if they'd be up for co-owning and maintaining.

The fundraising and marketing bump we'd get as the only WordPress participant in FundOSS would be through the roof!

Quick note on the technical bit - I don't think it's easy and definitely don't understand how this works compared to Drupal. In Drupal, we'd create a child distribution (aka Drupal product) or an installation profile on top of an existing distribution. That's what we did for the Drupal 7 version of OpenProducer and what we were going to do for Drupal 8. We could essentially add/remove dependencies, configure, add demo content... all without having to fork with the parent.

The Newspack plugin essentially does that same thing. It downloads dependencies, gives you a dashboard for additional configuration, demo content... pretty much exactly what a Drupal distribution does. For kicks I tried a speed fork of the plugin by doing a find/replace, newspack to radiopack on all the files and file names. Problem was that affected auto downloading the required dependencies with Newspack in the name. We don't need to fork or modify any of the dependencies (see https://newspack.pub/support/plugins/) - we do need to create a couple additional dependencies (like Radio Station), modify the dashboard, and create our own configuration and demo content. Main thing we need to do is replace the name 'Newspack' with 'Radiopack' or whatever is the new name. Again I don't know how time/labor-intensive it would be to do it. But I did skim over some of the code that grabs the dependencies and does the configuration. It seems like it wouldn't really require custom code... we'd mainly need to basically replicate what the plugin is doing.

Again, I'd like us to get on the same page on whether or not that is feasible or if there's another approach. Then @tonyzeoli and anyone else you think should be present should followup with Newspack to discuss options. This really needs to happen this week... not actually forking but agreeing to the best approach and following up w/ Newspack.

Oh ya - I'd really like Netmix to own it - mainly meaning lets transfer the repo from OpenProducer - and for you both to be on the team. FundOSS, Gitcoin, Open Collective are going to be doing a massive amount of marketing (I want to help them!) and I think the Wordpress community would pick up on the only WordPress participant as big news.

The product will be way more legit w/ Netmix and the creators of the Radio Station plugin visibly owning it and able to speak on a technical level. If it ends up either or both of you can't commit any time to maintain ongoing, we will have a budget to bring on additional team members after FundOSS is complete.

Hope that wasn't too little or much information. Money in our pockets next month if we can figure this out and circle back to Newspack this week!

Thank you both in advance!

@tonyzeoli Yes I'd agree forking Newspack isn't the way to go here for the reasons you describe. I mean, this is basically the reason why there are dependency management scripts/programs for this such as composer, to keep a bundle of different software together from multiple sources and to be able to take updates from each of those sources.

@gusaus You need to consider the intended "target user" also... On the one hand, full stack developers would be quite comfortable with a composer-like package, while your average WordPress user wouldn't touch it. I'm guessing most users of the Open Producer Platform are going to be left of centre, so possibly quite comfortable with doing that - but also possibly not yet.

Other things to consider is existing versus new users - so it's fine to have a platform-style setup for starting from scratch... but an existing WordPress site is going to have a different transitional approach to switching over to this to incorporate these features in a more piecemeal as time/budget permits... which is also going to be a consideration is someone already has hosting and isn't ready to switch to Pantheon (not a big deal so long as everything works without it.)

What comes up most for me here is that what is going to make it simpler for overall development? What is going to consume less time in keeping things updated? ... so that more time can be spent on the planning and actual code writing - not lost to package and dependency maintenance?

For example, to take our current approach with Radio Station. It's a free plugin, and we are going to sell the Pro version with Freemius... usually in the Freemius system you bundle the Pro code inside the "Premium" plugin, and with each update you upload the latest complete premium plugin and their system splits it out into a Free version which you then can upload back to the WordPress repository for the free release. Besides this being quite backwards to our existing workflow, it just consumes too much time in unnecessary steps. So instead, we have the free version of the plugin, with sufficient hooks and filters in it to be extended by Add-ons - and on a technical level the Pro version will itself be an "Add-on" in that it uses these to extend the functionality. This way we can upload and release as many Free OR Pro versions as we like a) without having to update them both each time, and b) while being able to maintain a public and private repository for each.

So with Newspack... cool it does all this stuff (again is not clear as yet what it does as a plugin itself besides adding all the subplugins that do cool stuff and helping configure them) - but you can already install that as a plugin. Basically you can benefit from the curated list of plugins it includes. And with this Platform we can choose and curate our own list of plugins that add the additional functionality that we deem suitable for Open Producer (eg. Radio Station.)

But I also get that at the same time Newspack might include a bunch of things (and seems to) that is deems necessary or useful for it's SaaS product (basically a News-specialized WordPress VIP install) which may not be suitable for Open Producer users... eg. are WooCommerce and WC add-ons relevant? Which may bring up the question of Is there a way of filtering the list of "required" Newspack plugins and installed subplugins and if so that may be all we need to do?

Or in other words we could just create an Add-on style "setup" plugin (similar to Newspack, but not Newspack) that you would install to WordPress first, which would basically be primarily TGM Plugin Activation along with the list of Newspack-required plugins (so we can bypass possible install failures I experienced) - and along with Radio Station and whatever else we decide to include - and then Newspack itself to let the Newspack setup process to complete - and once that is complete, hook back in to a welcome screen for Open Producer Platform. (I think we could include an in-between screen - unlike Newspack - a screen where you can mark which subplugins you're not going to use so they can be removed.)

The tricky part then would be then, this repository would no longer be a fork of WordPress, but for a plugin... but alternatively, create a separate one for the plugin, and just incorporate updates to it in this repository... so you would have the complete platform here as you do which can be pulled as a whole for fresh installs. Or the installer plugin could be used by existing users (or on a fresh install also.) Along with clear instructions at the top of each repository as to these options and when you should do which.

I know I'm rambling a bit but just thinking out loud also to get to a solution... but it seems like quite a feasible option to create such a plugin (could be done in short order) - and we would then be circling back to what (if any) other plugins to include - or recommend... So then I am coming to your question of what we need for an MVP... apart from the scope outlined in this issue, I'm really not clear on what more is needed or what steps we need to complete this? You keep referencing back to comments in this thread but I'm not sure which one's are really relevant here and if you want things to move fast on this point we need some very clear spelling out to get there.

@majick777 Thanks again for that - your input has been extremely helpful!

I wish I was able to sneak in my last comment beforehand #11, because I 'think' some bits would have provided a bit more clarity.

I know you have Newspack a try - I'd like to add you to the Pantheon team (@tonyzeoli is already there) so you can do a fresh install but also use their platform for development. I'm not suggesting they should be the goto host for bespoke development or SaaS - even though they certainly could be an option. The development environment is free and partner agencies have access to some additional tools and partner benefits... anyhow that's another discussion.

Back on topic, I think it helps just to look over the list of plugins when you do a fresh install -
https://newspack.pub/support/plugins/

There are very few plugins that are downloaded and enabled upon installation (the Required Plugins). All the rest are optional. I'd actually have to do a fresh install to remember what additional plugins are downloaded but not enabled upon install. The user has a dashboard/wizard type of thing where they can select which plugins they would like to enable. It's actually quite nice and constantly improving (thank you Automattic!).

As a non-coder, pretty much the target user for Newspack and the project formerly known as OpenProducer... I find the setup and configuration super easy. I also love that there are constant improvements and cutting edge features (Newspack is really a test case for all the stuff they're rolling out into Gutenburg and WordPress.com). I also love that I don't need to invest a dime into product development. As a partner or someone who builds on their product I want to - but users who would rather self host don't really have to pay for product devleopment.

I'm getting rambly again - but just to give you an idea - the following sites are pretty much 100% Newspack - even using their theme as a base -
https://justjazz.tv/
https://angelcityjazz.com/

I developed them on Pantheon (I'm very used to that workflow with Drupal sites) but they're actually hosted on freaking Bluehost. You don't need Wordpress.com - the code that's available for free on their Github works quite well on any host.

All in all - I think we're clear this is doable - we just need to make some internal business and marketing decisions before FundOSS commences in 2 weeks!

@gusaus and @majick777 I can contact the folks from Newspack, but they were very unreceptive to anything radio in the past.

Newspack pulls together the five themes and all the plugins to basically generate a website for news organizations to use to publish content and monetize with Google AdWords.

I just don't see how we can fork this project and maintain it on our own with the idea that we're going to grab new updates from Newspack and roll them into OpenProducer.

Tony, I read your post, but if you can be concise, is the above actually possible? Forking something then pulling new features from the original project and pushing them into the forked project, while ensuring their are no clash or code or features?

@tonyzeoli @majick777 I'm thinking we should decouple the business/partnership or even forking discussions from this issue.

Take a fresh look at the feature list #11

A big reason I decided to jump over from Thunder / Drupal to Newspack / WordPress was you forkers had a stable version of a pretty key component for a Radio Station site. Both projects are well funded (and have a similar focus on publishing), but Newspack had more to offer out of the box and we had plugins (like Radio Station) ready to go.

Newspack pulls together the five themes and all the plugins to basically generate a website for news organizations to use to publish content and monetize with Google AdWords.

@tonyzeoli It sounds like you still haven't tried to install and tested... at least recently.

If you think more about the features and functionality (rather than plugins, modules, or themes), there's really not much difference between a community news org and a community/public radio station. They have similar needs. Below are some of the sites I try to use as a model.

https://www.kcrw.com/
https://www.kexp.org/
https://www.npr.org/
https://www.npr.org/music
https://www.sfjazz.org/
https://livesessions.npr.org/

Keep in mind that my budget and WordPress experience was very limited - the first couple sites built on Newspack (I'm even using the parent Newspack theme as a base) should illustrate what it provides out of the box

https://angelcityjazz.com/
https://justjazz.tv/

Here's what we should determine in this issue.... Does Newspack + Radio Station (as an add-on dependency) provide pretty much all the features/functionality listed in the issue description? #11

Think about that while you do a fresh install of Newspack. Check out and test how Radio Station works when you add to NewsPack https://live-openproducer-platform.pantheonsite.io/

@majick777 I added your netmix email address to the Pantheon team. If you know your way around feel free to create a multisite instance or wipe and do a fresh install on the dev environment.

You too @tonyzeoli - I think that would help you understand the functionality included out of the box.

With regards to following up w/ Newspack... I think there's a big difference between 'can you add my plugin' and 'we want to collaborate or partner on extending your plugin/platform to target a new vertical'. We actually made that pitch to https://www.thunder.org/ and it was well received. I think Newspack/Automattic would be warm to the idea if we were coming to contribute or partner. Extra special points if we can sell them on the idea of calling our plugin/platform Radiopack!

@tonyzeoli @majick777 It would be great to touch base over Slack or phone before anyone reaches out to Newspack. #openproducer in https://opencollective.slack.com/ is a real good room async convo if we can't find a good global time tomorrow.

I should be available anytime after 2pm edt/11am pdt USA

But this is not about WordPress, Drupal, Newspack, or Radio Station. It's about the software development process. It's about forking someone's project - whatever that project is - and believing that you can somehow take their updates and merge them with your own. It doesn't matter whether I install the plugin or not. We need to ANSER THAT QUESTION.

Can you fork a project, take updates from the prior parent, and merge them with your own. Period.

NO ONE HAS ANSWERED THAT QUESTION CONCISELY.

You seem to think that this is possible. I don't think it is. Someone has to confirm it first.

It's like you keep missing the point and thinking that this is just as easy as you say it is. It's not.

Newspack is on its own Git. When someone contributes code to a WordPress project, it gets pushed up into the WordPress repo where the last version is removed and the new version takes it's place. Then everyone sees the new version update in their dashboard and they click to update from the previous to the new.

Once we fork Newspack, it is NO LONGER CONNECTED TO THE CORE PROJECT. You can't just take the update like everyone else. You've forked the project. You now control your version of the code. And, you can't know that Newspack is planning on doing or what code they are going to push. And, once they push it and you try to figure out what changes were made, you have to figure it out, roll it in, and then test it yourself.

But, at the same time, you're writing new code for your version of the plugin. And what if that clashes with whatever they are writing? How are you going to know? They're focused on the news industry and not radio. They're not going to help.

What I'm saying is, forking this project is opening up a can of worms that is very difficult to solve.

The better idea is to just have OpenProducer be a plugin for Newpack that adds features to Newspack, but we don't fork Newspack at all. We leave it as is and build OpenProducer as a Newspack plugin that contains Radio Station and other advancements.

@tonyzeoli Again I agree we shouldnt be looking to fork Newspack plugin, but there isnt anything wrong with having it as part of the Open Producer Platform, along with other plugins. The advantage being the setup configuration wizard process it includes.

@gusaus Can I get a response from (both of) you as regards my proposal to create a simple bundler plugin, to install those list of plugins (call it RadioPack or something else Open Producer related) and then go from there with what else may be needed? Or does someone have a better approach?

@majick777 Okay, so then we include Newspack in the distribution package that installs all the plugins for OpenProducer...that's more like it. Then, anyone can take a Newspack update and we don't have to worry about code clash or whatever. That sounds good to me.

I think Gus just wanted to call the whole thing, "OpenProducer" and that would be the name of the plugin that installs everything. He's asking us if we want to make that part of our Git, so OpenProducer would live on the Netmix Git, be distributed as a WordPress plugin pushed through WordPress.org. He's hoping to get FundOSS to put some dollars into this project as an open-source project only. There would be no PRO version.

@tonyzeoli @majick777 I haven't been able to take a deep dive into the options you're proposing because 1) it's not really related to the MVP (my bad for not spinning off a seperate issue); 2) I'm again new to WordPress so it'll take me a bit to comprehend, let alone discuss options and make recommendations is a clear consise way; 3) I'm aware we're typing from different parts of the world and providing input here in between other high priority projects and commitments; for me I was trying to make sense of all this during my evening and late at night. I'm now delaying my usual morning walk so I can followup up on the most time sensitive issues we need to evalauate and resolve before following up with Newspack.

First off I think we can close out this mega meta discussion if we all can read over the feature list #11 and comment about any features you think are missing. Please note the list has evolved ever since we started the project on Drupal and some of the featue descriptions are obsolete (descriptions lifted from the Drupal projects we were incorporating) or outdated. We can spin up issues to lock down the feature descriptions and other writing/marketing related tasks.

Also note I checked off the Radio box #6 even though not everything listed is complete. We're including Radio Station plugin already, so I think we're already providing all the features stations will need... they can of course soon purchase PRO if they need more.

So for this issue we just need a general agreement that we're including all the key features important to the same group you're focusing Radio Station plugin on. If the list generally looks good, please sign off on it and let's close this issue.

I'll set up an issue for the technical discussion but will just say that we're all in agreement about the genral approach.

I'm giong to followup on the pressing business/marketing stuff in #openproducer channel in https://opencollective.slack.com/ and will ping you both. I don't expect we'll be able to talk in real time, but we should be able to spend 5 minutes here and there whenever we are able.

I'm not going to proof what I just wrote because I'm still without my walk and coffee.

Oh ya - I guess one thing I should point out... just in case you haven't looked at the code https://github.com/OpenProducer/openproducer-platform - we're already including the Newspack dependencies along with their themes (I think we actually just need to include their base theme). What we don't have is the thing that packages everything together..including our specific dependencies. That said, it seems like we'll have it soon!

@gusaus let me try and explain our logic:

  1. Newspack cannot be forked, period. End of story.

  2. We can create a plugin that includes Newspack and all the other dependent plugins and themes and call it OpenProducer. When anyone installs it in WordPress, they get Newspack, all dependent Newspack themes and plugins, Radio Station, and anything else we want to throw in.

  3. By doing number 2, we can include future versions of NewsPack from their core team without having to worry about whether we can merge code or not, every other plugin dependency, and create our own additional plugins to work independently or support Newspack.

So, it's what you wanted to do initially - create a "distribution" package that installs everything. But we don't have to "fork" anything. I think you believe that by forking something, you can still take updates from the software you forked, but you cannot. So, that's a moot point and I don't see any value in discussing any further, because it's really just rehashing the same issue and both Tony and I are saying a firm no to forking Newspack. We can adopt Newspack INTO OpenProducer, but not "fork" it.

As for an Azuracast dependy, because that needs to be installed separately on a server, it can't be included inside the OpenProducer plugin, but once both are installed on a server or servers (for those using WP Engine or other WordPress only hosts), then we could have some kind of set up screen for both when they are installed on the same webserver somewhere or when OpenProducer is installed on WP Engine and Azuracast is installed on Pantheon or something like that.

@gusaus One more analogy I just thought of.

Say you have a house. You make an exact copy of that house, with every single thing that exists inside the house. You plop the exact copy of the house down on another plot of land. Do you really expect the owners of the house you copied to provide the same updates they make to their house? No. They won't. They change their washer and dryers. You don't know they changed it. And, once you think you've figured it out, they change it yet again without telling you. You now have no visibility into the original home's insides and even if you had a map, it would always be after the fact and you couldn't keep up with their updates. Also, you might by your own washer and dryer that work differently then theirs. But they make get a super dope one that you want, but you have to wait to find out what it is until they publish it, then you have to scrambel to figure out if their new washer / dryer will conflict with anything else in your new house that used to be an exact copy, but itsn't anymore.

Again, this is NOT a WordPress thing. It's a software development thing.

@tonyzeoli I thought we'd already determined we want the same thing - I get the issues with forks - can we please now move that part of our discussion here? #5

@tonyzeoli I'm confused by your AzuraCast reference #11 Maybe because of #8?

I thought that would be available as a Radio Station add-on after we're able to scope out the feature and fundraise to build. It's not a requirement for the MVP - that said with AzuraCast and whatever we're going to rename OpenProducer both participating in https://fundoss.org/ there could be some creative ways we can band together to fundraise and build.

I think we have the MVP locked down already - we still need to glue it all together #5 but I think we can shut down this MEGA meta issue