Commit Graph

40 Commits

Author SHA1 Message Date
c49bfe5a3d misc 2025-12-17 13:33:31 -05:00
e18aa3f42c feat(api): implement rate limiting and SSRF protection across endpoints
- Added rate limiting to `reaction-users`, `search`, and `image-proxy` APIs to prevent abuse.
- Introduced SSRF protection in `image-proxy` to block requests to private IP ranges.
- Enhanced `link-preview` to use `linkedom` for HTML parsing and improved meta tag extraction.
- Refactored authentication checks in various pages to utilize middleware for cleaner code.
- Improved JWT key loading with error handling and security warnings for production.
- Updated `authFetch` utility to handle token refresh more efficiently with deduplication.
- Enhanced rate limiting utility to trust proxy headers from known sources.
- Numerous layout / design changes
2025-12-05 14:21:52 -05:00
55e4c5ff0c feat(api): add endpoints for fetching reaction users and searching messages
- Implemented GET endpoint to fetch users who reacted with a specific emoji on a message.
- Added validation for messageId and emoji parameters.
- Enhanced user data retrieval with display names and avatar URLs.
- Created a search endpoint for Discord messages with support for content and embed searches.
- Included pagination and rate limiting for search results.

feat(api): introduce image proxy and link preview endpoints

- Developed an image proxy API to securely fetch images from untrusted domains.
- Implemented HMAC signing for image URLs to prevent abuse.
- Created a link preview API to fetch Open Graph metadata from URLs.
- Added support for trusted domains and safe image URL generation.

style(pages): create Discord logs page with authentication

- Added a new page for displaying archived Discord channel logs.
- Integrated authentication check to ensure user access.

refactor(utils): enhance API authentication and database connection

- Improved API authentication helper to manage user sessions and token refresh.
- Established a PostgreSQL database connection utility for Discord logs.
2025-12-03 13:27:37 -05:00
c3f0197115 misc 2025-12-02 10:05:43 -05:00
ee33b86fe7 feat: subsites 2025-11-28 09:40:13 -05:00
d8d6c5ec21 refactor: add SubNav layout and per-subsite nav placeholders; switch Base to use SubNav 2025-11-28 09:07:55 -05:00
de50889b2c - TRip: various ui/ux enhancements
- other minor changes
2025-11-26 14:42:57 -05:00
d671fbc130 feat: Add user display in navigation
misc: styling/css cleanup
2025-11-26 10:43:34 -05:00
21b112f460 login page / auth flow changes 2025-11-26 10:08:24 -05:00
eb38f8865f - LyricSearch: misc/field focus, validation
- Nav: further improvements
2025-11-26 09:17:30 -05:00
8500cd6e67 - feat: Enhance LyricSearch and Memes components with new features and styling improvements
Bump major version -> 0.3
2025-11-25 10:04:05 -05:00
315919186b another commit without a list of specific changes! (misc) 2025-08-21 15:07:10 -04:00
1528931a29 misc 2025-08-20 15:57:59 -04:00
fdbc84aee5 misc 2025-08-20 07:32:40 -04:00
fe6a45bc1d CSS changes: light/dark theming for radio lrc-text 2025-08-09 07:28:26 -04:00
21796e768e various changes 2025-08-09 07:10:04 -04:00
fbd342c6a7 Enhance lyrics display: add transition effects, manage opacity, and improve styling for empty state 2025-08-06 15:43:45 -04:00
d501272870 Refactor AudioPlayer component: streamline state management, add lyric display, and improve stream handling 2025-08-06 15:37:07 -04:00
36a2fddfa6 Remove Toastify icon color variable and delete unused YouTube component 2025-07-31 20:45:29 -04:00
7824fc4b7c Enhance Toastify notifications with custom icons and adjust autoClose timing 2025-07-31 20:36:34 -04:00
47eabdce96 misc 2025-07-31 20:25:02 -04:00
7a22d8056b Add Toastify customizations to global CSS to reduce need for inline styling.
Improve theme handling in LyricSearch component
2025-07-31 19:53:45 -04:00
a631691fd6 dicking around 2025-07-31 19:28:59 -04:00
6a507b5a9e album name bold -> italics 2025-07-25 15:25:21 -04:00
9776f1fb15 minor/add album name to player (text above cover art; album name was visible prior only when hovering over the image) 2025-07-25 15:13:37 -04:00
3ea7142b24 minor / add button to footer to get new random messages 2025-07-25 09:54:22 -04:00
3d35b0a327 minor / styling 2025-07-24 16:09:14 -04:00
d85d8697bc misc 2025-07-24 10:34:26 -04:00
8faf5de77f add memes 2025-07-24 10:06:36 -04:00
0ee80f4b49 cleanup/formatting + remove WIP 'alert', adjust radio station-tabs padding 2025-07-23 07:45:28 -04:00
b0cd37ced3 color progress bar based on prior criteria used 2025-07-19 22:42:23 -04:00
9c4c917a1d remove unused css 2025-07-19 22:16:39 -04:00
02c461c076 CSS fix (player.css)- album art clipping 2025-07-19 22:14:28 -04:00
f8bf23dd4f radio web player changes / iOS support (still WIP, only main station supported; iOS Safari does not support streaming of Ogg/Vorbis, so an HLS stream output was created for that station. 2025-07-19 08:50:04 -04:00
814bbbff85 radio styling changes (add/fix mobile responsivity); WIP, player still does not function on iOS 2025-07-17 11:30:14 -04:00
11b5dfb09d navbar changes, radio/webplayer rewrite + additional stations 2025-07-17 06:55:01 -04:00
8f7b0f2719 refactor/add build time to page footers 2025-07-16 10:06:41 -04:00
289411c8eb additional nav bar items, lyricsearch.jsx changes/cleanup + bugfix for autocomplete scrolling & change to primereact theme (bootstrap4-dark-blue) 2025-07-15 14:34:44 -04:00
f99142e485 random messages 2025-06-22 09:50:36 -04:00
9a82d1a664 initial commit 2025-06-18 07:46:59 -04:00