Browse Source

change icons around, minor css changes

drawing-pad
Stephanie Gredell 1 month ago
parent
commit
99dffbb666
  1. BIN
      frontend/public/cupcake.png
  2. BIN
      frontend/public/rainbow.png
  3. BIN
      frontend/public/unicorn-talking.png
  4. BIN
      frontend/public/video-marketing.png
  5. 4
      frontend/src/components/Footer/Footer.tsx
  6. 14
      frontend/src/components/Navbar/Navbar.tsx
  7. 10
      frontend/src/components/VideoGrid/VideoGrid.tsx
  8. 18
      frontend/src/pages/LandingPage.tsx

BIN
frontend/public/cupcake.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
frontend/public/rainbow.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
frontend/public/unicorn-talking.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
frontend/public/video-marketing.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

4
frontend/src/components/Footer/Footer.tsx

@ -4,7 +4,7 @@ export function Footer() {
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"> <div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
<div className="grid grid-cols-1 sm:grid-cols-3 gap-8 mb-8"> <div className="grid grid-cols-1 sm:grid-cols-3 gap-8 mb-8">
<div> <div>
<h3 className="font-bold text-foreground mb-4">Rainbow, Cupcakes and Unicorns</h3> <h3 className="font-bold text-foreground mb-4">Rainbows, Cupcakes and Unicorns</h3>
<p className="text-sm text-muted-foreground"> <p className="text-sm text-muted-foreground">
Making education and fun accessible for every child, completely free. Making education and fun accessible for every child, completely free.
</p> </p>
@ -52,7 +52,7 @@ export function Footer() {
</div> </div>
<div className="border-t border-border pt-8 text-center text-sm text-muted-foreground"> <div className="border-t border-border pt-8 text-center text-sm text-muted-foreground">
<p>© 2025 PlayLearn. Free learning for all children. No ads, no logins, no worries! 🎓</p> <p>© 2025 Rainbows, Cupcakes and Unicorns. Free learning for all children. No ads, no logins, no worries! 🎓</p>
</div> </div>
</div> </div>
</footer> </footer>

14
frontend/src/components/Navbar/Navbar.tsx

@ -72,9 +72,17 @@ export function Navbar() {
<div className="max-w-5xl mx-auto px-4 py-5"> <div className="max-w-5xl mx-auto px-4 py-5">
<div className="flex items-center gap-3 justify-between"> <div className="flex items-center gap-3 justify-between">
<Link to="/" className="flex items-center gap-3"> <Link to="/" className="flex items-center gap-3">
<span className="text-4xl">🌈</span> <img
<h1 className="text-3xl md:text-4xl font-bold text-foreground">Rainbow, Cupcakes & Unicorns</h1> src="/rainbow.png"
<span className="text-4xl">🧁</span> alt="Rainbow"
className="h-10 w-10 md:h-12 md:w-12 object-contain"
/>
<h1 className="text-3xl md:text-4xl font-bold text-foreground">Rainbows, Cupcakes & Unicorns</h1>
<img
src="/cupcake.png"
alt="Cupcake"
className="h-10 w-10 md:h-12 md:w-12 object-contain"
/>
</Link> </Link>
<div className="flex items-center gap-3"> <div className="flex items-center gap-3">

10
frontend/src/components/VideoGrid/VideoGrid.tsx

@ -76,7 +76,7 @@ export function VideoGrid({
<button <button
onClick={() => onPageChange(page - 1)} onClick={() => onPageChange(page - 1)}
disabled={page === 1} disabled={page === 1}
className="px-4 py-2 bg-secondary text-secondary-foreground border-none rounded-full cursor-pointer text-sm font-medium transition-all text-white shadow-lg hover:-translate-y-0.5 hover:shadow-xl disabled:opacity-50 disabled:cursor-not-allowed" className="text-sm font-semibold px-3 py-2 rounded-full transition-all active:scale-95 bg-white text-foreground border-2 border-primary hover:bg-pink-50 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-white"
> >
Previous Previous
</button> </button>
@ -98,10 +98,10 @@ export function VideoGrid({
<button <button
key={pageNum} key={pageNum}
onClick={() => onPageChange(pageNum)} onClick={() => onPageChange(pageNum)}
className={`w-9 h-9 bg-card border border-transparent rounded-full cursor-pointer text-sm font-medium transition-all text-foreground hover:bg-primary/10 hover:border-primary/50 ${ className={`text-sm font-semibold px-3 py-2 rounded-full transition-all active:scale-95 ${
page === pageNum page === pageNum
? 'bg-gradient-to-r from-primary to-secondary text-white border-transparent' ? 'bg-primary text-primary-foreground shadow-md'
: '' : 'bg-white text-foreground border-2 border-primary hover:bg-pink-50'
}`} }`}
> >
{pageNum} {pageNum}
@ -113,7 +113,7 @@ export function VideoGrid({
<button <button
onClick={() => onPageChange(page + 1)} onClick={() => onPageChange(page + 1)}
disabled={page === totalPages} disabled={page === totalPages}
className="px-4 py-2 bg-secondary text-secondary-foreground border-none rounded-full cursor-pointer text-sm font-medium transition-all text-white shadow-lg hover:-translate-y-0.5 hover:shadow-xl disabled:opacity-50 disabled:cursor-not-allowed" className="text-sm font-semibold px-3 py-2 rounded-full transition-all active:scale-95 bg-white text-foreground border-2 border-primary hover:bg-pink-50 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-white"
> >
Next Next
</button> </button>

18
frontend/src/pages/LandingPage.tsx

@ -44,7 +44,23 @@ export function LandingPage() {
} }
}} }}
> >
<div className="mb-3 text-5xl">{emoji}</div> <div className="mb-3">
{app.id === 'videos' ? (
<img
src="/video-marketing.png"
alt="Video App"
className="w-20 h-20 object-contain"
/>
) : app.id === 'speechsounds' ? (
<img
src="/unicorn-talking.png"
alt="Speech Sounds"
className="w-20 h-20 object-contain"
/>
) : (
<span className="text-5xl">{emoji}</span>
)}
</div>
<h3 className="text-xl font-bold mb-1">{app.name}</h3> <h3 className="text-xl font-bold mb-1">{app.name}</h3>
<p className="text-sm opacity-75">{app.description}</p> <p className="text-sm opacity-75">{app.description}</p>
</Link> </Link>

Loading…
Cancel
Save