Module:Infobox

--               ,---,              ,--.'|            \  ; |,`--.' |              .--.,             ,---,                           ,-+-. ;  , ||   ,---.      ,---.'|         ,--, |  | :             `--" |   :  :      ,---, ,--.'  \   ,---.  ,---.'|      ,---.               ,--.'|'   |  ;|  '   ,'\     |   | :       ,'_ /| :  : '                  :   |  '  ,-+-. /  ||  | /\/  '   ,'\ |   | :     '   ,'\ ,--,  ,--,  '   | :  | :  |,'   | |: : /   ,'   ||  ' | |  . . |  | :    /    /  |     |   |  ||   | /  | ||  : :/|'   | |: :|   : '  |'   | |: : \  \.' /   '---'                       `'                            `'                           `--'              `-''                          Replacement for old the Wikitext infoboxes copied straight from Scratch Wiki.  Uses Capiunto, a MediaWiki extension to add basic infoboxes to MediaWiki.
 * | / | |  ||.   ; ,. :  ,--.__| |,'_ /| :  . | '  | |     /     \      '   '  ;|   |  ,"' |:  | |-,.   ; ,. ::     |,-..   ; ,. :'  \/  / ;
 * | / | |  ||.   ; ,. :  ,--.__| |,'_ /| :  . | '  | |     /     \      '   '  ;|   |  ,"' |:  | |-,.   ; ,. ::     |,-..   ; ,. :'  \/  / ;
 * . | ; |--' '   | .; :.   '  /  ||  | ' |  | | '  : |__ .    ' / |     '   :  ;|   | |  | ||  |  .''   | .; :|   |  / :'   | .; :  \  ;  ;
 * : | |,    |   :    |'   ; |:  |:  | : ;  ; | |  | '.'|'   ;   /|___  |   |  '|   | |  |/ '  : '  |   :    |'   : |: ||   :    | / \  \  \
 * : ' |/      \   \  / |   | '/  ''  :  `--'   \;  :    ;'   |  / /  .\ '   :  ||   | |--'  |  | |   \   \  / |   | '/ : \   \  /./__;   ;  \

local capiunto = require 'capiunto'

local p = {}

function p.main(frame) local args = frame:getParent.args local headerStyle if args.headerstyle and args.headerstyle ~= '' then headerStyle = string.format('background-color:%s;', args.headerstyle) else headerStyle = 'background-color:grey;' end local retval = capiunto.create( {		title = args.title,		headerStyle = headerStyle, 	} ) :addImage( args.image, args.caption ) :addRow( 'Foo', args.foo ) :addHeader( 'A header between the data rows' ) :addRow( 'Bar', args.bar ) return retval end

return p