A simple chat server for maya's stream.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Erin Nova cd2e47a852
Make pronouns in chat stand out more
2 years ago
frontend Make pronouns in chat stand out more 2 years ago
src Add user pronouns to message body, fixup changelog 2 years ago
.gitignore Remove deprecated functions 2 years ago
CHANGELOG.md Update formatting in changelog 2 years ago
Cargo.lock Frontend: Command support, pronouns,changed font, added message if no stream 2 years ago
Cargo.toml Add user pronouns to message body, fixup changelog 2 years ago
LICENSE Add Luna to license 2 years ago
README.md Remove API docs from readme as they're in wiki, seperate finished/unfinished feautures 2 years ago
Rocket.toml Lowercase all incoming names 2 years ago
message.zsh Remove deprecated functions 2 years ago


Chat Registration System

A simple chat system for built for maya's livestream. Provides a simple API for user authentication, and chat functions. Frontend & backend code stored here.

Implemented Features:

  • Basic auth API
  • Return json instead of string
    • "status" shows wether request was succesful or not, either "ok" or "fail"
    • "reason" is for more details, mainly just for debugging?
  • Basic messaging system
    • Finish up chat::create_message()
    • Create chat::fetch_messages()
    • Use unix timestamp for date
  • Switch to using sled database to store users
    • Error handling
  • Token generation & storage
    • Sets cookie
    • Store token in json
    • Have cookie expire
    • Remove old cookie
    • Use token for most stuff
    • Logout API
    • Fail on NULL token
  • Pronouns
    • Set pronouns
    • Change pronouns
  • make changed_event Enum, use token instead of pin


  • Better messaging system
    • Use websockets for chat issue#3
    • Create chat::delete_message()
    • Display pronouns issue#4
  • Various database improvements issue#1
    • Improve error handling on write functions
    • Allow for asyncronous reading/writing
  • Some form of plural support?
  • User management (banning, etc.)
    • User roles (admin, mod, etc.)
    • Commands to affect users issue#2
  • Blacklist words from chat/names
  • More advanced chat features
    • Different types of message events? eg. default, announcement, command
    • Types will display differently? eg. announcements pinned to top?
    • Have different commands?
    • Emote support?