Files
sofa/docs/next.config.mjs
T
jakeandClaude Opus 4.6 73e5c96bd8 feat: reorganize API around operation domains
Restructure the oRPC contract from 14 resource-oriented routers to 8
domain-oriented routers for a cleaner public API surface.

- Consolidate 7 watch procedures into unified tracking.watch/unwatch
  with scope + ids input (movie, episode, season, series)
- Split dashboard across tracking (stats, history), library
  (continueWatching, upcoming), and discover (recommendations)
- Merge explore + search + discover into single discover router
- Absorb integrations into account.integrations
- Merge system.authConfig into system.publicInfo
- Collapse 6 admin setting endpoints into admin.settings.get/update
- Deduplicate platforms.list + explore.watchProviders into
  discover.platforms
- Add symmetric unwatchMovie/unwatchSeries core functions
- Rename titles.detail→get, titles.recommendations→similar,
  people.detail→get

BREAKING CHANGE: All client API paths have changed. REST paths now
mirror router structure.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 12:36:49 -04:00

43 lines
1013 B
JavaScript

import { createMDX } from "fumadocs-mdx/next";
const withMDX = createMDX();
/** @type {import('next').NextConfig} */
const config = {
serverExternalPackages: ["@takumi-rs/image-response"],
reactStrictMode: true,
turbopack: {
// docs site is essentially self-contained from the rest of the monorepo
root: import.meta.dirname,
},
async redirects() {
return [
{
source: "/support",
destination: "https://github.com/jakejarvis/sofa/discussions",
permanent: false,
},
{
source: "/ios",
destination: "https://apps.apple.com/us/app/sofa-tv-movie-tracker/id6760432427",
permanent: false,
},
{
source: "/testflight",
destination: "https://testflight.apple.com/join/tjSddcaZ",
permanent: false,
},
];
},
async rewrites() {
return [
{
source: "/docs/:path*.mdx",
destination: "/llms.mdx/docs/:path*",
},
];
},
};
export default withMDX(config);