GithubHelp home page GithubHelp logo

info-beamer / package-33c3 Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 2.0 812 KB

The source code for the info beamer screens running at 33c3 in the halls and on all venue screens.

Home Page: https://info-beamer.com/hosted

License: Other

Lua 11.41% Python 88.59%
info-beamer-hosted 33c3

package-33c3's Introduction

The info-beamer hosted package running at 33c3

For 33c3 I've developed a new approach to scheduling and layout. Last year's version uses a mostly fixed layout of scroller, main content and an optional sidebar. This version is more flexible: Basically you can define tiles with changing sizes that show the various content modules available. Hiding a scroller can for example easily be done by moving the scroller tile out of the screen and resizing the main content tile. All content is scheduled with a fixed duration. Multiple devices using the same schedule will show the same tiles at the same time. But this also means that it is not possible to have content of variable duration. So the schedule is pretty rigid.

While everything is packaged as an info-beamer hosted package and the twitter, frab and scroller sub nodes can be easily configured from the hosted interface, the main schedule configuration is a bit clunky. For that reason there's a configuration tools in the config subdirectory which uses a custom file format to make it easier to schedule content.

In the future a way to configure such packages from within the info-beamer hosted configuration interface will be developed. Stay tuned...

Installation

The package can easily be installed within hosted by clicking this button:

Import

Alternatively you can manually import the package from

https://github.com/info-beamer/package-33c3

Configuration

Configuration can mostly be done within the hosted interface. For scheduling you can adapt the examples in the tools directory.

Make sure to change the setup_id value within those files to match your ids.

Within the area definitions you can create named areas. These areas can then be used in the schedule definition to move content around.

Scheduling is done by adding multiple lines. Each line starts with a duration in seconds. Using a zero here will fold the line with the last line with a non-zero duration. At runtime a random element from the folded lines will be selected.

Multiple tracks can be defined by vertically aligning playlist item definitions.

A playlist item definition looks like this:

frab(info_bar,{"mode":"info_bar"})

In this example frab is the name of the asset shown. It can either be a direct subdirectory or a normal asset like images/videos. Subdirectories must follow the "module" api to be supported. You can have a look at twitter/tile.lua to see how that works.

In the above example info_bar references an area defined earlier within the configuration.

The optional json value, in that case {"mode":"info_bar"} will be available to the used module (in that case frab) as the custom value passed to the task function.

Once you have a complete schedule defined, you can push that schedule to info-beamer hosted by calling the tools/config program with your schedule as first argument. Make sure to set the API_KEY environment variable to your info-beamer API key you can find in your account page.

Potentially useful information

Future plans and documentation

The code itself isn't documented, so it might be a bit difficult to follow. I tried to make everything as clear as possible but this still isn't a substitute for proper documentation. These congress packages are always a way to play with new ideas without really knowing if they work out in the end. It seems like this year's version worked pretty well, so I'll probably further develop the approach taken in this package so it will end up being fully supported and documented. But that might take some time.

Getting all of this to run in the current state might be a bit complicated. But it should work. If you need help for your conference, please get in contact.

Adding more content

This package can be easily extended by adding sub packages and referencing them from the schedule. During 33c3 this approach was used for the user content that was being uploaded to 33c3.infobeamer.com. This custom CMS exported its content as an info-beamer hosted package that can added as a child package this this package. It can then be referenced from the schedule. During 33c3 the sub package was added in the 33c3-usercontent folder. You can still see that in the config examples in the tools directory.

sub packages

package-33c3's People

Contributors

dividuum avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.