NAME

WWW::Garden::Design - Flower Database, Search Engine and Garden Design

Synopsis

The Search Engine is started by the Mojolicious command scripts/start.sh:

#!/bin/bash

cp /dev/null log/development.log

scripts/flowers daemon -clients 2 -listen http://*:3008 &

Which runs scripts/hypnotoad.pl:

#!/usr/bin/env perl

use strict;
use warnings;

use FindBin;
BEGIN { unshift @INC, "$FindBin::Bin/../lib" }

# Start command line interface for application
require Mojolicious::Commands;
Mojolicious::Commands->start_app('WWW::Garden::Design');

Description

An article about the package is on-line.

WWW::Garden::Design provides:

o A Flower Database stored in CSV files

These are used for bootstrapping the system into the SQLite database (below).

o An Import Package

This reads the CSV files and populates the Flower Database.

o A Flower Database managed by SQLite

For testing, a copy ships in data/flowers.sqlite.

o An Export Package

There are a number of simple Perl scripts involved, and some bash scripts to tie them together.

They generate:

o A web page for every flower

These are pointed to be clickable thumbnails on the 'Flower Catalog' (next) and the 'Garden Layouts' (below).

These pages consist of a set of details per flower:

o Scientific name
o Common name
o Aliases
o Attributes

Details (so far) for: native, habit, edibleness and sub tolerance.

o A set of images
o A set of notes
o A set of URLs
o The 'Flower Catalog' as an HTML table

This can be generated as a stand-alone page, or as a HTML table to be embedded in any web page. Mine is online.

Each row in the table displays:

o A native (to Australia) flag (Yes or No)
o The Scientific name
o The Common name

Actually, I've fiddled some of these to make flowers which have significantly different scientific names end up on successive rows of the table. Likewise, flowers with very similar names are forced to appear together in the table.

o A list of the flower's aliases

Search for 'pansy' to see a ridiculous list as a sample.

o A clickable thumbnail

Clicking opens up, in a new browser tab, a page dedicated to the flower whose thumbnail was clciked.

o 'Garden Layouts' as SVG files

One SVG file is created for each of your gardens.

See my front garden layout and back garden layout.

o A set of updated CSV files

For when you update the database either via the Search Engine or otherwise.

o A Search Engine

This is a Mojolicious-based program.

Distributions

This module is available as a Unix-style distro (*.tgz).

See https://savage.net.au/Perl-modules/html/installing-a-module.html for help on unpacking and installing distros.

Installation

Install WWW::Garden::Design as you would any Perl module:

Run:

cpanm WWW::Garden::Design

or run:

sudo cpan WWW::Garden::Design

perl Makefile.PL
make (or dmake or nmake)
make test
make install

References

HumaneJS - A simple, modern, browser notification system.

Machine-Readable Change Log

The file Changes was converted into Changelog.ini by Module::Metadata::Changes.

Version Numbers

Version numbers < 1.00 represent development versions. From 1.00 up, they are production versions.

Repository

https://github.com/ronsavage/WWW-Garden-Design

Support

Email the author, or log a bug on RT:

https://rt.cpan.org/Public/Dist/Display.html?Name=WWW::Garden::Design.

Author

WWW::Garden::Design was written by Ron Savage <ron@savage.net.au> in 2014.

My homepage: https://savage.net.au/.

Copyright

Australian copyright (c) 2018, Ron Savage.

All Programs of mine are 'OSI Certified Open Source Software';
you can redistribute them and/or modify them under the terms of
The Perl License, a copy of which is available at:
http://dev.perl.org/licenses/