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 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/