A web development runtime platform based on the wiki paradigm

50 %
50 %
Information about A web development runtime platform based on the wiki paradigm
Technology

Published on February 14, 2014

Author: xwiki

Source: slideshare.net

Description

When developing a web application, the traditional way is to develop the application from scratch using a general purpose language such as PHP, Grails, Play, Java/JSP, etc. This presentation shows that a next generation wiki (examples based on XWiki: http://xwiki.org) can be used as a web development platform to develop applications on top of it, providing a strong infrastructure scaffolding to building web applications.

XWiki A web development runtime platform based on the wiki paradigm Vincent Massol, February 2014

Agenda • Developing on XWiki • A runtime platform • Usages • QA

Developing on XWiki Copyright (c) Vincent Massol - 2012

Metadata! Demo • Ability to associate arbitrary 
 data to any wiki page • 1: Create metadata definition in a wiki page (a.k.a xclass) • 2: Use it in wiki pages (a.k.a xobjects) • 3: Use scripting in wiki pages to access it • Allows application development Copyright (c) Vincent Massol - 2012

Skinning & Theming Copyright (c) Vincent Massol - 2012

Skin Extensions CSS JS == Grease Monkey Copyright (c) Vincent Massol - 2012

Scripting in Pages (1/2) {{groovy}} import groovy.json.* ! def url = "https://api.github.com/users/xwiki/repos".toURL().text def root = new JsonSlurper().parseText(url) ! println "|=Project|=Description|=Use Wiki?|=Use Issues?" root.each() { repo -> println "|[[${repo.name}>>http://github.com/xwiki/$ {repo.name}]]|${repo.description}|${repo.has_wiki}|$ {repo.has_issues}" } {{/groovy}} Copyright (c) Vincent Massol - 2012

Scripting in Pages (2/2) {{velocity}} #set ($xwql = "where doc.content like '%welcome%'") #foreach ($item in $services.query.xwql($xwql).execute()) #if ($request.confirm == "1") #set ($itemDoc = $xwiki.getDocument($item)) $itemDoc.setContent($itemDoc.getContent().replaceAll( "welcome", "bienvenue")) $itemDoc.save("Replaced bienvenue") * [[$item>>$item]] replaced! #else * [[$item>>$item]] #end #end ! [[Replace "welcome" by "bienvenue">>?confirm=1]] {{/velocity}} Copyright (c) Vincent Massol - 2012

Components in Java @Role! public interface Macro! {!     List<Block> execute();! } @Component! @Named("message")! @Singleton! public class MessageMacro implements Macro! {!    @Inject!    private Execution execution;! ! !    @Inject!    @Named("box")!    private Macro boxMacro;!    public List<Block> execute()!    {!       ...!    }! } META-INF/components.txt org.xwiki.rendering.internal.macro.message.MessageMacro + Wiki Components! Copyright (c) Vincent Massol - 2012

Extensions Copyright (c) Vincent Massol - 2012

A runtime platform Copyright (c) Vincent Massol - 2012

Building an Application Runtime Traditional way Copyright (c) Vincent Massol - 2012

Building an Application Runtime Runtime XWiki way - Morphing! Copyright (c) Vincent Massol - 2012

XWiki Platform ... for developing (collaborative) web applications Copyright (c) Vincent Massol - 2012

Usages Copyright (c) Vincent Massol - 2012

Multiple Usages Copyright (c) Vincent Massol - 2012

http://www.xwiki.org/xwiki/bin/view/Main/Screenshots Copyright (c) Vincent Massol - 2012

Long tail of Apps Excel of the Web Copyright (c) Vincent Massol - 2012

Pros • Iterative, Need-based development • Continuous Delivery • Work collaboratively on creating applications • Designers can style while devs create logic • Works from day one, immediate feedbacks • Open source and community-based Copyright (c) Vincent Massol - 2012

Q&A Me Copyright (c) Vincent Massol - 2012

Vincent Massol vincent@xwiki.com skype: vmassol http://about.me/vmassol ! http://xwiki.org http://xwiki.com Copyright (c) Vincent Massol - 2012

#set presentations

Add a comment

Related presentations

Related pages

FOSDEM 2014 - A web development runtime platform based on ...

A web development runtime platform based on the wiki paradigm; A web development runtime platform based on the ... adhoc web application development. ...
Read more

A web development runtime platform based on the wiki ...

1. XWiki A web development runtime platform based on the wiki paradigm Vincent Massol, February 2014 ; 2.
Read more

XWiki Presentation Ideas (Drafts.PresentationIdeas) - XWiki

A web development runtime platform based on the wiki paradigm . Proposed by Vincent Massol Proposed duration 1 hour Proposed audience Novice Presented
Read more

Weni Widi Wiki

A web development runtime platform based on the wiki paradigm ... considered a development platform ... used as a web development platform to ...
Read more

Weni Widi Wiki

FOSDEM 2014. Last modified by ... A web development runtime platform based on the wiki paradigm by me. ... A web dev runtime for writing web apps @ FOSDEM ...
Read more

FOSDEM 2014 - Wikis devroom

5 Unexpected usages of wikis: A web development runtime platform based on the wiki ... A web development runtime platform based on the wiki paradigm ...
Read more

A Widget Based Web Platform - Technology - documents

A Widget Based Web Platform; ... Wish List Development Wishes • One modular codebase ... A web development runtime platform based on the wiki paradigm.
Read more

Presentation Skin (Presentation.PresentationSkin) - XWiki

Check out this Presentation about XWiki as web development platform to see ... platform runtime based on the wiki paradigm ... * Development Capabilities ...
Read more