GithubHelp home page GithubHelp logo

lazymeadow / best-ever-chat Goto Github PK

View Code? Open in Web Editor NEW
6.0 6.0 2.0 6.98 MB

A super awesome chat server and client webpage

Home Page: https://lazymeadow.github.io/best-ever-chat/

Python 71.39% JavaScript 18.71% HTML 2.74% Less 4.22% Kotlin 2.94%

best-ever-chat's People

Contributors

lazymeadow avatar mrnyby avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

best-ever-chat's Issues

modals are too dang big

i like to have my window itty bitty and modals are too big and i can't close them without making the window bigger.

Modals don't scroll well

The modals are getting pretty big (especially the settings one).
Chat 2.0 pulls the settings modal into two, but adding more settings will still have this issue. If information/change log from issue #22 is in a modal, that's going to be long, too.
The modal body (not the header or footer) need to be the part that is scrolling. The header and footer should be consistent in their location. This should hopefully be a CSS change.

add notifications

Some users have expressed interest in having popup notifications.
Make sure you can turn these off!!
Also consider having a private version of these notifications, and save that setting per computer.

encrypt that shit

We could totally find a way to encrypt and obfuscate messages through the socket. Do it.

Slider CSS

The slider is super ugly. override the browsers' shadow DOM CSS so it's less gross and more consistent.

Private message logs disappear after a reconnect

This is probably something that will not be solved without authentication. There should still be the ability to chat without having to log in, but maybe some features (like private messaging) are restricted to users that authenticate? Then private message logs could be tied to a user instead of to a socket connection, allowing persistence after a refresh.

Allow user to set font size

Some users want to see more chat, and some want to see less. Allow them to set the font size.

  • is this of the chat log, or is it for everything?

Can't change password

In case I ever forget my password or want to change it, there is no way to change my password without creating a new account.

legacy behavior on load

Sometimes (esp on phones) the chat page will have the appropriate cookies, and the socket will not have been closed. Then the client pulls up the settings modal so you can set your user name before connecting. These days, it should just connect if you have a valid auth token.

Spamming limits

Make it so that users get silenced if they are spamming the chat.

modals are all tied to the same close

modals are all closing on the same condition.
A.) if you open the settings before the "welcome/update" modal pops up, you get two modals. If you dismiss one, you dismiss both.
B.) if you have another modal open when a server disconnect causes a modal to appear, you now have two modals. If you dismiss one, you dismiss both.

User settings modal stopped working

Submit action causes it to reload the page with the changes in the query string. Changes are never send over the socket and processed by the server. The form looks like the others, and they are fine?

make the css better

the chat client could do with more flexboxes to make tabs/menu/etc work better.

aliases

Let you alias people for your own benefit

preserve most recent chat log on shutdown

keep the chat logs around when the server shuts down. should we pickle them? should we periodically save them, or only on shutdown? i don't know, i'm not a logging scientist.

Make chat updates make more sense

  • Add a link to the github for creating issues
  • Keep "seen info" state in database so user isn't given the info modal if cookie is gone
  • Add a more comprehensive change log that is available

Chat statistics

Not entirely sure what would be involved, but probably keeping track of how many messages are sent per day, and maybe a graphical way to view the data.

Add more colors to the color picker

The color picker is cool but the options are limited. We need more colors. Also, revisit some of the colors. They don't all work on light backgrounds.

title is wrong

the page title is "Best ever chat!" instead of "Best evar chat!"

Typing indicator gets set even if you are not typing

the client sends a true typing state to the server on every keyup event, apparently. that's probably not what we want. we probably want it to just be sending that if you're ACTUALLY typing something. not pressing escape. or alt-tab. or the volume control on a keyboard.

Server message about email

I did not change my email, but am given notification that it's updated every time I change something in settings.

make it more mobile friendly

Boy this chat is amazing but it is SUPER AWFUL on a mobile device. Like stuff is in terrible places and its all weird and hard to type. And its even like super difficult to us modals. Its fine i guess if you go horizontal for wide screen, but who does that?

Chat needs moar dark theme

I think a 'dark' theme would really help make it look like I am working on something work-related when I'm using chat!

allow uploading images instead of just links

now that we have the image cache, we should be able to upload images directly to the cache and serve them from there, just like we do external images. we wouldn't need to do a "get" on the image in this case.

sound isn't set to 'on' on initial setup

if the sounds are set to on on the first time setting up user information (i.e. when connecting with no existing cookies), the sound option is ignored and always false.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.