npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@lohro/content-sequence-builder

v1.2.1

Published

An API-based Vue component for planning radio episodes. Visit the [demo page](https://content-sequence-builder.dev.lohro.de/)!

Downloads

10

Readme

Content Sequence Builder

An API-based Vue component for planning radio episodes. Visit the demo page!

Installation

The content sequence builder is available on NPM and can be installed with your favorite package manager.

# npm
npm install --save vue @lohro/content-sequence-builder

# yarn
yarn add vue @lohro/content-sequence-builder

vue is required as peer dependency to avoid bundling it as part of the content sequence builder package.

Usage

Component instantiation

The content sequence builder is instantiated through the ContentSequenceBuilder vue component.

import { ContentSequenceBuilder, de, fixturesAPI } from '@lohro/content-sequence-builder'
import { createApp } from 'vue'

// This only works if you use a bundler that supports loading CSS files
// from JavaScript/TypeScript. Most bundlers do that automatically but if
// you do not use one our yours does not, you need to figure something out :).
import '@lohro/content-sequence-builder/dist/style.css'

// Creates a new Vue App and mounts the ContentSequenceBuilder at its root.
// Somewhere in your HTML you should have a little `<div id="app"></div>`.
const app = createApp(ContentSequenceBuilder, {
  api: fixturesAPI,
  contentSequenceId: 1,
  language: de,
})
app.mount('#app')

Some APIs like the Lohrothek API require some configuration. This is done through the configuration interface of the individual APIs.

API configuration

import { lohrothekAPI } from '@lohro/content-sequence-builder'

// The useAPIConfiguration returns an object which is different for
// each API. The lohrothek API only provides the `apiBaseURL` property.
const { apiBaseUrl } = lohrothekAPI.useAPIConfiguration()

// Most exported configuration parameters will be vue refs so be sure
// to always use `something.value =` for assignments and not just `something =`.
apiBaseUrl.value = `${location.origin}/api`

Bring your own API

The content sequence builder package comes with its own API implementations, but you’re free to bring your own. All that is required is for it to implement the API type found in src/types.ts.

Development

Start working with the fixtures by running:

npm run dev -- --open

You may switch to one of the integrated APIs by selecting it from the API dropdown menu. If you use an external API available through HTTP, make sure that it has proper CORS configuration and will allow requests from your origin (likely something like http://localhost:5173).

If you’re using the lohrothek API with docker compose you can add the following lines to your local .env file:

LOHROTHEK_CORS_ALLOWED_ORIGINS=http://localhost:5173
LOHROTHEK_CORS_ALLOW_CREDENTIALS=True