FrontPage RecentChanges AboutWikiFeatures WikiNode

WikiScript

User-editable program code in pages.


Instead of making the whole WikiEngine open for editing and thus harmful injection of malicious code, data corruption and server compromise like a CommunityProgrammableWiki, an engine could support an interpreted language to run in a sandbox. So people could add small programs into pages, without being able to do any harm to the server or installation at whole.

Interpreted languages

Preferably a language like JavaScript should be used, as users were familar with it. However, as there is not yet a JavaScript interpreter available for Perl, Python or PHP, other alternatives must be considered.

Scheme interpreters are available.

There is a Google Summer of Code project for making a sandboxed python interpreter.

Sandbox-able languages

A list of languages that could be possibly sandboxed and used to run user-submitted scripts:

API

With a well-defined interface to limited database access features, it was possible to have users code useful extensions like a specialized search function.

An API would then also allow to interchange code snippets between multiple engines, if they choosed a compatible language. This then also helped the AutomaticFeatureInstall idea (I’ve already mentioned the whole thing earlier there).

Implementations

statuswiki engines
Implemented -
Developing ErfurtWiki
Intend to Develop -
Considering -
Rejected -

Activity

MarioSalzer: I’m currently working on a JS-like interpreter for PHP, which looks promisingly easy to port to Perl then. Eventually it’s too early to announce it, but I can at least give out the idea right now ;)

If it works, I will at least port it to PhpWiki and Wakka.

Problems

See also

Contributors

MarioSalzer


Stop, No! Wiki:JavaScriptEnabledWiki is about client side JavaScript; while this page discusses server-side scripting with a sandboxed language (with preferrably JS syntax).

CategoryFeature