The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Rest::HtmlVis - Rest API visualizer in HTML

SYNOPSIS

Transform perl hash to html. Each key in perl hash is transormed to the piece of html, js and css which are include in main html.

Example:

use Rest::HtmlVis;

my $htmlvis = Rest::HtmlVis->new({
	events => Rest::HtmlVis::Events
});

$htmlvis->html({

	events => [
	],

	links => {
		rel => 'root',
		href => /,
		name => Root resource
	}

	form => {
		GET => {
			from => {
				type => 'time',
				default => time(),
			}
		},
		POST => {
			DATA => {
				type => "text"
				temperature => 25
			},

		}
	}
});

HtmlVis has default blocks that are show everytime:

These blocks can be rewrite when the base or content key is set in constructor params.

SUBROUTINES/METHODS

new( params )

Create new htmlvis object. You have to specify params for keys that should be transformed.

params

Define keys in input hash and library that manage this key.

Example:

{ events => Rest::HtmlVis::Events }   

Third-party js library are primary mapped to /static URL. You have to manage this url by your http server and map this url to share directory. For example in Plack:

use File::ShareDir;
my $share = File::ShareDir::dist_dir('Rest-HtmlVis') || "../Rest-HtmlVis/share/";
mount "/static" => Plack::App::File->new(root => $share);

html( hash_struct )

Convert input hash struct to html. Return html string.

TUTORIAL

http://psgirestapi.dovrtel.cz/

AUTHOR

Václav Dovrtěl <vaclav.dovrtel@gmail.com>

BUGS

Please report any bugs or feature requests to github repository.

ACKNOWLEDGEMENTS

Inspired by https://github.com/towhans/hochschober

COPYRIGHT

Copyright 2015- Václav Dovrtěl

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.