[InterWikiSoftware:WikiGateway]
WikiGateway is a library of functions which allows you to act as a client to a wiki website, executing operations like getPage, putPage, and getRecentChanges. WikiGateway translates your requests into the idiosyncratic HTML form interfaces of various popular wiki servers. Basically, it does Wiki I/O and import/export.
It can be used either as a Perl module or as a web service providing XmlRpcToWiki.
Currently it only works with UseMod and MoinMoin, but contributions to make it work with other wikis are welcome.
Potential applications
- Movement of content between different wikis
- RSS export & RSS aggregators
- MeatBall:UnifiedRecentChanges
- MeatBall:FilteredRecentChanges, MeatBall:SubscribedChanges, and similar wiki features (which can now be implemented on the client side rather than as part of the wiki server's code)
- MeatBall:PersonalPrivateWiki and MeatBall:PersonalPublicWiki
- MeatBall:WikiClient (and WikiServer)
- Things like MeatBall:TouchGraphWikiBrowser.
- MeatBall:RefactoringBrowser
- WikiWindow
- Decentralization of large, resource-bound projects like WikiPedia
See [InterWikiSoftware:WikiGatewayMotivation] for motivation, and [InterWikiSoftware:WikiGatewayGeneralDiscussion] for discussion, including security implications.
Present Work
Email Lists
For general discussion of InterWiki stuff:
For users of WikiGateway:
Testing
LionKimbro is helping BayleShanks test his system, by running it himself, and trying it out from different systems.
Please join us!
Atom
WikiGateway partially supports Atom. That is, it allows a third party to set up a gateway server which effectively allows users to read and modify a wiki via the Atom protocol. All without touching the code of the WikiEngine or even having access to its server.
See [InterWikiSoftware:AtomGateway] for details. See [AtomWiki:AtomWikiGateway] for a demo.
Command-line wiki client
There is a command-line frontend to WikiGateway in progress. Actually, it seems to work, but unit tests and documentation haven't been written yet.
Synopsis:
wikiclient --type=usemod1 read MeatBall:SandBox
wikiclient --type=usemod1 read http://meatballwiki.org/wiki:SandBox
wikiclient --type=usemod1 write http://interwiki.sourceforge.net/cgi-bin/wiki.pl:SandBox
wikiclient --type=usemod1 rc MeatBall
wikiclient --type=usemod1 allpages http://interwiki.sourceforge.net/cgi-bin/wiki.pl
Information to be read/written is read from STDIN/printed to STDOUT. Note that InterMap monikers can be used as shortcuts for URLs. An optional UseMod style InterMap file is needed for this.
Text on this page above here is PrimarilyPublicDomain
CategorySyndication CategoryInterCommunity CategoryWikiTechnology