Coder Social home page Coder Social logo

complainsmith's Introduction

ComplainSmith

An anonymous board to ask for help, coding or otherwise.

--MVP-- Front End - Login Page / Signed Out Landing Page - Click to log in with GitHub OAuth - Do they give us their handle? (Does github give the username) - Check handle against whitelist (held in backend) - Avatar Login Page / Signed In User Landing Page - User chooses anonymous (name || picture) (from selection, or reroll) - Chat Page - Protected if unauthorized - Shows a history of chat messages - Shows user input area - Shows anonimized users (random name || pokemon pic, new each session) - Include specific logout button (remove the JWT token) Back End - Ensure no duplicate names or pictures at any given time || name / picture cooldown - Control current sessions - Users logged in / out as sockets - Pass messages as socket messages - Send new messages to storage (db) Database - Current users as name/picture - Whitelist of allowable users - Message history

Schema

MESSAGE:


PIC TIMESTAMP USERNAME MESSAGE

TABLE whitelist COLUMN github_handle varchar

TABLE messages COLUMN id int PRIMARY KEY COLUMN timestamp date COLUMN user_id int FOREIGN KEY COLUMN message varchar

TABLE users COLUMN user_id int PRIMARY KEY COLUMN username varchar COLUMN pic_url varchar

SERVERSIDE:

REDIS (key/value pairs) - Stores current active users (check against when assigning new users)

--Stretch-- Front End - Multiple rooms - Dirty word censor? (as an option)

Back End

Databases

Cookie Timeout - A week? (Can be determined at a later point)

Content moderation - Logging malicious IP addresses / github for blacklist

complainsmith's People

Contributors

svansig avatar myang5 avatar vicbal avatar

Stargazers

 avatar Philip Rodrigues avatar

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.