TWiki Application Package How-to Discussion
DifferenceBetweenAddOnAndPlugin had some interesting discussions on the differences of
TWikiExtensions. The
AddOnPackages can be add-on utilities or
TWikiApplications, which is a confusing mix. Applications need to be organized better, we currently have
Sandbox sample applications, apps listed in
TWikiApplications, apps packaged as
AddOnPackages in the Plugins web, and historically also as
TWikiAddOnProducts in the Codev web.
I would like to focus this topic specifically on TWiki Applications, not on other types of TWiki extensions.
--
PeterThoeny - 11 Apr 2005
What is a TWiki Application
We need first to define what a TWiki Application is, and differentiate it from other
TWikiExtensions:
A TWiki Application:
- Provides a new functionality to perform some tasks
- Consists typically of a set of TWiki topics with TWiki code (TWikiVariables, TWikiForms, etc), configuration and documentation
- People with moderate skill sets (e.g. non-programmers) can create applications
- It might depend on some Plugins
- Is conveniently packaged and easy to install
- End users (e.g. not administrators) can install applications
- Examples in Sandbox web: MeetingMinutes, SearchBookTitles, ChangeRequest, DashboardWithDynamicInclude, SimpleFAQ, DiscussionForum, HeyHoPress, IFrameExample
Please modify above list as you see fit.
--
PeterThoeny - 11 Apr 2005
I also visualize independent applications which embed wiki technology and use it as front-end.
--
VinodKulkarni - 13 Apr 2005
Discussions on business case
Plugins have been a great driver of TWiki's popularity. We can do the same for
TWikiApplications. I see TWiki Applications as a key to further accelerate the deployment of TWiki in our key markets.
Vision: Let's build the right infrastructure to get a thriving bazar where users and developers contribute and share their applications. A collection of some good TWiki applications can be a key differentiator to other Wikis, as we have seen with the Plugins.
Here is a controversial thought: TWiki's Perl code (in core, Plugins and Contrib modules) fall under the GPL. A TWiki application is TWiki "code" located in topics and could potentially be released under a different license. This could be a way to
GettingPaidToDevelopTWiki and build more momentum for TWiki.
Vision: TWiki.org has the infrastructure to distribute TWiki applications for free or for a fee.
--
PeterThoeny - 11 Apr 2005
This is awesome, need time to think on this.
--
BruceRProchnau - 11 Apr 2005
Quote:
"TWiki's Perl code (in core, Plugins and Contrib modules) fall under the GPL. A TWiki application is TWiki "code" located in topics and could potentially be released under a different license. This could be a way to
GettingPaidToDevelopTWiki and build more momentum for TWiki."
Could you elaborate on this Peter? This, as you said, could be a way for renumeration and build more momentum and I feel should be explored further and defined more...
--
BruceRProchnau - 12 Apr 2005
Discussions on how to package applications
Obviously it should be done consistently with other
TWikiApplications, e.g. with:
Thoughts?
--
PeterThoeny - 11 Apr 2005
You are thinking of TWiki as a basic technology on which application packages are layered. Consider turning this on it's head, and consider the problem of packaging TWiki such that it is tuned for a specific application (c.f. Bruce's blogging twiki).
This is discussed further on TWikiDistributionHowToDiscussion --TW
--
CrawfordCurrie - 11 Apr 2005
Peter, thanks for creating a discussion point for packaging examples and contributions of the key TWiki feature:
TWikiApplications. The examples you have in the Sandbox are great guides on building one's own
TWikiApplications. If we can just figure out a way of teaching the how-to...
--
ThomasWeigert - 11 Apr 2005
In my working with
TWikiApplications, I don't see a one-packaging-fits-all solution. Some
TWikiApplications seem best packaged as a set of topics to be added to a web, others are best suited for packaging as a complete, stand-alone web, and others still seem best suited for packaging as complete distributions. Perhaps this reflects the relative immaturity of our articulation of what
TWikiApplications are and perhaps we need some finer-grain terminology to distinquish these types of
TWikiApplications.
--
LynnwoodBrown - 12 Apr 2005
- TWiki Basic ie: twiki3
- TWiki Commercial Edition
- TWiki Enterprise edition
- List of available plugins that work and user chooses the ones wanted.
--
BruceRProchnau - 12 Apr 2005
Hi,
We need to modularize. Then...
I separated script in the field of the
TWikiRegistration for an independent topic that could better be worked and reused in TWiki Applications. See the
ScriptMakeWikiWord.
See it working hire:
gnosislivre.org/.../TWiki/TWikiRegistration
-
gnosislivre.org/.../TWiki/ScriptMakeWikiWord
--
AurelioAHeckert - 14 Apr 2005
One year later, time for getting the ball rolling...
This was briefly discussed in the
EdinburghReleaseMeeting2006x05x08.
The desired outcome at the meeting was to compile the requirements and needs.
We have a pretty good handle on packaging plugins, skins, add-ons, and now contribs. We do not have a good handle on packaging
TWikiApplications and
ApplicationCompontents. We have many TWiki apps and app components around on TWiki.org:
- some in sandbox web as live apps
- some in codev
- some packaged as add-ons (recommended for long time)
- some as contribs lately
- some app components are burried in the support web answers
So overall, we have a bit a messy situation. What I envision is a good way of packaging, presenting, navigating to, searching for, and installing TWiki applications and components.
What are apps:
- a set of topics that, combined, perform an application function
- they might have dependencies on plugins, skins, add-ons, contribs,
- and also on other TWiki apps, or app components
- example: bugs database, twiki installation dir, inventory system
What are application components:
- like a TWiki app, e.g. set of topics that can perform something, but do not represent a ready made application
- they also might have dependencies
- examples: tabs for browsing, selectors, ajax components, etc
So, we need to think how we can create a system that supports this. This is the killer app for the TWiki project. If we have a solid infrastructure that invites people to participate we will get a big headstart over other wikis. And it will help the userbase (includes us) a lot.
It needs to be dead simple to package and deploy the apps. To package, one might simply put all topics together, or one might specify that the installer asks for a destination web, for a base topic name (think
MeetingMinutes deployed as a FooBarMeetingMinutes app). As an idea, it could be all web-based: Write a topic that is the manifest, press a build button to download a zip, which can be uploaded to the Plugins web. So, we need:
- an easy web-based way to package a set of topics (with manifest topic?)
- an easy way to generate the package
- upload topic to plugins web
- an easy way to do a web-based install (without the need to involve an administrator)
This could be done with a plugin, such as an
AppPublisherPlugin. Or with a
TWikiExtensionInstaller that goes beyond TWiki apps and components.
Taxonomy is another question. We need to clearly distinguish between contribs (for admins) and apps + components (for knowledge workers). And it must be easy to browse & search apps and components.
--
PeterThoeny - 09 May 2006
There are many
WikiChampions out there who create
TWikiApplications for in-house use. They need components. They build everything from scratch. We can build up a new
TWikiAppCommunity where wiki champions can share their apps and components. Create a marketplace.
--
PeterThoeny - 11 May 2006
I would really like that, and it is exactly what i hoped the ShowcaseWeb would be. I would love to see widgets and cookbooks from other people, since my technical skills are too limited to build anything that requires access to e.g. the templates without detailed desciptions...
For example, currently I'm designing a web for a group that does NOT want to use the edit screen. They use it for making meeting minutes, action tracking, sharing news and events, discussions. A lot can be done using default possibilities of
CommentPlugin,
ActionTrackerPlugin,
DateFieldPlugin, etc. But I get stuck when I want to use the calendar from
JSCalendarContrib to populate a HTML form - no idea where to put what javascript!
So maybe the sharing of
TwikiWidgets could go hand in hand with the creation of
ApplicationCookbooks that describe the widgets in detail.
I am excited already...
--
JosMaccabiani - 11 May 2006
I'd like to throw in here, in support for better definition and navigation. As a user and unix admin, all these words are the same - plugin, app, contrib, extension, addon, whatever - my head hurts - and when I'm looking for "stuff" to help me achieve something I'll look in one or two places, and miss the others. The plugin web has the most listed in one place so I've been inclined to miss simpler and more fitting solutions like the meeting minutes app. Add to that the difficulty of seeing (knowing) what a plugin does unless it's installed or has a screen shot.
Typically I'll spend a whole morning looking for something, perhaps in the wrong places, and then an hour implementing and testing. That's a substantial cost that we can reduce by the use of a few lines of text somewhere prominent, and maybe cross-references for the lexically challenged.
At the same time I must say that the little apps I've found have saved my bacon countless times, a big thanks to those who took the time to put up demos.
--
SueBlake - 12 May 2006
Better navigation is a good point. Can be done with user focused navigation in the Plugins home, such as "for administrators" section, "for wiki champions & users" section etc.
The template for the TWiki app intro topic needs to be defined in a way so that it describes nicely what it is for & what it does, possibly with screenshots. And also link to related apps & components.
--
PeterThoeny - 12 May 2006
Sue also asked for better definitions of things (above) and for better documentation elsewhere. Better navigation is necessary but not sufficient. I'm sure she'd rather spend 30 minutes getting to something she doesn't understand than a whole morning, but in the end if it's not written clearly it's not going to be of much use.
--
MeredithLesly - 15 May 2006
Jos, hope your voice added to mine and others makes a
Showcase web happen. There was a moderately recent
discussion
in #twiki about this as well.
--
MeredithLesly - 15 May 2006
This will be realized in a separate web named
Apps, see
TWikiOrgDocWork2006.
--
PeterThoeny - 21 Sep 2006