mayurbiw / project2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project 2

Web Programming with Python and JavaScript

Users will be able to sign into the site with a display name, create channels (i.e. chatrooms) to communicate in, as well as see and join existing channels. Once a channel is selected, users will be able to send and receive messages with one another in real time.

The functionalities -

Display Name - Every user is associated with a display name. The user will be prompted to enter the display name when it visits the application for the first time.

Create channel - After clicking on create channel the user can enter the channel name and create a new channel. If the user enters already existing channel name, the user will get the message before even clicking on the button "The Channel name already exists", and the create button will get disabled. User will only be able to press "create" when the channel name is valid. Create channel is displayed above the channel list.

channel list - This side navigation menu contains the list of channels. The user can select any channel. If the user has not join the channel, The user will be asked to join the channel before seeing messages. Once the user has joined the channel the user is free to send and receive messages.

After selecting the channel the user can see top 100 messages as well as the total users and list of the name of the users in the channel. The user can send a text message by typing in the field provided and as soon as the user presses the send the message will get broadcasted to all the users in the channel. Sending and receiving messages not require reloading the page.

The application can remember the channel user was in, that is to say, If a user is on a channel page, closes the web browser window, and goes back to your web application, The application remembers what channel the user was on previously and take the user back to that channel.

Personal Touch: The user can send emojis

About


Languages

Language:JavaScript 58.2%Language:Python 20.0%Language:HTML 18.5%Language:CSS 3.3%