Commit Graph

14 Commits

Author SHA1 Message Date
Christian Benincasa
4d462d7883 Bump versions everywhere - we're gonna need a better way to do this 2024-07-08 09:47:09 -04:00
Christian Benincasa
e2448debaa Cleaning up + optimizing (#277)
* Cleaning up scary code - checkpoint 1

* Massive server cleanup + optimizations - Part 1

* Bump mikro-orm versions
* Pilot using tagged types (type branding) on FillerShow.uuid for
  (maybe) better type checking
* Start hacking away at the 'helperFuncs' file inherited from DTV
    * Optimizations in getCurrentProgramAndTimeElapsed to reuse the
      precalculated 'startTimeOffsets' from the channel lineup
    * More type checks
    * Untangling some of the crazier types I added earlier on to make
      sense of the original code
    * General cleanup + best practices
* Move util.ts to util/index.ts
* No longer using req.hijack() to send raw video stream to frontend -
  this cleaned up a lot of code
* Introduce VideoStream + ConcatStream classes which hold functionality
  related to streaming that used to be in the monolithic video.ts
* Simplify ChannelCache and break dependence on Plex IDs. This now
  caches using our internal DB IDs

Left TODO:
* Completely remove helperFuncs.ts and put the functions in a more
  appropriate place
* Subdirectories for Plex files
* Subdirectories for 'Player' classes
* Subdirectories for 'ffmpeg' classes
* Persist channel cache to disk periodically so that server restarts
  preserve that information about streaming

* Update lockfile

* Fix build
2024-04-12 07:01:59 -04:00
Christian Benincasa
e632942616 Parent metadata (#238)
* Checkpoint - new entities, migration, + fixer so we can get started quickly

* Checkpoint - hooking up relationship saving on the program update path

* Checkpoint

* Another checkpoint - now relations are upserted alongside new episodes

* Augment APIs to return new season/show/artist/album metadata

* Cleanup API and standardize on new converter

* Make fixer queries better so we aren't constantly running
2024-04-05 16:27:07 -04:00
Christian Benincasa
67f2d144e2 Dynamic channels - phase 1 (#231)
* Checkpoint - dynamic channels

* Yet another checkpoint

* Bump versions - makes a ton of stuff work magically; needed a patch for ts-essentials because of https://github.com/ts-essentials/ts-essentials/issues/381

* Checkpointing

* Checkpoint
2024-04-03 15:08:31 -04:00
Christian Benincasa
2d4017f5b6 Add @microsoft/api-extractor and use experimentalDts to ensure we dont get type decl indirection. https://github.com/TanStack/query/issues/6318 seems like the same problem 2024-03-29 07:38:56 -04:00
Christian Benincasa
80703cf672 Standardize on shared/constants package and downgrade version to 0.1.0 across all packages 2024-03-20 10:49:44 -04:00
Christian Benincasa
b3a9d17d88 WIP (#153) 2024-03-07 20:45:43 -05:00
Christian Benincasa
a0cdb7600a Integrate turborepo for easier monorepo dep management and bundling (#146) 2024-03-06 12:44:11 -05:00
Christian Benincasa
5570631adc Packaging v0: Build and run server in a docker container (#139)
* This is a nightmare

* Checkpointing.... getting closer

* First cut - packaging the server in a docker container

* Remove busted bundles

* Minify build

* Some common commands for building - we're going to look into proper monorepo solutions soon

* Remove dependency on serve-static

* Add web serving, full-stack docker target, and Nvidia container support

* Remove test action graph for now
2024-03-05 13:13:26 -05:00
Christian Benincasa
478791ff18 Massive refactoring - introduce package for common code between
browser/server
2024-01-25 22:55:19 -05:00
Christian Benincasa
413c8d98f6 Working out redo of time slots service 2024-01-17 20:53:17 -05:00
Christian Benincasa
d6f9e6feeb Getting started on some Channel config views 2023-11-16 20:14:00 -05:00
Christian Benincasa
97c9fd8623 Web dev speeding up
Changes:
* Starting to centralize on Zod schemas in a shared types package -
  frontend/backend sharing tyhpes
* Skeletons of some pages. Creating some boilerplate for resuable
  react-query hooks
* Frontend touch-ups
2023-11-13 15:55:14 -05:00
Christian Benincasa
d5707e5229 Trying to get direct streaming working to the web. Also made a new packge with shared types between frontend/backend 2023-11-11 06:16:27 -05:00