Skip to content
Robert de Forest edited this page Oct 13, 2022 · 6 revisions

Welcome to the IPT wiki!

IPT is a collection of tools for fetching, normalizing and publishing real-world event information, such as when/where a party was/is/will be.

Design compromise(s)

As of version 0.0 the tools are designed to operate on discrete objects rather than processing streams as they come in. In the future this should be changed for future-proofing's sake, but for now getting something out the door is more important.

Dependencies

  • Schema.org, especially Event.
  • Some graph database, not yet chosen
  • NodeJS and CoffeeScript
  • Experimental 'fetch()' support added to NodeJS in v17.5.0.
    • Notably, the 'fetch()' in v18.3.0 got a 'Forbidden' error from the San Diego Reader URL. v18.10.0 works.

Components

  • Configuration manager

    • CRUD for
      • admin info (users, authz, authn, etc.)
      • event sources
      • aggregations/associations
      • engine preferences (pull frequency, expiration policies, etc)
  • Fetcher

    • Maps a source of events and transformation information to the events it produces
    • Consumes
      • a URL
      • a transformer
    • Produces
      • normalized event data
  • Transformer

    • Maps raw data to event(s)
    • Consumes
      • event data
      • transformation descriptions
    • Produces
      • Events
  • Engine

    • Mechanism for running processes
  • Front end

    • UI for Configuration Manager and start/stop/restart of persistent processes

Clone this wiki locally