Home

Awesome

Podlove UI

Mono Repo for all UI Related Podlove Projects

Build Status

Getting Started

For Contribution

  1. Make sure you have Node 10+ and lerna installed
  2. Fork this repository
  3. Run npm install to setup the workspace
  4. Run npm scripts for development (e.g. npm run dev:web-player)

For Usage

This mono repo creates a set of different packages within the @podlove NPM organization. Once released you can use each package by simply installing it as a dependency.

Used Libraries and Frameworks

Note: These are recommended and well supported libraries. The usage within each application/package may vary.

Applications

@podlove/player

Core Podlove Player State Bound Components. Building blocks with state bindings to create the web player

@podlove/web-player

Embedded version of Podlove Player with the following features:

@podlove/subscribe-button

Embedded Subscribe Button with client detection:

Packages

@podlove/build [internal]

Webpack Tooling for all projects. Building blocks for bundling.

@podlove/button-actions

Button actions API, types and events that are used in state and subscribe-button.

@podlove/button-config

Parser for subscribe-button configuration.

@podlove/button-state

Subscribe Button reducers and selectors for creating and maintaining the subscribe-button state.

@podlove/clients

Library containing up to date podcatcher clients and uri schema.

@podlove/components

Shared Representational Podlove Components. Stateless components that dispatch podlove events.

@podlove/player-actions

Player actions API, types and events that are used in state, sagas and player.

@podlove/player-config

Parser for player configuration.

@podlove/player-sagas

Player Side Effects Management, abstracting Player eventing and lifecycle.

@podlove/player-state

Player reducers and selectors for creating and maintaining the player state.

@podlove/utils

Collection of helper utils for dealing with time, transforming chapters according to the Simple Chapters Specification or making requests.

Docs

web-player

Documentation for Podlove Web Player

Build Environment

Used CI: DroneCI with the following pipelines:

Steps:

Releasing

Podlove Web Player follows the git flow convention with support branches. Please read the documentation to follow this pattern if you want to contribute.

To create a release you have to:

  1. Create a release branch from the master or support branch
  2. Run the following lerna command in the release branch: lerna version --no-git-tag-version
  1. Create a PR against master/support branch and merge it if the release/review was successfull
  2. Tag the master/support commit with the release version (e.g. v5.0.2)
  3. Create an integration branch by branching from develop and merge master into the integration branch
  4. Create a PR with develop as the target branch and merge it if the release/review was successfull

Join the conversation

Become a part of the

If you're interested in discussing podcasting topics in general, please visit sendegate.de.

Podlove Docs

Report an issue

If you encounter a specific problem using the Podlove Web Player that you think is a bug, or you see a problem in the documentation, you can report the issue here:
github.com/podlove/ui/issues

Also, if you have ideas for new features for player, please submit them as a Github issue.

Have a look on the Github project to watch the status and progress of your issues:
github.com/podlove/ui/projects

Support

CDN sponsored by

<a href="https://keycdn.com"><img src="https://logos.keycdn.com/keycdn-logo-black.svg" alt="KeyCDN" width="200px"></a>

Cross Browser Testing powered by

<a href="https://www.browserstack.com/"><img src="https://d2ogrdw2mh0rsl.cloudfront.net/production/images/static/header/header-logo.svg" alt="Bowserstack Logo" width="300px"> </a>