Strip Songs2VID to a payment-free self-hosted OSS core.

Remove Stripe/billing/pricing/marketing, simplify schema and entitlements for unlimited self-host use, and keep auth, encode, and YouTube upload.
This commit is contained in:
Atakan Doğan Özban
2026-08-03 06:52:00 +02:00
parent 506d56fa92
commit 6476bb42a4
108 changed files with 397 additions and 8061 deletions
+4 -15
View File
@@ -3,31 +3,20 @@ import { BRAND_NAME } from "@/lib/branding";
type Props = {
href?: string;
size?: "sm" | "md";
/** Small Beta mark at top-right of the wordmark (public marketing surfaces). */
beta?: boolean;
size?: "sm" | "md" | "lg";
};
export function Logo({ href = "/", size = "md", beta = false }: Props) {
const textSize = size === "sm" ? "text-xl" : "text-2xl";
const betaSize = size === "sm" ? "text-[0.5rem]" : "text-[0.55rem]";
export function Logo({ href = "/", size = "md" }: Props) {
const textSize = size === "sm" ? "text-xl" : size === "lg" ? "text-3xl" : "text-2xl";
const content = (
<span className={`relative inline-flex items-baseline font-bold tracking-tight ${textSize}`}>
<span className="text-white">Songs</span>
<span className="text-red-400">2VID</span>
{beta ? (
<span
className={`pointer-events-none absolute left-full top-0 ml-0.5 -translate-y-1/2 ${betaSize} font-bold uppercase tracking-wider text-red-400`}
aria-hidden="true"
>
Beta
</span>
) : null}
</span>
);
const label = beta ? `${BRAND_NAME} Beta` : BRAND_NAME;
const label = BRAND_NAME;
if (href) {
return (