andyburke / grmble Goto Github PK
View Code? Open in Web Editor NEWA node.js chat server/client application.
A node.js chat server/client application.
Looks like I lost the #/User/ handler in the director.js rewrite.
I think that most password managers use the first form element to be the thing used for remembering the login string. Right now grumble asks for your handle first, so that ends up being saved as the login item, which breaks auto-login when returning to the site.
Right now the only way to rejoin a private room once you've left is through a saved URL (bookmark, link in an email, etc). There should be some way to see a list of previously joined private rooms and click on one to join it.
Make the input area bound to the bottom of the page.
Make it so that animating the scrolling of the message list doesn't affect the input area.
https://github.com/ccoenraets/backbone-directory/tree/master/web
This actually looks like it might be nicer for handling the client-side stuff. Not sure how well it would play with socket.io for the messages, but I assume we could figure out a way to make it work.
Like the error notification, there should be a notification when a new version becomes available suggesting the user reload.
Each room will have a list (array) of features that can be turned on and off. Later features such as chat logging will be made available in an admin console (possibly after paying some monthly fee)
Add userlist tracking so it's apparent what users are in a given room.
If you try to sign up with an email address associated with an existing account, the password field turns red. An appropriate message should be displayed, along with a link to a password recovery page.
Right now, we just pop up an alert. Really, we need to look at what app.ShowError is passed and try to deal with it intelligently. If it's an object, check for a 'message' field and use that, if it's a string, just use it, etc.
In firefox (12?) I'm getting an "HTTP "Content-Type" of "audio/mpeg" is not supported. Load of media resource http://localhost:8000/sounds/message.mp3 failed." when trying to load the 'blip' sound.
Later versions are supposed to work with it. We could look at trying to get one installed on the webby that's running grumble.com
each message would have a thumbtack pin beside it, and pinning a message (like an amusing message) could be preserved in scrollback for maximum appreciation. This would be like a forum stickie, but in chat.
@gorlak submitted this for the old codebase. I am bringing it forward, but I currently view it as a wontfix because I think there needs to be some better UI proposed for it.
Add the ability to add rooms (hidden or otherwise) to a favorite rooms list.
It just makes everything nicer/easier.
We can try to make this really frictionless. Maybe an account can even just have a nickname, but to ever get back into it (like if your session expired, or you were on a different browser), you'd need to have given us some other identifying info (email, facebook, twitter).
At the end of the day, though, an account would end up in the db and be persistent.
Would be nice to know when a message was written
We should really verify email addresses to make sure password recovery will work.
Maybe need to emit leave/join messages more appropriately.
Some sort of arrow\notification at the bottom of the chat window notifying you that you are scrolled up and there are new messages below. Clicking it should bring you down to the current message.
It would be nice to have a command or button you could use to ping, summon or invite someone to the channel if they are idle, away or not signed in at all.
/invite []
Example:
/invite [email protected] We're talking about Helium::Editor::ProjectView
Would send me an email:
Subject: GrmbleChat: has summoned you to channel: game_dev_people
---------------MSG---------------
You have been invited by to join Grmble chat channel: game_dev_people.
Reason: We're talking about Helium::Editor::ProjectView
Channel link: http://www.grmble.com/room/gamedevpeople
--GrmbleChat
--------------/END MSG------------------
On the server, when a client's connection drops, we need to emit a 'leave' message.
There is currently no way to recover a forgotten password.
geoff -at- flummoxed -dot- org
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.