Own your voice
Go to file
Michael Peters 4a87082dc7 add readme
2023-01-11 21:33:56 -08:00
archive jump to bottom works! 2023-01-10 23:34:46 -08:00
data add readme 2023-01-11 21:33:56 -08:00
src fix onclick listener in connection info status 2023-01-11 20:23:37 -08:00
.gitignore coverage gitignore 2021-11-30 20:47:18 -06:00
makefile cache miss, server confirms miss test 2022-10-04 20:56:35 -07:00
package-lock.json update package versions 2023-01-10 23:52:27 -08:00
package.json update package versions 2023-01-10 23:52:27 -08:00
pinned-versions.txt update package versions 2023-01-10 23:52:27 -08:00
README.md add readme 2023-01-11 21:33:56 -08:00

CorDis - Own your voice

CorDis is a text and voice chat client with UI based on Discord.

Client

Server

Build / Run

Install Node Dependencies

npm install

Build the project

make build

This will do the following

  • lints with eslint

  • builds TypeScript with tsc

  • builds SCSS with sass

  • TODO: Use npx/node binary rather than the $PATH version of eslint and tsc (like sass)

Example Server Setup

Install postgresql

This is very easy and intuitive :)

Create the example server database

make reset-server

This will attempt to connect to your local Postgres database using the postgres user. The setup-test-servers script initialize the tables for the server to run two Guilds simultaneously.

Create an invite for your client to connect to a guild

make create-invite

This will create a .cordis guild invite file in the dist/server/invites directory.

See Also

  • make create-invite-heaven - creates invite to the second server
  • make create-example-roles - registers the user named 'Elipzer' as an admin
  • make create-memes-messages - inserts 2000 messages into the #memes text channel

Launch the Server

make start-server

You should see some output like this:

21:41:11.492                 app.js:51  d: g#98536789-eeba-4c50-bf18-eecd264c299c: no fools
21:41:11.499                 app.ts:31  d: g#050b3302-e933-4b37-967f-2ec2fa13fbc0: Literally Heaven
21:41:11.502                 app.ts:42  i: listening on port 3030

Start the Client

make start-client

Click the + Add Server button on the left

Select the .cordis file that you created for the guild on the example server.

Select your username and profile picture and you're ready to go!

Development Notes

The client is built into an Electron app.

  • TODO: Make it into a Web App

The client and server communicate using socket.io

The server's schema is defined in src/server/sql/init.sql