Transport Plugin

This plugin provides interactive access to remote services that can read content you drop and create from it useful pages that appear ready to be saved or used at one's discretion. github

This plugin, type: transport, creates a drop zone for web content to be run through a remote web content to wiki page json converter. Its markup consists of the address of the remote service.

POST http://fed.wiki.org:4010/image

The Transport plugin posts a json document to the remote service with each drop. The document contains information retrieved from the drop event's dataTransfer object.

{ "text": getData("text"), "html": getData("text/html") }

The remote service is expected to reply with valid federated wiki page json. Conventionally this will be decorated with provenance details when they can be inferred. The returned page will be added to the lineup but not saved until forked or plundered for content.

# Installation

Currently the plugin is not part of the default installation and needs to be installed using the method described in the Maintaining a Custom Wiki page. in my case I have forked the wiki Github project to our ViralAcademy account - github

If you fork the wiki github project and modify package.json to incude the following line:

"wiki-plugin-transport": "wardcunningham/wiki-plugin-transport",

then you can simply call:

npm install -g git://github.com/ViralAcademy/wiki.git

and npm will install your customised version of Fedwiki on your current system. The -g flag makes the wiki available anywhere from the shell prompt.

Here we list issues and errors encountered while trying to install plugins for Fedwiki:

# History

The Transport Plugin is the name given to the plugin idea initially described here:

A generic REST Plugin that enables simple and flexible integration with Federation REST Services.

It currently enables configuration of the web service (base url only for now), and the ability to drag-drop a url onto the plugin which gets passed onto the web service in the form of a "drop" parameter.

Transporters are public services that transform available content into federated wiki pages.

We experimented with generating pages from remote servers that could produce correct json but were not otherwise wiki servers.

We explored several metaphors from which to draw names for this and related operations which we felt could become an important part of federation activities. Immigration related terminology seemed fruitful and topical. Using php to enter wiki reminded us of boats crossing the Mediterranean.

The metaphor morphed into StarTrek terms when we spoke of entering the federation. It was completed with a function to 'beam up' a page leaving it in a transparent form (ghost page) in the lineup.

beam = (item) -> $.getJSON item.text, (page) -> wiki.showResult wiki.newPage(page)

We explored some problems that arise when the story items don't have ids. We should detect and correct this situation. github

A few months pass.

I have renewed interest in the project having offered it as a solution to two needs identified by Mike Caulfield.

■ Methodical tracking of ip for open ed resources.

■ Transcluding large or detailed images.

Paul and I accept and publish the core javascript changes that has plugins adding new content to the lineup.

I merge Francesco's Transport plugin drop logic and beef it up for various image drops.

I write an Image Transporter in ruby/sinatra and try all kinds of drops from all kinds of photo sites.

I use local wiki to author the Image Transporter drag and drop interface pages in the transporter project itself.

wiki -d . -p 3030

I build the catalog that will organize the proliferation of transporters. See Transporter Roster

After a few upgrades I can run the image workflow in public with elements served from asia and my basement.

to do

Have a go at porting paragraphs.

Package page and federate libraries.

Write a guide to writing Transporters.

Create npm @ward/wiki for experimenters.

# Related

The tangled-plugin is a plugin that help weave the tangled web. It is an authoring tool for Federation REST Services.

Here we gather some links and ideas related to using data in the javascript centred world of the Federation:

The drag and drop features of federated wiki fully exploit newer capabilities of the browser and result in excellent flow for expert users on laptops and desktops. In thinking about the Basic Data Editor one helpful idea is to consider a drag/dropless factory, and what advantages that might provide certain users.