Skip to content

drewcsillag/skunkweb

Repository files navigation

LICENSE
-------

Copyright (C) 2001-2003, Andrew T. Csillag <drew_csillag@yahoo.com>,
                          Jacob Smullyan <smulloni@smullyan.org>
			    All rights reserved.

    This program is free software; you can redistribute it and/or modify
    it under the terms of either:

	a) the GNU General Public License as published by the Free
	Software Foundation, version 2, or

	b) the "SkunkWeb License" which comes with this Kit.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See either
    the GNU General Public License or the SkunkWeb License for more
    details.

    You should have received a copy of the SkunkWeb License with this
    Kit, in the file named "SkunkWebLicense".  If not, we'll be glad
    to provide one.

    You should also have received a copy of the GNU General Public
    License along with this program in the file named "COPYING". If
    not, write to the Free Software Foundation, Inc., 59 Temple Place,
    Suite 330, Boston, MA 02111-1307, USA or visit their web page on
    the internet at http://www.gnu.org/copyleft/gpl.html.

README for SkunkWeb
-------------------

The installation instructions are in INSTALL. The STML (Skunk Template
Markup Language), operations, and developer manuals are under
docs/html (in html format) and docs/paper-letter (in pdf format).


Starting the SkunkWeb Server
------------------------------
Edit <prefix>/etc/sw.conf to taste.

Run <prefix>/bin/swmgr start

Hit http://localhost:8080 and check to see that you get the
congratulations page.

If you built mod_skunkweb (to use with apache), add the contents of
SkunkWeb/mod_skunkweb/httpd_conf.stub to the end of your httpd.conf
(editing to taste).  Stop and start apache and hit it and check that
you get the congratulations page.  N.B. Chances are fair that if
you are using Apache to front skunkweb, you can:
   1) remove httpd from the services list in sw.conf
   and
   2) comment out HTTPListenPorts in sw.conf (not necessary, actually,
   as they will be ignored if you do 1) above).

SkunkWeb, Smell the power!

Bugs
------------------------------
Yep, we probably got a few hanging out.  Send email to either myself
(Drew Csillag), Jacob Smullyan (see addresses above), or better yet,
the mailing list.  You can either join the list (please do!) at
    http://lists.sourceforge.net/lists/listinfo/skunkweb-list
Or if you don't want to join the list, you can send email to
skunkweb-list@lists.sourceforge.net.

Support
------------------------------
Currently, you have a few options:
   * use the mailing list
   * Contact Drew Csillag <drew_csillag@yahoo.com> and/or Jacob Smullyan 
     <smulloni@smullyan.org> for rate information. 

(from docs/Pitch)
What is it?
------------------------------
SkunkWeb is (yet another) web application server.  The things that make it
different are:

Uses Python
	* Python is easy to learn for both new programmers and experts alike
	* senior programmer types like it too (vs. say tcl)
	* extensible with C/C++ for speed and/or linkage to C/C++ libraries
          via static *or* dynamic linking

Extensible
	* Relatively simple extension API
	* can easily handle authentication, custom url building/parsing 
          schemes and custom tags

Encourages component based design
	* more than just "include"
	* not just another ASP/JSP like thing
	* a powerful templating language 
	* encouraged by caching options (see below)
	* component output can be either HTML or Python objects
	* can write components in either STML or Python
	* can also call components on other skunkweb servers
	
Message Catalogs
	* makes multi-lingual sites much easier
	* support variable substitution in messages

Speed
	* templates are compiled to Python bytecode
	* extensive caching (to disk and optionally memory) of:
		o compiled forms of templates
		o digested message catalogs
		o output of components
		o python modules and python components
	* cache *is* sharable between machines if using a
	  shared filesystem! (can be more than one shared filesystem
          for speed, redundancy and flexibility)
	* caching is flexible and as finite as your disk space
	* components can be rendered after the response is sent if 
	  a slightly stale version is available --- resulting in
	  better response times via deferred components

Documentation
	* extensive documentation available in HTML, PostScript, PDF & text
          --well not yet, but getting there
	* have automatic documentation tools to generate documentation for 
	  STML templates (but don't use the manual stuff, it sucks).

Process Model
        * Uses multi-process, versus multi-threading which makes better
          use of multiple processors (because of the global interpreter
          lock in Python), and is safer in that if one process crashes, 
          it won't kill the entire server.

No magic (zodb <wink>).

About

The SkunkWeb Web application server (moved from sf.net)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •