Settings

Theme

Show HN: SpaceMagic, a real-time node.js framework

spacemagic.io

29 points by ZachS 14 years ago · 29 comments

Reader

webjprgm 14 years ago

Was this already in progress or made in response to meteor (and firebase)?

I'm sure a lot of us could rip the real-time/live updating/auto-synchronizing (pick your term) engine out of our current web apps and package it up in a tiny framework without much effort.

  • EButlerIV 14 years ago

    The idea came about a year and a half ago. We seriously started working on it, and committing to a public github repository, about six months ago. Meteor's release just changed our public announcement date from "sometime in the near future" to "Friday."

mhd 14 years ago

node.js has real-time guarantees?

  • stcredzero 14 years ago

    Exactly what I was thinking. This is the third recent post to HN using "real-time" in this fashion. They're hijacking a term which already has widespread use and which, "doesn't mean what they think it does," to hijack a line from Princess Bride.

    http://en.wikipedia.org/wiki/Real-time_computing

    • ZachSOP 14 years ago

      I use "real-time" in this fashion because describing it as "soft real-time" seems weird.

      • mhd 14 years ago

        Didn't we call websites that update without a manual page reload "AJAX" just a few minutes ago? And yes, even if there's no XML present, but at least it's an abuse of a pretty new, web-specific term.

        I propose we call all that stuff "FEFYOM" (Fast Enough For You Old Man) from now on.

        • wmf 14 years ago

          AJAX is where you click on something and then the page updates. Comet is where the page updates without the user having to initiate anything.

        • stcredzero 14 years ago

          If I ever write a manga with cute girls travelling the galaxy in a super-fancy ship, I'm going to name the ship the "Fefyom."

  • dreamdu5t 14 years ago

    We should use the term "auto-synchronizing" insteaf of real-time

    • webjprgm 14 years ago

      You know those journalist pages where they report what's happening at an event with immediate updates? It's called "live updating". Why don't we use that term? TV news stations say "LIVE" when it's current events happening now. "Real time" as used for this Ajax technique means that the page is auto-updating with events happening now. That's "live". Any seconders?

      • geoffschmidt 14 years ago

        In fact, in Meteor, the relevant packages are called "livedata" and "liveui".

        In the docs, Meteor usually tries to use the word "reactive" or sometimes "automatic," thought "realtime" does seem to have slipped in in some places.

  • mcantelon 14 years ago

    What's a real-time guarantee?

samrat 14 years ago

Could someone please explain: How does this compare to Meteor?

  • EButlerIV 14 years ago

    That's fair to ask. We're both trying to solve the same problems in similar ways. Both of us use Node and MongoDB and both of us keep everything automatically synched and up to date between the client and server.

    We do things a little differently. We built SpaceMagic while working on a real-time web app of our own and did so with the goal of making our work as easy as possible. Ideally, we want to make developing realtime apps as easy as it is to make non-realtime apps. First, we support semantic HTML templates, allowing developers to turn their mocks into working prototype applications with a bit of javascript. Second, we make developers able to write validation and other important code once and have it run on both the client and the server. Third, SpaceMagic is released as just another npm package that works with your preexisting Node install and packages.

    • firefoxman1 14 years ago

      Thanks for the great explanation. So it might be more comparable to something like SocketStream + MVC pattern?

  • 5vforest 14 years ago

    My thought exactly.

draggnar 14 years ago

back button an issue for anyone else?

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection