Refactor site structure and add comprehensive interactive index

- Move Puzzles and Miscellany under Themes
- Add Contest Problems as new theme
- Create About page with comprehensive site information
- Create InteractiveIndex component with advanced filtering and sorting
- Update navigation to include Index, Themes, and About
- Add pagination (10 items per page) with search and tag filtering
- Update routing structure for new theme organization
- Remove standalone Puzzles and Miscellany pages
- Add new theme pages: /themes/puzzles, /themes/miscellany, /themes/contest-problems
- Update homepage to point to new interactive index
- Maintain consistent layout and styling across all new pages
This commit is contained in:
Neeldhara Misra 2025-07-20 10:07:04 +05:30
parent 85a8298352
commit 3f04e8c7d7
9 changed files with 443 additions and 11 deletions

View file

@ -6,7 +6,10 @@ import {
Database,
Gamepad2,
CreditCard,
Calculator
Calculator,
Puzzle,
Sparkles,
Trophy
} from "lucide-react";
import Layout from "@/components/Layout";
import ThemeCard from "@/components/ThemeCard";
@ -48,6 +51,24 @@ const Themes = () => {
description: "Discover mathematical principles and probability theory through card games and interactive demonstrations.",
path: "/themes/cards-math",
icon: <CreditCard className="w-6 h-6" />
},
{
title: "Puzzles",
description: "Get ready for an engaging collection of educational puzzles designed to challenge your problem-solving skills and reinforce key concepts across multiple disciplines.",
path: "/themes/puzzles",
icon: <Puzzle className="w-6 h-6" />
},
{
title: "Miscellany",
description: "Discover unique educational experiments, creative tools, and innovative interactive content that doesn't fit into traditional categories but sparks curiosity and enhances learning.",
path: "/themes/miscellany",
icon: <Sparkles className="w-6 h-6" />
},
{
title: "Contest Problems",
description: "Practice with problems from programming competitions, mathematical olympiads, and algorithmic challenges with interactive solutions and explanations.",
path: "/themes/contest-problems",
icon: <Trophy className="w-6 h-6" />
}
];