Last updated at 6:53 pm UTC on 2 January 2018
Seaside is a framework for developing sophisticated web applications in Smalltalk. (Squeak, Pharo and Gemstone).
Developers: Avi Bryant, Julian Fitzell
The most unique feature of Seaside is its approach to session management: Seaside models an entire user session as a continuous piece of code, with natural, linear control flow. Pages can call and return to each other like subroutines. Complex sequences of forms can be managed from a single method. Objects are passed by reference rather than marshalled into URLs or hidden fields. Seaside fully supports the backtracking and parallelism inherent to the web browser.
So unlike in the Java servlet model Seaside does not need a separate handler for each page or request.
- a callback-based event model
- a "transaction" system for auto-expiring pages
- programmer-friendly HTML generation
- a system of reusable and embeddable UI components
- web-based development tools. If an error occurs you may fix it by using the web browser and resume the execution.
- Seaside-REST package included since version 3.1
The Seaside project has a mirror on GitHub which is tested by TravisCI. According to that, all tests are passing in a Squeak-5.1 image:
Seaside status November 2016
No support yet in Squeak 6.0a: https://github.com/SeasideSt/Seaside/issues/902
How to get Seaside into a standard image
Earlier versions of Squeak:
SqueakMap ==> go here for details
The load scripts also load Grease.
2009 and older material
The information below is as of 2009 and may be outdated.
Please note: previous versions of Seaside included a sample application, the Sushi Store. This application has not been updated and is no longer included with Seaside 2.8 - it is still available at http://www.squeaksource.com/SeasideExamples.html but includes many deprecated techniques, and should not be relied on.
Nice movie illustrating some of the power of Seaside at:
Click on seaside4.mov to download/view
In the book Beyond Java by Bruce A. Tate (O'Reilly /September 2005) Seaside is described as an example of a continuation server.
Secrets of lightweight development success, Part 8: Seaside (http://www-128.ibm.com/developerworks/java/library/os-lightweight8/index.html)
Appointment application (image to download, blog entry 11-Nov-2005) http://diegogomezdeck.blogspot.com/
When you install Seaside you are asked for an administrator user acount name and password.
to access an application which lists the preinstalled applications and allows you to add your own.
Seaside application configuration
The screen shot shows the configuration panel with the example applications included in the Seaside release.