Skip to content

horahoradev/revite

 
 

Repository files navigation

This is a fork of Revite that I've butcheredmodified to suit Horahora's needs. Credit for developing the original software goes to the many contributors, most notably insertish. If you have any questions or concerns about what I've done, you may contact me at Otoman#6721 on Discord, my email (horahora1567@gmail.com) or anywhere else you happen to find me. Thank you for your work!

My changes are summarized below:

10-30-22:

  • I removed browser detection from the login operation (may need this later, we'll see), and removed credentials and friendly_name from the payload to the /auth/session/login endpoint
  • I removed the various authentication-related routes except for the default login path, removed the email/password form (replaced with a Button which invokes the login operation) from the login page in order to provide (bad) SSO from my other application, Horahora. With these changes, users login once to Horahora, and then can navigate to the chat and press the big SSO login button, and they'll be logged into their Revolt account.
  • removed typecheck and port exposure from Dockerfile
  • modified this README to provide attribution and comply with the terms of the license

11-1-22:

  • modified .env file to use my local API
  • modified Dockerfile for hot reloads (development use)
  • modified vite config to accommodate my path setup in Nginx

11-6-22:

  • added functions representing Horahora's planned REST API for watch parties. These functions currently return placeholder data to test component display.
  • added "WatchParty" component which currently only implements the basic display for planned channel watch party functionality
  • added use of the "WatchParty" component to the standard TextChannel
  • changed MessageArea CSS to make room for the new WatchParty component within the text channel

11-13-22:

  • added buffer dependency to conv uuid to int (lol, WIP)
  • implemented API and calls for basic interaction with Horahora's RESTful API for most basic watch party operations
  • added form to add videos to video queue (very basic, will change later)

11-14-22:

  • changed UI display on channel page: two columns, one for video embed/queue controls, one for chat

11-18-22:

  • expanded Horahora API support, now supporting NextVideo and AddVideo
  • added sockets.io for basic pubsub support, currently correctly logging nextvideo events
  • added "Next" button to select next video, and changed new video text area to respond correctly to input and call the correct API endpoint

11-19-22:

  • added support for video embed reloads and real-time video additions/skips
  • altered css to balance width between chat and the watch party component
  • altered display of next button, added watch party controls section

Revite

Description

This is the web client for Revolt, which is also available live at app.revolt.chat.

Pending Rewrite

The following code is pending a partial or full rewrite:

Stack

Submodule Hint

This project contains submodules. Run git submodule init after you clone this repository to initialize the submodules. It is also recommended to run git submodule update after you pull from upstream.

Resources

Revite

Revolt

Quick Start

Get revite up and running locally.

git clone --recursive https://github.com/revoltchat/revite
cd revite
yarn
yarn build:deps
yarn dev

You can now access the client at http://local.revolt.chat:3000.

CLI Commands

Command Description
yarn pull Setup assets required for Revite.
yarn dev Start the Revolt client in development mode.
yarn build Build the Revolt client.
yarn build:deps Build external dependencies.
yarn preview Start a local server with the built client.
yarn lint Run ESLint on the client.
yarn fmt Run Prettier on the client.
yarn typecheck Run TypeScript type checking on the client.
yarn start Start a local sirv server with built client.
yarn start:inject Inject a given API URL and start server.
yarn lint | egrep "no-literals" -B 1 Scan for untranslated strings.

License

Revite is licensed under the GNU Affero General Public License v3.0.

About

Revolt client built with Preact.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.7%
  • SCSS 5.4%
  • Other 0.9%