Settings

Theme

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

spacemagic.io

29 points by ZachS · 29 comments

Reader

4 threads
webjprgm

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

    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

node.js has real-time guarantees?

  • stcredzero

    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

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

      • mhd

        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

          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

          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

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

    • webjprgm

      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

        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

    What's a real-time guarantee?

samrat

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

  • EButlerIV

    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

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

  • 5vforest

    My thought exactly.

draggnar

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