diff --git a/apps/amethyst/app/(tabs)/(stamp)/stamp/success.tsx b/apps/amethyst/app/(tabs)/(stamp)/stamp/success.tsx index 8642b49..8db0236 100644 --- a/apps/amethyst/app/(tabs)/(stamp)/stamp/success.tsx +++ b/apps/amethyst/app/(tabs)/(stamp)/stamp/success.tsx @@ -37,7 +37,7 @@ export default function StepThree() { - Play submitted + Play submitted You can view your play{" "} {play.trackName} diff --git a/apps/amethyst/app/(tabs)/:o/music/[artist]/[release]/index.tsx b/apps/amethyst/app/(tabs)/:o/music/[artist]/[release]/index.tsx index 3ee8eb0..0fbef07 100644 --- a/apps/amethyst/app/(tabs)/:o/music/[artist]/[release]/index.tsx +++ b/apps/amethyst/app/(tabs)/:o/music/[artist]/[release]/index.tsx @@ -152,7 +152,7 @@ export default function AlbumDetail() { Album {album.name} diff --git a/apps/amethyst/app/(tabs)/:o/music/[artist]/index.tsx b/apps/amethyst/app/(tabs)/:o/music/[artist]/index.tsx index 2a4d162..b1f6029 100644 --- a/apps/amethyst/app/(tabs)/:o/music/[artist]/index.tsx +++ b/apps/amethyst/app/(tabs)/:o/music/[artist]/index.tsx @@ -93,7 +93,7 @@ export default function ArtistDetail() { Artist {artist.name} diff --git a/apps/amethyst/app/(tabs)/notifications.tsx b/apps/amethyst/app/(tabs)/notifications.tsx index c4f7050..94cbc02 100644 --- a/apps/amethyst/app/(tabs)/notifications.tsx +++ b/apps/amethyst/app/(tabs)/notifications.tsx @@ -18,7 +18,7 @@ export default function Notifications() { - + {status === "loggedIn" ? "Notifications are coming later." : "You must be signed in to view your notifications."} diff --git a/apps/amethyst/app/(tabs)/profile/[handle].tsx b/apps/amethyst/app/(tabs)/profile/[handle].tsx index 8ea314e..296558a 100644 --- a/apps/amethyst/app/(tabs)/profile/[handle].tsx +++ b/apps/amethyst/app/(tabs)/profile/[handle].tsx @@ -131,7 +131,7 @@ export default function ProfileScreen() { )} - + {profile?.displayName || actor} {profile?.handle && ( diff --git a/apps/amethyst/app/(tabs)/search/index.tsx b/apps/amethyst/app/(tabs)/search/index.tsx index 60fef7d..31dce45 100644 --- a/apps/amethyst/app/(tabs)/search/index.tsx +++ b/apps/amethyst/app/(tabs)/search/index.tsx @@ -355,7 +355,7 @@ export default function Explore() { {!hasQuery && ( - + Find something playing diff --git a/apps/amethyst/app/_layout.tsx b/apps/amethyst/app/_layout.tsx index 230a2b5..90ca53e 100644 --- a/apps/amethyst/app/_layout.tsx +++ b/apps/amethyst/app/_layout.tsx @@ -62,10 +62,7 @@ SplashScreen.preventAutoHideAsync(); export default function RootLayout() { const [loaded, error] = useFonts({ - CrimsonPro: require("../assets/fonts/CrimsonPro-VariableFont_wght.ttf"), - "CrimsonPro Italic": require("../assets/fonts/CrimsonPro-Italic-VariableFont_wght.ttf"), "DM Sans": require("../assets/fonts/DMSans-VariableFont_opsz,wght.ttf"), - Fraunces: require("../assets/fonts/Fraunces-VariableFont_SOFT,WONK,opsz,wght.ttf"), PlexMono: require("../assets/fonts/IBMPlexMono-Regular.ttf"), ...FontAwesome.font, }); diff --git a/apps/amethyst/app/auth/login.tsx b/apps/amethyst/app/auth/login.tsx index 57d593c..24bba28 100644 --- a/apps/amethyst/app/auth/login.tsx +++ b/apps/amethyst/app/auth/login.tsx @@ -242,7 +242,7 @@ const LoginScreen = () => { /> - + Sign in to Teal diff --git a/apps/amethyst/app/auth/logoutModal.tsx b/apps/amethyst/app/auth/logoutModal.tsx index d6b8bf4..723f654 100644 --- a/apps/amethyst/app/auth/logoutModal.tsx +++ b/apps/amethyst/app/auth/logoutModal.tsx @@ -25,7 +25,7 @@ export default function ModalScreen() { className="absolute right-2 top-2 text-muted-foreground hover:text-foreground" name="x" /> - + Sign out of Teal? diff --git a/apps/amethyst/app/auth/options.tsx b/apps/amethyst/app/auth/options.tsx index 3261a22..5b03889 100644 --- a/apps/amethyst/app/auth/options.tsx +++ b/apps/amethyst/app/auth/options.tsx @@ -16,7 +16,7 @@ export default function AuthOptions() { }} /> - + Welcome to Teal diff --git a/apps/amethyst/app/auth/signup.tsx b/apps/amethyst/app/auth/signup.tsx index 33a9a4f..71839ac 100644 --- a/apps/amethyst/app/auth/signup.tsx +++ b/apps/amethyst/app/auth/signup.tsx @@ -25,7 +25,7 @@ const LoginScreen = () => { size={24} /> - + Sign up via the Atmosphere diff --git a/apps/amethyst/app/onboarding/descriptionPage.tsx b/apps/amethyst/app/onboarding/descriptionPage.tsx index 2676877..862d8a4 100644 --- a/apps/amethyst/app/onboarding/descriptionPage.tsx +++ b/apps/amethyst/app/onboarding/descriptionPage.tsx @@ -29,7 +29,7 @@ const DescriptionPage: React.FC = ({ - + Add a liner note. diff --git a/apps/amethyst/app/onboarding/displayNamePage.tsx b/apps/amethyst/app/onboarding/displayNamePage.tsx index f03d19d..66b4d37 100644 --- a/apps/amethyst/app/onboarding/displayNamePage.tsx +++ b/apps/amethyst/app/onboarding/displayNamePage.tsx @@ -31,7 +31,7 @@ const DisplayNamePage: React.FC = ({ - + What should listeners call you? diff --git a/apps/amethyst/app/onboarding/imageSelectionPage.tsx b/apps/amethyst/app/onboarding/imageSelectionPage.tsx index bc5ddcd..ce0b7d1 100644 --- a/apps/amethyst/app/onboarding/imageSelectionPage.tsx +++ b/apps/amethyst/app/onboarding/imageSelectionPage.tsx @@ -53,7 +53,7 @@ const ImageSelectionPage: React.FC = ({ - Set the artwork. + Set the artwork. Add an avatar and banner, or keep the images from your Bluesky profile. Both are optional. diff --git a/apps/amethyst/app/onboarding/index.tsx b/apps/amethyst/app/onboarding/index.tsx index a858374..3fc56d8 100644 --- a/apps/amethyst/app/onboarding/index.tsx +++ b/apps/amethyst/app/onboarding/index.tsx @@ -231,7 +231,7 @@ export default function OnboardingPage() { - + Create your Teal profile @@ -272,7 +272,7 @@ export default function OnboardingPage() { - + Your Teal profile is ready @@ -295,7 +295,7 @@ export default function OnboardingPage() { - + {OnboardingSubmissionSteps[submissionStep]} @@ -351,7 +351,7 @@ export default function OnboardingPage() { - + Make it yours. diff --git a/apps/amethyst/components/songish/PlayFeedCard.tsx b/apps/amethyst/components/songish/PlayFeedCard.tsx index fa9f4b8..56d2153 100644 --- a/apps/amethyst/components/songish/PlayFeedCard.tsx +++ b/apps/amethyst/components/songish/PlayFeedCard.tsx @@ -6,7 +6,7 @@ import { Icon } from "@/lib/icons/iconWithClassName"; import { coverArtUrl, displayArtists, getBlueskyProfile } from "@/lib/teal/api"; import { musicTrackHref } from "@/lib/teal/routes"; import { cn, timeAgo } from "@/lib/utils"; -import { Disc3, Play } from "lucide-react-native"; +import { Disc3 } from "lucide-react-native"; import type { PlayView } from "@teal/lexicons/src/types/fm/teal/alpha/feed/defs"; @@ -131,7 +131,7 @@ export default function PlayFeedCard({ play, compact }: PlayFeedCardProps) { - + {play.trackName} - + {art ? ( )} - - - diff --git a/apps/amethyst/components/songish/RightRail.tsx b/apps/amethyst/components/songish/RightRail.tsx index 52aa992..7b9a946 100644 --- a/apps/amethyst/components/songish/RightRail.tsx +++ b/apps/amethyst/components/songish/RightRail.tsx @@ -44,7 +44,7 @@ export default function RightRail() { Trending now - + Live from the network diff --git a/apps/amethyst/components/songish/SongishShell.tsx b/apps/amethyst/components/songish/SongishShell.tsx index c9b6e1e..769b405 100644 --- a/apps/amethyst/components/songish/SongishShell.tsx +++ b/apps/amethyst/components/songish/SongishShell.tsx @@ -34,7 +34,7 @@ function RecordLogo() { - Teal + Teal listening network @@ -191,7 +191,7 @@ export function SectionHeading({ {eyebrow} )} - {title} + {title} {detail && ( @@ -228,7 +228,7 @@ export default function SongishShell({ > {title && ( - + {title} )} diff --git a/apps/amethyst/global.css b/apps/amethyst/global.css index 71aa211..2378857 100644 --- a/apps/amethyst/global.css +++ b/apps/amethyst/global.css @@ -4,7 +4,7 @@ @layer base { :root { - --base-font-family: "EBGaramond"; + --base-font-family: "DM Sans"; --background: 48 33% 97%; --foreground: 174 33% 10%; --muted: 162 16% 91%; diff --git a/apps/amethyst/tailwind.config.js b/apps/amethyst/tailwind.config.js index 2bbf88c..a2327dd 100644 --- a/apps/amethyst/tailwind.config.js +++ b/apps/amethyst/tailwind.config.js @@ -1,4 +1,4 @@ -import { hairlineWidth, platformSelect } from "nativewind/theme"; +import { hairlineWidth } from "nativewind/theme"; /** @type {import('tailwindcss').Config} */ export const darkMode = "class"; @@ -8,20 +8,7 @@ export const theme = { extend: { fontFamily: { sans: "DM Sans", - "serif-old": "CrimsonPro", - "serif-old-italic": "CrimsonPro Italic", - serif: "Fraunces", - // serif: platformSelect({ - // android: "Fraunces", - // ios: "Fraunces", - // web: 'Fraunces, Georgia, Cambria, "Times New Roman", Times, serif', - // }), mono: "PlexMono", - // mono: platformSelect({ - // android: "PlexMono", - // ios: ["PlexMono"], - // web: 'PlexMono, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace', - // }), }, colors: { border: "hsl(var(--border))", diff --git a/todo.md b/todo.md index 5cda3b8..6341837 100644 --- a/todo.md +++ b/todo.md @@ -50,6 +50,7 @@ This file is the working handoff for the Songish-style Teal clone. Keep it updat ## Next: Amethyst UI - [x] Add Explore search for users, songs, artists, and albums. +- [ ] Add album-cover preview controls only after Teal has a real audio preview source and playback behavior. - [ ] Finish profile avatar and banner blob URL rendering. - [x] Add artist and release detail routes in addition to track detail. - [x] Refresh the shared UI system and apply it across feed, search, profiles, music pages, sign-in, onboarding, settings, and manual stamping.