I need an authenticated chat room system with user accounts and teams. I'm thinking Node.js and Socket.io. The chat sessions need to happen within a Chrome extension. As in, based on certain conditions, people need to be able to chat within the application windows of the Chrome extension. So I'm think whatever system is built will need to be an intermediary service to send and receive message to/from the Chrome extension. Here are the specifics:
- People authenticate using Google (Chrome extensions make this easy).
- People can create Teams.
- People can be added to Teams.
- The person who created the Team is the only one who can add new people to the team. I think the best way to add people would be via email since they're using the their Google account to auth.
- Anyone in a Team can start a Project.
- A Project is a collection of chat rooms based around a URL.
- The only way to create new or interact with existing Projects is to go to the designated URL and open the extension. The extension is opened by the extension's browserAction button, and the current URL is determined by the extension querying the open tab.
- To create a new project you go to a URL and open the extension, and if no project exists for that URL then it will ask if you want to create a new one.
- Each project can contain chat rooms. These chat rooms only occur and be accessed when currently at the URL.
- Projects belong to the team. Anyone within the Team can access all Projects and all project chat rooms.
- The chat style itself can be very basic. I'm looking for formatting support or emojis or whatever. Just chatting, as instant as possible
- Everything needs to be manageable through the chrome extension itself.
Since it's a Chrome extension it can't host anything or perform any server work. It all needs to be communicated to a hosted server, which will then communicate back out to another Chrome extension. I will pay for any hosting (I have a Digital Ocean account?)
Dear Hiring Manager.
I have read your job description carefully.
I am a good extension expert and have built many chrome extensions.
I understand the extension what you want to build.
I am very familiar with Node.js and socket.io.
I have ever built chatting website using Node.js and socket.io.
It is very easy to use them in chrome extension.
But I want to discuss further about the extension to make everything clear.
I hope to work with you!
Regards!
I've developed a couple of projects which are similar your requirements. I am experienced about node.js and i developped lots of real time node.js applicaiton. I am also experienced about NoSQL technology. I've taken part of two projects about NoSQL. First project of them, i used mongodb and the second, i used redis. As a consequent, it's very important to give full satisfaction about the job.