TMM: a simple to use Web/CRUD framework

TMM (Teapot, Mustache, Mongo) is a simple to use Web/CRUD framework built on Pharo.


I cleaned up and released some demo code I put together for a Smalltalk user group meeting. The code was extracted from a project I’ve been working on. It also uses Magritte3, Voyage, and ZincSSO, but that’s too many pieces to include in the web-app-stack name

I was working in Pharo3, so I took the opportunity to upgrade to Pharo4. I had no problems with Pharo4 itself, but I had some minor issues with the updated Teapot and VoyageMongo versions:

- VoyageMongo - <mongoContainer> pragma is now expected on class-side, not the instance-side
- Teapot - To read/parse template files on each request (which is convenient during development) I had intercepted an internal API. This API changed slightly, which needed a simple fix, but it was hard to find

I also decided to use a “git” repository. This turned out to be one of the hardest parts, but I think it was worth the effort.

To try TMM, follow the instructions at:

Enhancements are welcome, but I don’t quite know how this git workflow will pan out. I’ve already got a few changes to port over:
- a more integrated file upload example
- an email/passwordHash stored in the User object in mongo.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: