Skip to content

Instantly share code, notes, and snippets.

Last active December 28, 2015 03:49
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
What would you like to do?
Chat room.

So, we figured creating our own chatroom could be fun.

It's something we can all work together on.

We don't plan on moving there but the project itself could be interesting for the whole room to collaborate work on.

What we need to discuss now:

  • What technologies we want to use (Node/Express seems natural for serverside. What about clientside?)
  • What features to we want? Do we just want to start with a clone of the SO chat?


  • Adding features should be easy
  • Responsive and fast
  • Works on IE10+, Chrome, Safari, Firefox, Opera
  • Mobile interface that actually works

Current stack proposal

  • AngularJS as clientside MVW, libraries (like jQuery) accepted gladly on a need to basis.
  • NodeJS/ExpressJS/SQL for server side.
Copy link

ralt commented Nov 13, 2013

Honestly mongo is a no-go for me. It doesn't do anything better than postgres. Transcript is not something that will change its structure, so going noSQL isn't really useful.

Copy link

GNi33 commented Nov 13, 2013

nice :)

most of the important stuff has already been said, from my side:
+1 for Angular and basically the setup Ivo Wetzel suggested.

I don't care too much about using or not using jQuery, with the given browser-list that should be supported we won't really need it.

private messaging, multiple rooms and nice code-highlighting when posting code-snipplets would be great

Copy link

Cannot forget about onebox support.

Copy link

If we're really doing this, why not add WebRTC support? Make it more like a hangout?

Copy link

ghost commented Nov 13, 2013

It’s definitely a good idea to show off as much JavaScript as possible, so I’m all for that! I don’t think it’ll see much regular use, though.

Copy link

Several ideas...

  1. A user preference to stop autoplaying of GIF's, that will show the GIF as a static image with a play button over it.

  2. A library of audible emotes with a user preference of whether or not to auto play the emotes or not, because sound clips can be funny at the right moments, but also annoying at the wrong moments.

  3. Third is more of a principle:

I think what would really add a lot of quality to a chat service, is to have subtle user preferences for anything UI related. This may include things like:

  • disabling oneboxing by the site
  • themes
  • choosing a markdown flavor
  • whether or not messages are prepended or appended to the message list
  • if user list goes on the left or the right
  • other layout related things like that

The principle is this; User preference all the things!
The obvious problem is finding a way to pull these things off without bloating the UI.

Which is why we would need to consider this early in the development.

Copy link

Considering the "We don't plan on moving there" part, maybe it should be built on top of the SO chat. Then anyone could use all the new chat features/UI without needing to leave the SO chat.

I have no clue how doable that is with the SO API though.

Or maybe that's already the plan?

Copy link

This is what I recommend

Mongo (possibly Mongoose)

Copy link

Retsam commented Nov 15, 2013

Well, it looks like I'm majorly outvoted, but I happen to like knockout as an alternative to angular.

Firebase also looks like an interesting option, though I admit I haven't actually used it.

Copy link

darkyen commented Nov 15, 2013

put all this on s3 + heroku ... infinite scalability :D

Copy link

darkyen commented Nov 15, 2013

@shea i once wrote a lib to convert a gif to a sprite sheet ( in C ) I think i should do that :P ... making the gif pausable and playable with canvas or css3 powered animations !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment