import { useEffect, useState } from "react"; export default function NowPlaying() { const [data, setData] = useState(null); const [error, setError] = useState(null); useEffect(() => { const fetchProjectData = async () => { try { const res = await fetch( "https://pds.indexx.dev/xrpc/com.atproto.repo.listRecords?repo=did%3Aplc%3Asfjxpxxyvewb2zlxwoz2vduw&collection=dev.indexx.www.project&limit=100&reverse=false", ); if (!res.ok) throw new Error(`HTTP ${res.status}`); const data = await res.json(); const projects = data.records.map((record) => record.value); setData(projects.map((project) => ({ title: project.name, description: project.description, date: project.dateLabel, href: project.url, note: project.note ?? "", }))); } catch (err) { console.error("Fetch failed:", err); setError(err.message); } }; fetchProjectData(); }, []); if (error) return Error: {error}; if (!data) return null; return (
My Recent Projects
); }