form 1 topics added
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
import { Header } from "@/components/layout/header";
|
||||
import { Footer } from "@/components/layout/footer";
|
||||
import { Sidebar } from "@/components/layout/sidebar";
|
||||
import { MobileNav } from "@/components/layout/mobile-nav";
|
||||
import { LessonsShell } from "@/components/layout/lessons-shell";
|
||||
|
||||
export default function LessonsLayout({
|
||||
children,
|
||||
@@ -11,17 +10,7 @@ export default function LessonsLayout({
|
||||
return (
|
||||
<div className="playground-bg flex min-h-screen flex-col">
|
||||
<Header />
|
||||
<div className="playground-frame relative mx-auto flex w-full max-w-6xl flex-1">
|
||||
<Sidebar />
|
||||
<main className="flex-1 bg-white">
|
||||
<div className="relative p-4 lg:hidden">
|
||||
<MobileNav />
|
||||
</div>
|
||||
<div className="mx-auto max-w-4xl px-4 py-8 sm:px-6 lg:px-8">
|
||||
{children}
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
<LessonsShell>{children}</LessonsShell>
|
||||
<Footer />
|
||||
</div>
|
||||
);
|
||||
|
||||
22
app/lessons/unit-5-integers/negative-fractions/page.tsx
Normal file
22
app/lessons/unit-5-integers/negative-fractions/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { NegativeFractionsExplorer } from "@/components/explorers/negative-fractions-explorer";
|
||||
|
||||
export default function NegativeFractionsPage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 5: Integers", href: "/lessons/unit-5-integers" },
|
||||
{ label: "Negative Fractions" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Negative Fractions</h1>
|
||||
|
||||
<NegativeFractionsExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
22
app/lessons/unit-5-integers/order-compare/page.tsx
Normal file
22
app/lessons/unit-5-integers/order-compare/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { IntegerOrderCompareExplorer } from "@/components/explorers/integer-order-compare-explorer";
|
||||
|
||||
export default function IntegerOrderComparePage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 5: Integers", href: "/lessons/unit-5-integers" },
|
||||
{ label: "Order & Compare" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Order and Compare Integers</h1>
|
||||
|
||||
<IntegerOrderCompareExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
22
app/lessons/unit-6-number-system/place-value/page.tsx
Normal file
22
app/lessons/unit-6-number-system/place-value/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { PlaceValueExplorer } from "@/components/explorers/place-value-explorer";
|
||||
|
||||
export default function PlaceValuePage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 6: Number System", href: "/lessons/unit-6-number-system" },
|
||||
{ label: "Place Value" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Denary Place Value (Base 10)</h1>
|
||||
|
||||
<PlaceValueExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
40
app/lessons/unit-7-coordinates/page.tsx
Normal file
40
app/lessons/unit-7-coordinates/page.tsx
Normal file
@@ -0,0 +1,40 @@
|
||||
import Link from "next/link";
|
||||
import { curriculum } from "@/lib/curriculum";
|
||||
import { Card } from "@/components/ui/card";
|
||||
import { Badge } from "@/components/ui/badge";
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
|
||||
export default function Unit7Overview() {
|
||||
const unit = curriculum[6];
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: `Unit 7: ${unit.title}` },
|
||||
]}
|
||||
/>
|
||||
<div className="mb-10">
|
||||
<Badge variant="unit-7" className="mb-3">Unit 7</Badge>
|
||||
<h1 className="mb-2 text-3xl font-bold tracking-tight">{unit.title}</h1>
|
||||
<p className="text-muted leading-relaxed">{unit.description}</p>
|
||||
</div>
|
||||
<div className="grid gap-4 sm:grid-cols-2">
|
||||
{unit.topics.map((topic, i) => (
|
||||
<Link key={topic.slug} href={`/lessons/${unit.slug}/${topic.slug}`}>
|
||||
<Card accent="unit-7" hover className="group h-full">
|
||||
<div className="mb-2 flex items-center gap-2">
|
||||
<span className="flex h-7 w-7 items-center justify-center rounded-lg bg-unit-7-light text-xs font-bold text-unit-7-dark shadow-[var(--shadow-sm)]">
|
||||
{i + 1}
|
||||
</span>
|
||||
</div>
|
||||
<h3 className="mb-1 font-semibold">{topic.title}</h3>
|
||||
<p className="text-sm leading-relaxed text-muted">{topic.description}</p>
|
||||
</Card>
|
||||
</Link>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
22
app/lessons/unit-7-coordinates/plot-points/page.tsx
Normal file
22
app/lessons/unit-7-coordinates/plot-points/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { PlotPointsExplorer } from "@/components/explorers/plot-points-explorer";
|
||||
|
||||
export default function PlotPointsPage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 7: Coordinates", href: "/lessons/unit-7-coordinates" },
|
||||
{ label: "Plot Points" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Plot Points on the Cartesian Plane</h1>
|
||||
|
||||
<PlotPointsExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
22
app/lessons/unit-7-coordinates/read-coordinates/page.tsx
Normal file
22
app/lessons/unit-7-coordinates/read-coordinates/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { ReadCoordinatesExplorer } from "@/components/explorers/read-coordinates-explorer";
|
||||
|
||||
export default function ReadCoordinatesPage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 7: Coordinates", href: "/lessons/unit-7-coordinates" },
|
||||
{ label: "Read Coordinates" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">State Coordinates of Points</h1>
|
||||
|
||||
<ReadCoordinatesExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
22
app/lessons/unit-8-number-properties/exponents/page.tsx
Normal file
22
app/lessons/unit-8-number-properties/exponents/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { ExponentsExplorer } from "@/components/explorers/exponents-explorer";
|
||||
|
||||
export default function ExponentsPage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 8: Number Properties", href: "/lessons/unit-8-number-properties" },
|
||||
{ label: "Exponents" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Powers and Exponents</h1>
|
||||
|
||||
<ExponentsExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { IdentityInverseExplorer } from "@/components/explorers/identity-inverse-explorer";
|
||||
|
||||
export default function IdentityInversePage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 8: Number Properties", href: "/lessons/unit-8-number-properties" },
|
||||
{ label: "Identity & Inverse" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Identity and Inverse</h1>
|
||||
|
||||
<IdentityInverseExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
22
app/lessons/unit-8-number-properties/number-laws/page.tsx
Normal file
22
app/lessons/unit-8-number-properties/number-laws/page.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
import { NumberLawsExplorer } from "@/components/explorers/number-laws-explorer";
|
||||
|
||||
export default function NumberLawsPage() {
|
||||
return (
|
||||
<div className="space-y-8">
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: "Unit 8: Number Properties", href: "/lessons/unit-8-number-properties" },
|
||||
{ label: "Number Laws" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<h1 className="text-3xl font-bold tracking-tight">Commutative, Associative and Distributive Laws</h1>
|
||||
|
||||
<NumberLawsExplorer />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
40
app/lessons/unit-8-number-properties/page.tsx
Normal file
40
app/lessons/unit-8-number-properties/page.tsx
Normal file
@@ -0,0 +1,40 @@
|
||||
import Link from "next/link";
|
||||
import { curriculum } from "@/lib/curriculum";
|
||||
import { Card } from "@/components/ui/card";
|
||||
import { Badge } from "@/components/ui/badge";
|
||||
import { Breadcrumbs } from "@/components/layout/breadcrumbs";
|
||||
|
||||
export default function Unit8Overview() {
|
||||
const unit = curriculum[7];
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Breadcrumbs
|
||||
items={[
|
||||
{ label: "Lessons", href: "/lessons" },
|
||||
{ label: `Unit 8: ${unit.title}` },
|
||||
]}
|
||||
/>
|
||||
<div className="mb-10">
|
||||
<Badge variant="unit-8" className="mb-3">Unit 8</Badge>
|
||||
<h1 className="mb-2 text-3xl font-bold tracking-tight">{unit.title}</h1>
|
||||
<p className="text-muted leading-relaxed">{unit.description}</p>
|
||||
</div>
|
||||
<div className="grid gap-4 sm:grid-cols-2">
|
||||
{unit.topics.map((topic, i) => (
|
||||
<Link key={topic.slug} href={`/lessons/${unit.slug}/${topic.slug}`}>
|
||||
<Card accent="unit-8" hover className="group h-full">
|
||||
<div className="mb-2 flex items-center gap-2">
|
||||
<span className="flex h-7 w-7 items-center justify-center rounded-lg bg-unit-8-light text-xs font-bold text-unit-8-dark shadow-[var(--shadow-sm)]">
|
||||
{i + 1}
|
||||
</span>
|
||||
</div>
|
||||
<h3 className="mb-1 font-semibold">{topic.title}</h3>
|
||||
<p className="text-sm leading-relaxed text-muted">{topic.description}</p>
|
||||
</Card>
|
||||
</Link>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user