Posted 2023-10-22 | Back to blog index
HyperCard StackStories 2: The Email System
Been seeing some talk about AppleTalk email on fedi lately so I thought I'd throw my hat into the ring
MacMail, a client/server AppleTalk email system written in HyperCard. It has no gateway to internet email, it's purely LAN
There is a server that you leave running on a Mac which stores incoming email for the clients to fetch when they go online. And a remote app which is required to admin that server
And here's the client! In preferences (suitably misspelled), you configure the server and your username and password, and can start sending and receiving email!
Email wasn't pushed to the client, so it was set to periodically fetch email from the server.
The app even had rudimentary filing and you could set up a single filter (the default example is dumb - who would get spam on their internal LAN email system??)
The files date from 2000 so I was 15 when this was completed
This is probably one of the last things I did in HyperCard before moving on to REALBasic to get native UI
You can see I was really going all-in trying to make as native a UI as I could in HyperCard, with stuff like being able to open multiple compose windows at the same time, and I even made sure to support Balloon Help!
All this required a massive pile of XCMDs to work, including one from everyone's beloved @uliwitness
If you were paying attention in the first screenshot, there was even a plug-in system. "Plug-ins" were just plaintext files with a custom type code containing HyperTalk code, and were added to a menu to create custom functions. I'm pretty sure not one person on the planet ever used this.
Another thing I did was store the email in a "custom file format" rather than in the HyperCard stack itself. This "format" was basically just a bunch of STR resources.
Anyway if anyone is masochistic enough to want to try this out, the download is available here http://kalleboo.com/history/downloads/macmail-2.sit
And if you missed episode 1 of my HyperCard Stack Stories it can be found here: https://bitbang.social/@kalleboo/111160844902088557