Zinc
From Deep Thought
Contents |
[edit]
About Zinc
Zinc is Cyber Sprocket's Perl Application Framework. It uses a Z_..._Z key sequence to insert programmed Perl snippets into a standard HTML page.
- Why Zinc?
- Because it is short & easy to remember. It is also a close approximation for the original "z-encoded" page templating concept on which Zinc is based.
- Why Perl?
- It is solid, robust, and very fast when integrated properly with Apache. Much faster than PHP in most cases and can give some C/C++ apps a run for their money when dealing with web services. Not bad for a psuedo-compiled run time scripting language.
[edit]
Getting Started
To get started just grab the sample repo at svn://cybersprocket.com/zincsample
[edit]
Zinc Modules
The Zinc Framework is comprised of the following modules, in addition to your custom application code.
- Zinc::Director
- Controls the action. The primary interface for your application. Think of this as the traffic cop for all of your web application awesomeness.
- Zinc::Act
- Does stuff. Typical function is to interact with the Memory module for permanent state changes and/or the view module to show the result of those changes.
- Zinc::GateKeeper
- Optional module that handles login and session management. Instantiate this in your launcher application and attach to the Director module to provide session and login controls for your application.
- Zinc::Memory
- Remembers stuff, typically long term. Also known as a data store or the database.
- Zinc::View
- Handles rendering of the pages, mostly HTML parsing and injecting information within the page.
[edit]
Required Perl Modules
The following supporting modules are public domain and readily available on CPAN or via the Cyber Sprocket website depending on their release status.
- Postgres::Handler - The Postgres database interface.
- Postgres::Handler::HTML - The HTML rendering engine for data driven components.
- HTML::TemplateZ - The Zinc page template parser. (under development)
[edit]
Implementation
- View some of the standard Zinc Codes here.
[edit]
