Rebrand PodcastYes -> Podcast Distribution AI (podcastdistributionai.com)

This commit is contained in:
Leon Serfaty
2026-06-20 20:12:43 -04:00
parent 3ad90f076f
commit 4fb2645db1
38 changed files with 94 additions and 93 deletions
+1 -1
View File
@@ -15,7 +15,7 @@ export async function stitchMp3(
): Promise<{ data: Buffer; durationSec: number | null }> {
if (segments.length === 0) throw new Error("No audio segments to stitch");
const dir = await fs.mkdtemp(path.join(os.tmpdir(), "podcastyes-"));
const dir = await fs.mkdtemp(path.join(os.tmpdir(), "podcast-distribution-ai-"));
try {
const files: string[] = [];
for (let i = 0; i < segments.length; i++) {
+3 -3
View File
@@ -16,7 +16,7 @@ if (!process.env.BETTER_AUTH_SECRET && process.env.NODE_ENV === "production") {
}
export const auth = betterAuth({
appName: "PodcastYes",
appName: "Podcast Distribution AI",
secret: process.env.BETTER_AUTH_SECRET,
baseURL: process.env.BETTER_AUTH_URL ?? appUrl,
database: prismaAdapter(prisma, { provider: "postgresql" }),
@@ -36,7 +36,7 @@ export const auth = betterAuth({
async sendResetPassword({ user, url }) {
await sendEmail({
to: user.email,
subject: "Reset your PodcastYes password",
subject: "Reset your Podcast Distribution AI password",
html: emailLayout(
"Reset your password",
"Click the button below to choose a new password.",
@@ -52,7 +52,7 @@ export const auth = betterAuth({
async sendVerificationEmail({ user, url }) {
await sendEmail({
to: user.email,
subject: "Verify your email for PodcastYes",
subject: "Verify your email for Podcast Distribution AI",
html: emailLayout(
"Confirm your email",
"Confirm your email address to secure your account.",
+1 -1
View File
@@ -62,7 +62,7 @@ export async function createPaypalSubscription(args: {
plan_id: args.planId,
custom_id: JSON.stringify(args.custom),
application_context: {
brand_name: "PodcastYes",
brand_name: "Podcast Distribution AI",
user_action: "SUBSCRIBE_NOW",
shipping_preference: "NO_SHIPPING",
return_url: `${appUrl()}/billing?status=success&provider=paypal`,
+1 -1
View File
@@ -13,7 +13,7 @@ export interface ActiveBranding {
* Resolve the white-label branding that should apply to the current request.
* Only returns branding when an organization is active AND its plan includes
* the `custom_branding` feature AND a branding row exists. Otherwise null
* (the default PodcastYes look).
* (the default Podcast Distribution AI look).
*/
export async function getActiveBranding(
userId: string,
+2 -2
View File
@@ -5,7 +5,7 @@ interface SendEmailInput {
text?: string;
}
const FROM = process.env.EMAIL_FROM ?? "PodcastYes <noreply@podcastyes.app>";
const FROM = process.env.EMAIL_FROM ?? "Podcast Distribution AI <noreply@podcastdistributionai.com>";
/**
* Send a transactional email via Resend when configured; otherwise log to the
@@ -57,7 +57,7 @@ export function emailLayout(title: string, body: string, cta?: { label: string;
: "";
return `
<div style="font-family:Inter,Arial,sans-serif;max-width:480px;margin:0 auto;padding:24px;color:#0a0a0a">
<h1 style="font-size:20px;margin:0 0 12px">🎙️ PodcastYes</h1>
<h1 style="font-size:20px;margin:0 0 12px">🎙️ Podcast Distribution AI</h1>
<h2 style="font-size:18px;margin:0 0 12px">${escapeHtml(title)}</h2>
<div style="font-size:14px;line-height:1.6;color:#404040">${body}</div>
${button}