Giter VIP home page Giter VIP logo

eventbadge's Introduction

Badge printing script for eventbrite events

Me wearing a badge

Polls the eventbrite API for new checkins. When a person checks in for the first time, creates a PDF of a name badge, and prints it on a locally attached Brother QL-570 printer.

Note that Eventbrite has rate limits on the API. Be sure that the limit is sufficient for your needs. The app will exit if it hits the rate limit.

To run:

  1. Clone
  2. npm install
  3. Create a .env file or set appropriate env vars (see below)
  4. Make sure printer is turned on, plugged in, and is stocked with labels
  5. Run npm start

Config

Configure the app via env vars as follows:

  • IPP_PRINTER_URL: IPP URL for the printer. Can be discovered by running lpstat -p -d. Append the printer name to ipp://localhost/printers/.
  • EB_ORGANIZER_ID: Eventbrite organizer ID. Can be discovered by following the 'View organizer profile' link on any of your public event pages
  • EB_EVENT_ID: (optional) Eventbrite event ID. If not provided, will use the next upcoming event organised by you. Generally better not to set this unless you have multiple events starting at the same time.
  • EB_OAUTH_TOKEN: Eventbrite Oauth token
  • EVENT_NAME (optional): Name of event. If omitted, the event name from Eventbrite will be used
  • DEBUG (optional): Configuration for the debug node module. To see all debug output, set to *. If not set the app will produce no output.
  • PORT TCP port on which to run a web server for status dashboard (default 3006)

CUPS

This app requires a Mac running CUPS. Your machine probably already is, but you might need to enable the web UI:

sudo cupsctl WebInterface=yes

Web server

The app creates a web server which displays the guestlist and current checkin status of each person, which is updated in real time using Server-sent events when people check in. As a fun extra it also greets each person with a random greeting.

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.