Seaside - Web framework for Smalltalk platforms
Seaside provides a layered set of abstractions over HTTP and HTML that let you build highly interactive web applications quickly, reusably and maintainably. It is based on Smalltalk, a proven and robust language that is implemented by different vendors. Seaside includes:
Programmatic HTML generation. A lot of markup is boilerplate: the same patterns of lists, links, forms and tables show up on page after page. Seaside has a rich API for generating HTML that lets you abstract these patterns into convenient methods rather than pasting the same sequence of tags into templates every time.
Callback-based request handling. Why should you have to come up with a unique name for every link and form input on your page, only to extract them from the URL and request fields later? Seaside automates this process by letting you associate blocks, not names, with inputs and links, so you can think about objects and methods instead of ids and strings.
Embedded components. Stop thinking a whole page at a time; Seaside lets you build your UI as a tree of individual, stateful component objects, each encapsulating a small part of a page. Often, these can be used over and over again, within and between applications - nearly every application, for example, needs a way to present a batched list of search results, or a table with sortable columns, and Seaside includes components for these out the box.
Modal session management. What if you could express a complex, multi-page workflow in a single method? Unlike servlet models which require a separate handler for each page or request, Seaside models an entire user session as a continuous piece of code, with natural, linear control flow. In Seaside, components can call and return to each other like subroutines; string a few of those calls together in a method, just as if you were using console I/O or opening modal dialog boxes, and you have a workflow. And yes, the back button will still work.
comments powered by Disqus
OpenMobster, is an open source Enterprise Backend for Mobile Apps. It provides a bi-directional data synchronization service for mobile apps to synchronize their locally stored database with Enterprise services in the Cloud such as server apps, CRM, ERP, etc. It supports a platform-agnostic Cloud-initiated Push Notification System. It has framework for creating end-to-end Location Aware Apps.
CherryPy allows developers to build web applications in much the same way they would build any other object-oriented Python program. This results in smaller source code developed in less time. It is a fast, HTTP/1.1-compliant, WSGI thread-pooled webserver. It has built-in tools for caching, encoding, sessions, authorization, static content, profiling, coverage, and testing support.
What the browser..?Video Overview & TutorialFeaturesPlanned featuresCurrent statusInstallationHow to useFeedback What the browser..?Smalltalk Labs Browser, or SL-Browser for short, is a (hopefully) modern approach to create a web based code browser for the Seaside web framework in terms of both design and functionality. Writing this is mainly a learning exercise for me as I'm completely new to Smalltalk, but hopefully it will be useful to you and will make working with Seaside easier, more produ
SeasideXUL is a web framework that enables to create thin-client desktop applications with standard look&feel based on remote XUL in Smalltalk. It is an additional layer on top of Seaside web framework. SeasideXUL supports OmniBrowser based tools so whole Smalltalk IDE is available. Monticello repository: http://www.squeaksource.com/SeasideXUL.html Demo: http://www.youtube.com/watch?v=pkfSh4pAbdM
Atomictalk - Atomictalk is an extension to AspectXML that uses a Smalltalk influenced syntax for dyn
Atomictalk is an extension to AspectXML that uses a Smalltalk influenced syntax for dynamically declaring, evaluating, and weaving content within a web page. Atomictalk is built on top of an MVC framework similar to that made popular by Ruby on Rails, though originally introduced as a programming model for Smalltalk by Trygve Reenskaug.
Most applications consist of a big number of model- or so called domain-objects. Building different views, editors, and reports; querying, validating and storing those objects is very repetitive and error-prone, if an object changes its shape frequently. Magritte is a fully dynamic meta-description framework that helps to solve those problems, while keeping the full power to the programmer in all aspects. Moreover since Magritte is described in itself, you can let your users modify the meta-worl
Google-summer-of-code-2007-squeak - Code samples from students working with Squeak for Google Summer
Squeak is a Smalltalk dialect and a programming environment created by many of the original Smalltalk authors. Its first edition was released in 1996, and it's currently at version 3.9, with a 3.10 version under development. It has spawned many related projects, both non-commercial (such as Squeakland, Croquet, Scratch, Sophie) and commercial (Plopp, DabbleDB). It's also the main developer platform for the Seaside web framework. The Squeak community is helped by the Squeak Foundation, a small or
Small web framwork to make building web applications easier. Applying a mixture of ideas from: Christian Queinnec (Scheme) Paul Graham (Lisp) Avi Bryant (Smalltalk) All this using Ruby the almost enterprise-accepted Lisp/Smalltalk. FeaturesEasy to use component model Blocks based Canvas API Granular backtracking (both GUI state and model data) Convenient form handling Bookmarkability Call/Answer Pushing and popping of components (does not use decorators) Integrates with Rails technologies (migra
Glare is a server-based technology that enables connectivity between VisualWorks Smalltalk and Adobe AIR, Flex and Flash clients. Like Adobe's Java based BlazeDS product (previously known as Adobe LifeCycle Data Services ES), Glare implements the remoting and web messaging protocols required to communicate with these clients and allow the clients to perform RPC calls on the server. Glare-DataServices (or GlareDS) provides the server component that allows Flash applications to perform methods on