Commit Graph

16 Commits (3d131980ae4f7606c533de0debece895ffeb6431)

Author SHA1 Message Date
knotteye a5c1adfffc Return live flag as well when getting user info 2020-10-17 05:13:32 -05:00
knotteye 988e3473a7 Big commit. Implement handlers for everything that's currently rendered server side in the client-side frontend.
Add compiled templates file to .gitignore, will work out a system for making sure templates are compiled later.
Fix a couple bugs in the API and templates.

TODO for client-side rendering:
Make sure templates get compiled before running the server.
Add a config option to switch between server-side and client-side rendering
Fancy SPA stuff like intercepting links to render changes without a page-reload
2020-10-14 07:44:19 -05:00
knotteye 67de11e66b Add API handling of invite codes, add web page for inviting users. 2020-10-13 16:12:07 -05:00
knotteye 9605ff8c92 Add a way to generate invites from the command line. Add database migration script. 2020-10-13 15:48:39 -05:00
knotteye 8caad60a43 Add functions for generating and using invite codes 2020-10-13 15:29:47 -05:00
knotteye 98927bd7b8 Add API functionality for twitch mirror. 2020-10-12 12:11:04 -05:00
knotteye 654b65640f Change API to set content-type headers.
Rework some responses to make all responses in JSON.
Increment version because of major API changes.
2020-08-03 05:01:20 -05:00
knotteye df51432a8f Fix /api/:user/config not returning all info for an authorized user. 2020-07-30 01:14:33 -05:00
knotteye db8d9dfe72 Add API function for getting a user's configuration. 2020-07-30 00:45:08 -05:00
knotteye 4628deec1c Add VOD management page and the ability to delete the user's own vods 2020-06-27 08:34:09 -05:00
knotteye 2beffa46fb Add updateChat function in api 2020-06-26 06:07:33 -05:00
knotteye f7733b9507 Big Refactor
Stop using config and toml as dependencies
Stop passing around config variables through function calls
Add config.ts and pull the values you need directly in the files
Remove irc.js for incoming new IRC solution
Rename controller to index because that was stupid
Minor git bullshit with the config folder
Change to yaml as a config format
2019-12-21 08:59:35 -06:00
knotteye 25cf8a37a2 Big Commit!
Seriously, this one is pretty massive. Satyr now has proper sessions in the browser (like a real website), and a lot of changes were made.

API Endpoints were changed from requiring a username and password to requiring a valid JsonWebToken, obtained from /api/login
Satyr will generate a PEM format key for JWT signing and verification on startup if it can't find one at config/jwt.pem
This file was added to .gitignore
Two new depencies: cookie-parser and jose, for reading and signing JWTs.

Refactored http.ts into mutiple functions, with a couple helper functions related to cookies and JWT decoding and verification. Socket.IO chat will also automatically log in users with a valid JWT.

Refactor api.ts to reflect new requirements from endpoints.

Minor bugfix in server.ts so we don't throw an uncaught exception when rejecting a stream with an invalid key.

Transcode options readded to default.toml. They do nothing and they are not sane defaults. Both of those things are in the todo list.
2019-12-03 19:51:14 -06:00
knotteye 1afe462c0b Removed old IRC implementation
User accounts are now only for streamers, update CLI, API, and config to reflect that.
Fixed a bug with registration in api.ts
Made http port configurable
Added beginnings of socket.io chat server

Possibly more, I took a break in the middle of this commit.
2019-10-18 18:43:01 -05:00
knotteye f9e4a7a5c6 I don't even know.
Filled out API for user management
Proper escaping of user input for SQL queries (stream keys aren't user input)
Filled out frontend with profile management, vods, etc.
I don't remember there's probably more, fuck.
2019-10-05 14:34:57 -05:00
knotteye b0533f973b Added some api functions, an express server for the API and nunjucks
Added nunjucks templates for frontend pages.
2019-09-28 21:44:55 -05:00