diff --git a/src/components/ControllerContainer.astro b/src/components/ControllerContainer.astro
index 0d8c3d0e..645f7b84 100644
--- a/src/components/ControllerContainer.astro
+++ b/src/components/ControllerContainer.astro
@@ -1,75 +1,73 @@
---
-import ImageIcon from "@/assets/icons/image.svg";
+import CaseToggle from "@/components/draw/CaseToggle.astro";
+import FontToggle from "@/components/draw/FontToggle.astro";
+import ImageToggle from "@/components/draw/ImgToggle.astro";
+import ColorToggle from "@/components/draw/ColorToggle.astro";
+import BackgroundToggle from "@/components/draw/BgToggle.astro";
+import ResetButton from "@/components/draw/ResetButton.astro";
+import SharePopover from "@/components/ShareButton.astro";
+import Help from "@/components/Help.astro";
+import Speak from "@/components/Speaker.astro";
+import KeyboardTrigger from "@/components/KeyboardTrigger.astro";
---
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
+
diff --git a/src/components/DateConvertor.astro b/src/components/DateConvertor.astro
new file mode 100644
index 00000000..4fee1d31
--- /dev/null
+++ b/src/components/DateConvertor.astro
@@ -0,0 +1,216 @@
+---
+import vedicData from "@/data/vedic.json";
+
+const { units } = vedicData;
+---
+
+
+
+
+
Vedic Unit Converter
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/DrawKeyboard.astro b/src/components/DrawKeyboard.astro
index 2d568b79..688fb8aa 100644
--- a/src/components/DrawKeyboard.astro
+++ b/src/components/DrawKeyboard.astro
@@ -1,7 +1,6 @@
---
import { alphabetMapper } from "@/mappers/alphabet";
import { IMAGE_DIR, colorBox, fontBox, numberBox, fontColor } from "@/utils/constants";
-import Keyboard from "@/components/Keyboard.astro";
---
@@ -20,7 +19,6 @@ import Keyboard from "@/components/Keyboard.astro";
+
+
diff --git a/src/components/ThemeProvider.astro b/src/components/ThemeProvider.astro
index 23a2a89a..3f03e697 100644
--- a/src/components/ThemeProvider.astro
+++ b/src/components/ThemeProvider.astro
@@ -32,7 +32,6 @@
// Listen to global theme-change events
document.addEventListener("theme-change", (e) => {
- console.log("Theme changed to:", e.detail.theme);
setTheme(e.detail.theme);
});
diff --git a/src/components/Timeline.astro b/src/components/Timeline.astro
new file mode 100644
index 00000000..2d8d8b99
--- /dev/null
+++ b/src/components/Timeline.astro
@@ -0,0 +1,76 @@
+---
+import vedicData from "@/data/vedic.json";
+const { units } = vedicData;
+---
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Vedic Time Journey
+
+ {
+ units.map((unit) => (
+
+
+
+
{unit.name}
+
+
+
{unit.firstEquivalent.toLocaleString()}
+
{unit.secondEquivalent.toLocaleString()}
+
{unit.thirdEquivalent.toLocaleString()}
+
+
+
+ ))
+ }
+
+
+
+
diff --git a/src/components/Today.astro b/src/components/Today.astro
new file mode 100644
index 00000000..7c8ba253
--- /dev/null
+++ b/src/components/Today.astro
@@ -0,0 +1,154 @@
+---
+import { fullEnglish, fullHindi, styleOption, tithiNames } from "@/utils/constants.ts";
+const disclaimer = `The tithi (lunar day) and paksha (lunar phase) displayed here are calculated based on a numeric logic following the Gregorian calendar.
+ Due to technical limitations, this may not always match the exact tithi according to traditional Hindu calendar calculations
+ which consider actual astronomical positions of the sun and moon. For precise religious observances,
+ please consult authoritative panchang sources.`;
+---
+
+
+
+
+
+
diff --git a/src/components/about/FeaturesSection.astro b/src/components/about/FeaturesSection.astro
index 6c134005..7aedfa2b 100644
--- a/src/components/about/FeaturesSection.astro
+++ b/src/components/about/FeaturesSection.astro
@@ -4,92 +4,118 @@ interface Feature {
description: string;
icon: string;
color: string;
+ path?: string;
+ isActive?: boolean;
}
const features: Feature[] = [
{
title: "Alphabet Adventures",
description:
- "Embark on a journey through letters with interactive games that teach English, Hindi, and Braille. Track progress and explore creative representations like fruits, animals, countries, and geeky codes!",
+ "Embark on a journey through letters with interactive games that teach English, Hindi, and Braille. Track progress and explore creative representations like fruits and animals!",
icon: "🔤",
- color: "#3b82f6"
+ color: "#3b82f6",
+ path: "/alphabets",
+ isActive: true
},
{
title: "Culture Explorer",
description:
"Travel through India's rich heritage with immersive maps and family tree explorations. Discover your roots through Gotra, Deity, and Caste search with downloadable clan data.",
icon: "🗺️",
- color: "#10b981"
+ color: "#3b82f6",
+ path: "/map",
+ isActive: true
},
{
title: "Word Playground",
description:
"Challenge your mind with engaging puzzles and vocabulary hunts. Find words like CAT, DOG, SUN, and MOON while tracking your progress.",
icon: "🎲",
- color: "#f59e0b"
+ color: "#3b82f6",
+ path: "/hidenseek",
+ isActive: true
},
{
title: "Math Quest",
description:
"Dive into numbers with fun challenges and games. Learn various number systems including English, Hindi, Roman, and Morse code formats.",
icon: "➕",
- color: "#f43f5e"
+ color: "#3b82f6",
+ path: "/math",
+ isActive: true
},
{
title: "Draw & Learn",
description:
"Tap letters to display matching images, then draw over them with customizable colors and backgrounds. A fun blend of art and alphabet learning!",
icon: "✏️",
- color: "#ec4899"
+ color: "#3b82f6",
+ path: "/draw",
+ isActive: true
},
{
title: "Indic Varnmala",
description:
"Explore the vowels and consonants of different Indian languages. Compare scripts and sounds across regions in a simple, visual way.",
icon: "🅰️",
- color: "#8b5cf6"
+ color: "#3b82f6",
+ path: "/indic",
+ isActive: true
},
{
title: "Knowledge Glossary",
description:
"Learn about months, days, sun signs, country flags, seasons, colors, shapes, and times of the day in a fun and accessible format.",
icon: "📖",
- color: "#6366f1"
+ color: "#3b82f6",
+ path: "/glossary",
+ isActive: true
},
{
title: "Tithi & Time Tools",
description:
"Explore traditional lunar calendar details alongside modern timestamps. Includes unit converters for daily use.",
icon: "⏳",
- color: "#14b8a6"
+ color: "#3b82f6",
+ path: "/vedic",
+ isActive: true
},
{
title: "Creative Studio",
description:
"Design beautiful quotes or custom text visuals with the Text and Quote Designer tools — perfect for creative expression.",
icon: "🖌️",
- color: "#ef4444"
+ color: "#3b82f6",
+ path: "/canvas",
+ isActive: true
},
{
title: "Display Modes",
description:
"Visualize alphabets interactively: build vertical stacks, create flowing queues, or swipe through sliders in fun display formats.",
icon: "🧩",
- color: "#0ea5e9"
+ color: "#3b82f6",
+ path: "/gallery",
+ isActive: true
},
{
title: "Varnmala Learning Hub",
description:
- "Learn and practice alphabets with tools for reading, writing, listening, and drawing — including Barahkhadi and interactive speak-to-draw modes.",
+ "Learn and practice alphabets with tools for reading, writing, listening, and drawing interactive speak-to-draw modes.",
icon: "📖",
- color: "#8b5cf6"
+ color: "#3b82f6",
+ path: "/varnmala",
+ isActive: true
},
{
title: "Word Hunt",
description:
"Explore a word discovery game where you find hidden words while keeping track of clicks and progress in an interactive way.",
icon: "🔍",
- color: "#f97316"
+ color: "#3b82f6",
+ path: "/crossword",
+ isActive: true
}
];
---
@@ -101,61 +127,145 @@ const features: Feature[] = [
diff --git a/src/components/about/HeroSection.astro b/src/components/about/HeroSection.astro
index cda00a9d..7dd50ab5 100644
--- a/src/components/about/HeroSection.astro
+++ b/src/components/about/HeroSection.astro
@@ -1,5 +1,6 @@
---
-import Logo from "@/assets/icons/logo.svg";
+import { Image } from "astro:assets";
+import LogoImage from "/public/assets/images/ABCD.png";
interface Props {
appName: string;
@@ -10,20 +11,16 @@ const { appName } = Astro.props;
-
+
Learning Made Magical!
At {appName}, we transform education into captivating adventures that ignite young minds. Our interactive platform
takes children on an unforgettable journey through letters, words, and diverse cultures.
+ Our program engages kids in core subjects like early literacy, reading, writing, language, and math, while
+ encouraging creativity and building social-emotional skills.
+
+
+
+
😀 Joyful
+
+ Five whimsical, charming characters—including narrator Kodi Bear—guide kids through activities and stories.
+
+
+
+
🤩 Engaging
+
+ Original interactive activities, books, animated videos, games, and creative lessons captivate children's
+ attention.
+
+
+
+
🏫 Developed by experts
+
+ abcdkbd was developed in collaboration with learning experts at Stanford and aligned with the Head Start Early
+ Learning Outcomes Framework and Common Core Standards.
+
+
+
+
+
+
+
+
+
diff --git a/src/components/home/TestimonialsSection.astro b/src/components/home/TestimonialsSection.astro
new file mode 100644
index 00000000..1c5592df
--- /dev/null
+++ b/src/components/home/TestimonialsSection.astro
@@ -0,0 +1,21 @@
+---
+import "@/assets/styles/home/testimonials-section.css";
+import testimonials from "@/data/testimonials.json";
+---
+
+
+
Parents love us
+
+ ★★★★★
+
+
+ {
+ testimonials.map((testimonial) => (
+
+
"{testimonial.text}"
+
{testimonial.author}
+
+ ))
+ }
+
+
diff --git a/src/components/survey.astro b/src/components/survey.astro
new file mode 100644
index 00000000..df1161e4
--- /dev/null
+++ b/src/components/survey.astro
@@ -0,0 +1,246 @@
+---
+import { type SurveyData, QuestionTypeEnum } from "@/types/survey";
+interface Props {
+ data: SurveyData;
+}
+const { data } = Astro.props;
+---
+
+
+
+
{data.surveyTitle}
+
{data.description}
+
+
+
+
+
+
+
+
+
Preview Your Response
+
Please review your answers before submitting
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/content.config.ts b/src/content.config.ts
index fc9cb1b9..879ff20a 100644
--- a/src/content.config.ts
+++ b/src/content.config.ts
@@ -12,6 +12,7 @@ export const blogSchema = z.object({
tags: z.array(z.string()).default(["rz"]),
draft: z.boolean().default(false),
author: z.string().optional(),
+ image: z.string().optional(),
description: z.string().optional()
});
@@ -22,6 +23,26 @@ export const articleSchema = z.object({
date: z.date().optional()
});
+export const storySchema = z.object({
+ title: z.string().max(80),
+ slug: z
+ .string()
+ .optional()
+ .transform((val) => (val ? val.toLowerCase().replace(/\s+/g, "-") : undefined)),
+ publishDate: z
+ .string()
+ .or(z.date())
+ .transform((val) => new Date(val)),
+ tags: z.array(z.string()).default(["story"]),
+ draft: z.boolean().default(false),
+ author: z.string().optional(),
+ image: z.string().optional(),
+ description: z.string().optional(),
+ category: z.string().optional(),
+ readingTime: z.number().optional(),
+ featured: z.boolean().default(false)
+});
+
export const collections = {
blogs: defineCollection({
loader: glob({ pattern: "**/*.md", base: "./src/content/blog" }),
@@ -30,7 +51,12 @@ export const collections = {
articles: defineCollection({
loader: glob({ pattern: "**/*.md", base: "./src/content/article" }),
schema: articleSchema
+ }),
+ stories: defineCollection({
+ loader: glob({ pattern: "**/*.md", base: "./src/content/stories" }),
+ schema: storySchema
})
};
export type BlogSchema = z.infer;
+export type StorySchema = z.infer;
diff --git a/src/content/PRIVACY.md b/src/content/PRIVACY.md
new file mode 100644
index 00000000..c4b9834a
--- /dev/null
+++ b/src/content/PRIVACY.md
@@ -0,0 +1,134 @@
+# Privacy Policy
+
+_Last Updated: July 16,2025_
+
+Welcome to **abcdkbd.com**! Your child’s privacy and safety are our highest priority.
+This Privacy Policy outlines how we handle personal data in compliance with the **Digital Personal Data Protection Act, 2023 (India)** and international child privacy standards.
+
+---
+
+## 1. About Us
+
+**abcdkbd.com** ("we", "us", or "our") is an educational website built to support safe and engaging learning experiences for children. Our services are free to use, ad-free, and designed for young learners under parental guidance.
+
+---
+
+## 2. Applicability
+
+This policy applies to all users, particularly **children under the age of 18**, and explains how we collect, store, use, and protect data.
+
+---
+
+## 3. What Information We Collect
+
+We collect only the minimum necessary information:
+
+### a. Automatically Collected (Non-Personal)
+
+- Browser type, screen size, device type
+- General usage patterns (pages visited, time on site)
+- IP address (used anonymously for analytics)
+
+### b. Optional User-Provided
+
+- Nickname or screen name (no real names required)
+- Language or learning preferences (optional)
+
+> ✅ We **do not** collect or request phone numbers, email addresses, home addresses, or real names from children.
+
+---
+
+## 4. Purpose of Data Use
+
+We use collected data only for the following:
+
+- Improving website content and learning tools
+- Maintaining platform functionality and accessibility
+- Ensuring safety and preventing abuse
+- Aggregated analytics for internal insights
+
+---
+
+## 5. Lawful Basis for Processing (As per DPDP Act)
+
+We process data:
+
+- With **explicit consent** from a parent or guardian (for children under 18)
+- For a **legitimate purpose** as defined under the DPDP Act, i.e., educational service delivery
+
+---
+
+## 6. Storage and Security
+
+We follow industry best practices to secure your data:
+
+- End-to-end HTTPS encryption
+- No storage of personal data in public databases
+- Local-first or in-memory storage where possible
+
+Data is stored only as long as needed for the intended purpose and securely deleted afterward.
+
+---
+
+## 7. Data Sharing and Disclosure
+
+We **do not**:
+
+- Sell or rent data
+- Share data with advertising or third-party marketing companies
+
+We may use privacy-focused tools (like anonymized analytics providers) strictly under Indian and global child data safety regulations.
+
+---
+
+## 8. Cookies and Tracking
+
+We use **essential cookies** only for:
+
+- Remembering language or accessibility settings
+- Session management (login persistence if used)
+
+No tracking or profiling cookies are used. You can disable cookies in your browser settings if preferred.
+
+---
+
+## 9. Rights of Parents and Guardians
+
+As a parent or legal guardian, you have the right to:
+
+- Request access to your child’s data
+- Request correction or deletion of data
+- Withdraw consent at any time
+
+Please contact: **[abcdkbd@outlook.com](mailto:abcdkbd@outlook.com)** with the subject **"Privacy Request"**
+
+---
+
+## 10. Grievance Redressal
+
+In case of privacy concerns, you may contact our Grievance Officer:
+
+**Grievance Officer**: Keshav Mohta
+**Email**: [recusrivezero@outlook.com](mailo:recursivezero@outlook.com)
+**Address**: Bengaluru, Karnataka (india)
+
+We will respond within 7 working days, as mandated by the DPDP Act.
+
+---
+
+## 11. Changes to This Policy
+
+We may update this policy to reflect changes in law or our practices. All updates will be posted here with the updated date.
+
+---
+
+## 12. Contact Us
+
+For general inquiries or questions:
+
+**Email**: [abcdkbd@outlook.com](mailto:abcdkbd@outlook.com)
+**Website**: [abcdkbd.com](https://abcdkbd.com)
+
+---
+
+Thank you for trusting **abcdkbd.com** with your learning journey!
diff --git a/src/content/about.md b/src/content/about.md
new file mode 100644
index 00000000..ab2bae5c
--- /dev/null
+++ b/src/content/about.md
@@ -0,0 +1,60 @@
+# About Us
+
+At **abcdkbd**, we transform education into captivating adventures that ignite young minds. Our interactive platform takes children on an unforgettable journey through letters, words, and diverse cultures.
+
+## 🎯 Helping Children Learn, Play, and Grow
+
+We’re building a fun, engaging, and interactive learning platform designed especially for elementary school children to explore, understand, and love the world of letters, numbers, and basic concepts.
+
+---
+
+## 🚀 Our Mission
+
+To make early education joyful and accessible using simple, child-friendly digital tools that inspire curiosity, creativity, and confidence.
+
+---
+
+## 👨🏫 Who We Are
+
+We are a passionate group of educators, designers, and developers who believe learning should be playful, meaningful, and rooted in real understanding.
+Based in India, we aim to support teachers, parents, and schools by providing high-quality,curriculum-aligned educational content.
+
+---
+
+## 📚 What We Offer
+
+- Alphabet & number games
+- Simple math & reading practice
+- Interactive storytelling
+- Coloring & memory activities
+- Multilingual elementary learning
+- No distractions – ad-free, safe environment
+
+---
+
+## 🧠 Why Choose Us
+
+- Designed with child psychology in mind
+- Supports classroom and home learning
+- Works on mobile and desktop
+- Offline access available
+- Trusted by teachers and parents
+
+---
+
+## 💡 Our Core Values
+
+- **Simplicity** – Easy-to-use design for every age
+- **Inclusion** – Respecting every learner’s needs
+- **Fun-first learning** – Making learning an adventure
+- **Respect** – For every child’s pace and potential
+- **Continuous improvement** – We listen, learn, and grow
+
+---
+
+## Contact
+
+We’d love to hear from you! Please reach out to us at .
+We’re always looking to collaborate with educators and contributors
+who believe in the power of playful learning. Got feedback or ideas?
+👉 **Get in touch with us → [abcdkbd@outlook.com](mailto:abcdkbd@outlook.com)**
diff --git a/src/content/article/cookies.md b/src/content/article/cookies.md
new file mode 100644
index 00000000..927a44aa
--- /dev/null
+++ b/src/content/article/cookies.md
@@ -0,0 +1,75 @@
+---
+title: "Cookies Policy"
+author: "Admin"
+---
+
+## 🍪 Cookies Policy
+
+### 1. **What Are Cookies?**
+
+Cookies are small text files stored on your device when you visit a website. They help the site remember your preferences and improve your experience.
+
+---
+
+### 2. **Types of Cookies We Use**
+
+#### a. **Essential Cookies**
+
+These are necessary for the website to function properly. For example:
+
+- Session management
+- Login/authentication
+- Security
+
+#### b. **Analytics Cookies**
+
+Used to collect anonymous usage data to improve our website (e.g., via Google Analytics).
+
+- Page views, clicks, and user flow
+- Device/browser info
+
+#### c. **Preference Cookies**
+
+Remember your choices, such as:
+
+- Language selection
+- Theme (light/dark mode)
+
+#### d. **Marketing/Third-Party Cookies**
+
+Used to deliver personalized ads or integrate third-party tools.
+
+- Google Ads
+- Social media embeds (YouTube, Twitter, etc.)
+
+---
+
+### 3. **How You Can Control Cookies**
+
+You can manage or delete cookies via:
+
+- **Browser settings** (clear cookies, block third-party cookies)
+- **Cookie banner** on our site (accept/decline categories)
+- Tools like [YourAdChoices](https://youradchoices.com/) (for ad personalization)
+
+---
+
+### 4. **Third-Party Cookies**
+
+We may use third-party services that place their own cookies. These services have their own policies:
+
+- [Google Analytics](https://support.google.com/analytics/answer/4597324?hl=en)
+
+---
+
+### 5. **Updates to This Policy**
+
+We may update this policy from time to time. Last updated: **\[July 11,2025]**
+
+---
+
+### 6. **Contact Us**
+
+For questions about our cookie usage, email: [abcdkbd@outlook.com](mailto:abcdkbd@outlook.com)
+
+---
diff --git a/src/content/blog/i18n.md b/src/content/blog/i18n.md
new file mode 100644
index 00000000..249bdfe3
--- /dev/null
+++ b/src/content/blog/i18n.md
@@ -0,0 +1,236 @@
+---
+title: " Implementing Internationalization (i18n) in Astro "
+description: "The full guid on how to implement internationalization(i18n) in Astro using Built in features . "
+image: "/assets/images/blog/blog-3.png"
+publishDate: "11 July 2025"
+---
+
+## **Implementing Internationalization (i18n) in Astro Using Built-in Features**
+
+Astro has become one of the best modern frameworks for building fast, content-rich websites. As websites grow and reach global audiences, **internationalization (i18n)** becomes a crucial feature.
+
+---
+
+## What is Internationalization (i18n)?
+
+Internationalization refers to designing your site in a way that makes it easy to adapt to different languages and cultures. It's the foundation that makes localization possible.
+
+---
+
+## Why Internationalization (i18n) Matters
+
+Internationalization allows your website to adapt to different languages and cultural contexts. Benefits include:
+
+- Reaching a global audience
+- Enhancing user experience with localized content
+- Boost **SEO** in different regions
+- Unlocking business opportunities in regional markets
+ Astro’s static-first nature pairs perfectly with i18n for performance, SEO, and simplicity.
+
+---
+
+## Understanding the Essentials
+
+When we are talking about Internationalization, we need to know that, its not just a concept of Astro, it is a general concept to boost user-experience and can be implemented in many types of projects and by using many ways.
+E.g. React also provides methods to implement i18n. In Astro their i18n has been implemented using many ways such as third-party plug-ins or third-party libraries like `astro-i18next`, `astro-i18n-aut`, `astro-18n`, etc.
+To make i18n easier and smoother to implement Astro introduced their built-in 18n feature in their version 4.0. In this blog we will use this built-in feature to implement i18n.
+This blog assumes that readers are fully aware of page routing in Astro Build.
+
+---
+
+## I18n Routing
+
+Astro’s i18n routing simplifies the integration of multilingual content by supporting default language configuration, computing relative page URLs, and recognizing visitors’ preferred languages from their browsers.
+Additionally, you can set fallback languages on a per-language basis, ensuring seamless redirection to existing content on your site.
+
+---
+
+## **Step-by-Step: i18n with Astro's Built-In Support**
+
+### Enable I18n Routing -
+
+In astro, it is really easy to configure 18n routing. Firstly, we have to follow 3 major steps in our configuration –
+
+- Enable i18n routing by adding an i18n object to our Astro configuration.
+- Configure your desired URL path for your default locales.
+- Organizing your contents folder with the localizations. Your folder names must match your locales exactly and your folder organization must match the URL paths.
+
+Now let us configure the provided steps. Open `astro.config.mjs` file and add the given code to it.
+
+```mjs
+import { defineConfig } from "astro/config";
+// https://astro.build/config
+export default defineConfig({
+ site: "http://localhost:4321",
+ i18n: {
+ locales: ["en", "hi"],
+ defaultLocale: "en",
+ routing: { prefixDefaultLocale: true }
+ }
+});
+```
+
+This makes Astro's helper functions like `getRelativeLocaleUrl()` available to use.
+In Astro object, there is a property called prefixDefaultLocale it is Boolean by default it is set to false this means the default locale won’t have a prefix for example: / All other locales will`/en`,`/hi`etc
+If we set to prefixDefaultLocale: true then all URLs, including the default language will have a prefix` /en`.
+
+---
+
+### Creating locale specific pages-
+
+let's create 2 folders called `en` & `hi` inside the pages folder. And, each folder has its own `filename.astro` for this example I have a `layout.astro` defined in the codebase so I am reusing it in all other pages.
+
+- `src/pages/en/index.astro` :
+
+ ```ts
+ ---
+ import Layout from '../../components/Layout.astro';
+ import { useTranslations } from '../../i18n/utils';
+ const lang = 'en';
+ const t = useTranslations(lang);
+ ---
+
+
{t('greeting')}
+
+
+ ```
+
+- `src/pages/hi/index.astro` :
+
+ ```ts
+ ---
+ import Layout from '../../components/Layout.astro';
+ import { useTranslations } from '../../i18n/utils';
+ const lang = 'hi';
+ const t = useTranslations(lang);
+ ---
+
+
{t('greeting')}
+
+
+ ```
+
+- `src/components/Layout.astro` :
+
+ ```ts
+ ---
+ import type { Locale } from '../i18n/utils';
+ import { getRelativeLocaleUrl } from 'astro:i18n';
+ const { lang, t } = Astro.props as {
+ lang: Locale;
+ t: ReturnType;
+ };
+ ---
+
+
+
+
+ {t('title')}
+
+
+
+
+
+
+
+
+
+ ```
+
+This is the basic Layout that you can use to implement the concept.
+Each folder with its`index.astro`will support each language and provide the pages in their respective language, this is the power of **Astro** which uses file-based routing.
+Astro’s `built-in 18n` uses this file base routing to show the same content in different languages.
+
+---
+
+### Define Supported Languages –
+
+Create a folder named `i18n` in src which will contain `JSONs` of all the supported languages, `ui.ts`, `utils.ts`.
+Create a configuration file `src/i18n/ui.ts` that lists supported locales and imports their respective `JSON` files:
+
+```ts
+import en from "./en.json";
+import hi from "./hi.json";
+export const languages = {
+ en: "English",
+ hi: "Hindi"
+} as const;
+export const defaultLang = "en";
+export const ui = {
+ en,
+ hi
+} as const;
+```
+
+Each language (like `en`, `hi`) corresponds to a `JSON` file containing the translated content.
+
+---
+
+### Create a Utility Hook for Translations –
+
+Create `src/i18n/utils.ts`:
+
+```ts
+import { ui, defaultLang } from "./ui";
+export type Locale = keyof typeof ui;
+
+export function useTranslations(lang: Locale) {
+ return ui[lang] ?? ui[defaultLang];
+}
+```
+
+This utility returns the translated content object for the given language or falls back to the default language.
+
+---
+
+### Create `src/pages/index.astro` –
+
+```ts
+export function get() {
+ return Astro.redirect("/en/", 302); // Redirect to default locale
+}
+```
+
+Now an important question arises **Why do we create `src/pages/index.astro` when we already have `en/index.astro` and `hi/index.astro`?**
+Even though we define per-language pages using the file baseed route like `src/pages/en/index.astro`, Astro still needs to know what to do when someone visits the root path `/`.
+If someone opens your site directly at `https://example.com/` , Astro will look for src/pages/index.astro. Without it, the root URL will show a **404** or nothing at all — because en/index.astro or hi/index.astro only matches paths like `/en/`
+or `/hi/`.
+
+---
+
+### Use `getRelativeLocaleUrl()` for Switching Languages In `Layout.astro`-
+
+```html
+
+
+```
+
+Here `getRelativeLocaleUrl(locale)` generates the current page’s URL in another language. Astro handles this automatically, ensuring your routing logic remains clean and robust.
+
+---
+
+### Best Practices for i18n in Astro
+
+- Use dynamic `[locale]` folders to handle localized pages. Instead of creating individual folders for all the languages and then their `index.astro`, create a single `src/pages/[locale]/` and a single `src/pages/[locale]/ index.astro`.
+ By this you can implement dynamic routing this saves the hassle of creating individual folders and files for different languages.
+- Store translations in individual `JSON` files per language
+- Use `getStaticPaths()` to generate static routes for **SEO** benefits.
+- Use **localStorage** to remember user preferences.
+- Fallback to default language in case of missing translations.
+- Set `html
+
- ```
+ ```html
+
+ ```
-- **Avoid redundancy:** Don't add CSS rules for properties already provided by Tailwind classes.
+- Avoid redundancy: Don't add CSS rules for properties already provided by Tailwind classes.
- Create custom styles only when:
- Tailwind utilities cannot achieve the desired layout or behavior.
- Styles are specific to a particular component.
---
-## **4. Component-Specific CSS**
+## Component-Specific CSS
- For each React component, create a corresponding CSS file if it requires custom styles.
-- **CSS file naming**: Use the same name as the component, in lowercase and hyphen-separated.
+- CSS file naming: Use the same name as the component, in lowercase and hyphen-separated.
- Example:
- Component: `ResultProducts.tsx`
- CSS File: `result-products.css`
@@ -56,55 +58,59 @@ This document outlines the style guide we follow to maintain consistency and rea
---
-## **5. Naming Variables & Functions**
+## Naming Variables & Functions
- Use `camelCase` for variables, functions, and methods.
- - Example: `filterItemsByRating`, `sortItems`
+ Example: `filterItemsByRating`, `sortItems`
+
- Use `PascalCase` for React components and TypeScript interfaces/types.
- - Example: `ResultProducts`, `ProductProps`
+ Example: `ResultProducts`, `ProductProps`
+
- Use `UPPER_SNAKE_CASE` for constants.
- - Example: `BASE_IMAGE_PATH`
+ Example: `BASE_IMAGE_PATH`
---
-## **7. JSX Structure**
+## JSX Structure
-- **Keep JSX clean and readable:**
+- Keep JSX clean and readable:
- Use meaningful class names.
- Avoid inline styles unless absolutely necessary.
- Wrap component logic (e.g., filtering, sorting) in separate functions for clarity.
-### **12. Example: Component and CSS Pair**
+---
+
+## Example: Component and CSS Pair
-#### React Component (`ResultProducts.tsx`)
+- React Component (`ResultProducts.tsx`)
-```tsx
-
-
-
-
- Product Name
-
-
-
-```
+ ```tsx
+
+
+
+
+ Product Name
+
+
+
+ ```
-#### CSS File (`result-products.css`)
+- CSS File (`result-products.css`)
-```css
-.container__card {
- @apply rounded-lg border bg-white p-4 shadow-md;
-}
+ ```css
+ .container__card {
+ @apply rounded-lg border bg-white p-4 shadow-md;
+ }
-.card__base {
- @apply flex flex-col items-center;
-}
+ .card__base {
+ @apply flex flex-col items-center;
+ }
-.card__image {
- @apply h-40 w-full rounded-md object-cover;
-}
+ .card__image {
+ @apply h-40 w-full rounded-md object-cover;
+ }
-.card__content {
- @apply text-lg font-semibold text-gray-800;
-}
-```
+ .card__content {
+ @apply text-lg font-semibold text-gray-800;
+ }
+ ```
diff --git a/src/content/blog/technology-used.md b/src/content/blog/technology-used.md
index cbe8a02e..bcc71418 100644
--- a/src/content/blog/technology-used.md
+++ b/src/content/blog/technology-used.md
@@ -1,14 +1,15 @@
---
-title: "The tech stack that we preferred"
-description: "The tech stack that we work with and why we choose it ? "
+title: "Project Technology Stack Documentation"
+description: "The tech stack we work with and why we choose it."
+image: "/assets/images/blog/blog-1.png"
publishDate: "24 December 2024"
---
-## **Project Technology Stack Documentation**
+## Project Technology Stack Documentation
-## **Frontend**
+## Frontend
-### **Astro.js**
+### Astro.js
- **Purpose**: Utilized as the core frontend framework for building the project.
- **Features**:
@@ -16,98 +17,92 @@ publishDate: "24 December 2024"
- Supports server-side rendering (SSR) and static site generation (SSG).
- Integrates seamlessly with other frameworks like React.
-### **React**
+### React
- **Purpose**: Used for creating interactive and dynamic components within the Astro.js framework.
- **Features**:
- Component-based architecture.
- State management and lifecycle methods.
-### **Styling**
+### Styling
-#### **Tailwind CSS**
+#### Tailwind CSS
- **Purpose**: A utility-first CSS framework used for styling.
- **Features**:
- Rapid prototyping with predefined classes.
- Highly customizable via a configuration file.
-### **Component Library**
+### Component Library
-#### **shadcn/ui**
+#### shadcn/ui
- **Purpose**: A pre-built React-based component library for faster UI development.
- **Features**:
- Offers accessible and customizable components.
- Works seamlessly with Tailwind CSS.
-### **Icons**
+### Icons
- **Purpose**: Used for visual enhancements and icons across the application.
- **Libraries**:
- - **Astro Icons**: Icon library designed for use in Astro.js.
- - **React Icons**: A collection of popular icon libraries for React.
- - **Lucide Icons**: Modern, consistent, and open-source icon library.
+ - Astro Icons: Icon library designed for use in Astro.js.
+ - React Icons: A collection of popular icon libraries for React.
+ - Lucide Icons: Modern, consistent, and open-source icon library.
-### **State Management**
+### State Management
-#### **Zustand**
+#### Zustand
- **Purpose**: Lightweight state management library for handling global state in the frontend.
- **Features**:
- Minimal boilerplate.
- Simple and scalable API for managing state.
-### **Data Validation**
+### Data Validation
-#### **Zod**
+#### Zod
- **Purpose**: Schema-based data validation library.
- **Features**:
- Runtime validation for form data and API responses.
- TypeScript integration for type safety.
----
-
-## **Backend**
+## Backend
-### **Node.js**
+### Node.js
- **Purpose**: Backend runtime environment.
- **Features**:
- Non-blocking, event-driven architecture for handling asynchronous operations.
- Large ecosystem of libraries and tools.
-### **Hono.js Framework**
+### Hono.js Framework
- **Purpose**: Lightweight, high-performance framework for building backend APIs.
- **Features**:
- Minimalistic API design.
- Excellent for creating RESTful services.
----
-
-## **Database**
+## Database
-### **MongoDB**
+### MongoDB
- **Purpose**: NoSQL database used for storing application data.
- **Features**:
- Document-oriented storage.
- Scalable and flexible schema design.
-### **Mongoose**
+### Mongoose
- **Purpose**: Object Relational Mapping (ORM) library for MongoDB.
- **Features**:
- Simplifies data modeling and validation.
- Provides built-in schema and middleware support.
----
-
-## **Other Tools**
+## Other Tools
-### **Code Formatting & Linting**
+### Code Formatting & Linting
- **Prettier**: For consistent code formatting.
- **ESLint**: For identifying and fixing coding errors.
diff --git a/src/content/stories/akbar-birbal.md b/src/content/stories/akbar-birbal.md
new file mode 100644
index 00000000..4f25ddd5
--- /dev/null
+++ b/src/content/stories/akbar-birbal.md
@@ -0,0 +1,33 @@
+---
+title: "The Half-Sun Reward"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A clever story where Birbal teaches Emperor Akbar that a full day’s work deserves a full day’s reward."
+image: "akbar-birbal.png"
+category: "Humorous"
+readingTime: 5
+draft: false
+---
+
+## ☀️
+
+One cold winter morning, **Emperor Akbar** and **Birbal** were walking in the royal garden. The sun was shining, but the air was chilly. Akbar wrapped his cloak tighter and said, “No one could stand outside all night in this cold!”
+
+Birbal smiled and replied, “Some people can, Your Majesty — especially if they’re promised a reward.” Akbar laughed. “If anyone does that, I’ll give them **100 gold coins**!”
+
+That evening, a poor man stood in the freezing garden pond, shivering all night with only his thoughts to keep him warm. The next day, he went to the court for his reward. But a minister said,
+“You saw a **lamp burning** far away — that’s how you survived. No reward for you!”
+
+The man left in tears. Birbal was upset. That night, he didn’t come to the palace. When Akbar sent a messenger, Birbal replied, “I’m cooking dinner under the sun — it should be ready soon!”
+
+Akbar rushed over and saw a pot hanging high from a tree branch, with a fire lit on the ground far below. “How can your food cook like this?” he laughed.
+
+Birbal bowed and said, “Just like that man stayed warm from a lamp far away.” Akbar understood, smiled, and immediately gave the man his **full reward**.
+
+---
+
+## 🌼 Moral of the Story
+
+**Justice means fairness — and clever excuses should never replace honest rewards.**
+
+---
diff --git a/src/content/stories/blue-flute.md b/src/content/stories/blue-flute.md
new file mode 100644
index 00000000..b33f8eb5
--- /dev/null
+++ b/src/content/stories/blue-flute.md
@@ -0,0 +1,29 @@
+---
+title: "The Blue Flute"
+publishDate: "2025-07-09"
+author: "Folk Traditions"
+description: "A gentle tale of Lord Krishna’s journey from a playful child in Gokul to the wise charioteer of Kurukshetra."
+image: "blue-flute.png"
+category: "Mythology"
+readingTime: 5
+draft: false
+---
+
+## ☸️
+
+In the beautiful town of **Gokul**, a boy named **Krishna** grew up with mischief in his smile and music in his heart. Though born in Mathura, he was raised by **Yashoda Maa** and **Nanda Baba** to protect him from the cruel king **Kansa**.
+Krishna played with his friends, stole butter from pots, and danced joyfully with the gopis. His flute could calm storms and make peacocks dance.
+He defeated evil beings like **Putana**, **Trinavarta**, and even danced on the head of the poisonous serpent **Kaliya**.
+When angry rains threatened his village, Krishna lifted **Govardhan Hill** with just one finger, giving shelter to all. The people of Gokul saw not just a naughty boy, but someone truly divine.
+
+Years passed, and Krishna journeyed back to **Mathura** where he defeated Kansa and freed his parents. Later, he built **Dwarka**, guided kings with wisdom, and became the charioteer for **Arjuna** during the great **Mahabharata** war.
+On the battlefield of **Kurukshetra**, Krishna spoke the sacred words of the **Bhagavad Gita**, teaching about truth, duty, and the soul. Though he never held a weapon in the war, his wisdom helped restore balance to the world.
+When his time came, Krishna left the world quietly, under a tree, like the setting sun after a golden day. But his flute still echoes in stories, songs, and hearts — reminding us to live with love, courage, and kindness.
+
+---
+
+## 🌼 Moral of the Story
+
+**Krishna’s life teaches us to spread joy, protect what’s right, and lead with wisdom and love.**
+
+---
diff --git a/src/content/stories/ekalavya.md b/src/content/stories/ekalavya.md
new file mode 100644
index 00000000..cebd9493
--- /dev/null
+++ b/src/content/stories/ekalavya.md
@@ -0,0 +1,35 @@
+---
+title: "The Story of Ekalavya"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A moving story of a tribal boy whose devotion to learning made him a great archer — even without a teacher."
+image: "ekalavya.png"
+featured: true
+category: "Mythology"
+readingTime: 5
+draft: false
+---
+
+## 🏹
+
+Long ago, in a forest village, lived a young and brave boy named **Ekalavya**. He belonged to a tribal family, but his heart burned with one dream — to become the **greatest archer** in the world.
+
+He went to **Guru Dronacharya**, the royal teacher of the princes, and begged to be his student. But Drona sadly refused, saying he could only teach royals like **Arjuna**. Ekalavya was hurt, but he didn’t give up.
+
+He made a **statue of Dronacharya** from clay and began practicing before it every day, treating it like his real guru. Through dedication and hard work, Ekalavya soon became a skilled archer — sharp, fast, and focused.
+
+One day, Dronacharya and the princes saw a dog whose mouth had been sealed with arrows — without hurting it! Surprised, they found Ekalavya and asked who his teacher was. Ekalavya bowed and pointed to the clay statue.
+
+Drona was amazed but worried that Ekalavya might become better than Arjuna. So, he asked for **guru dakshina** — the fee from a student to his teacher.
+
+“I wish to take your **right thumb**,” he said. Without question, Ekalavya bowed, smiled, and **cut off his thumb**, offering it with love and respect.
+
+He could no longer shoot like before, but Ekalavya’s name lives on as a symbol of true **devotion and humility**.
+
+---
+
+## 🌼 Moral of the Story
+
+**True greatness comes from dedication, respect, and self-sacrifice — not just reward.**
+
+---
diff --git a/src/content/stories/fox-grapes.md b/src/content/stories/fox-grapes.md
new file mode 100644
index 00000000..61127d0d
--- /dev/null
+++ b/src/content/stories/fox-grapes.md
@@ -0,0 +1,28 @@
+---
+title: "The Fox and the Grapes"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A clever little tale of a hungry fox who learns that not everything is within reach — and that’s okay."
+image: "fox-grapes.png"
+category: "Fictional"
+readingTime: 3
+draft: false
+---
+
+## 🍇
+
+One hot afternoon, a hungry **Fox** was walking through a garden when he spotted a bunch of juicy **purple grapes** hanging from a vine. His mouth watered. “Ah, those grapes look perfect!” he said.
+
+He jumped once — too low. He tried again — still no luck. The grapes were just too high. The Fox took a few steps back and leapt again, higher this time — but missed by inches. He panted and stared up.
+
+After many tries, the tired Fox finally gave up. As he walked away, he muttered, “Those grapes are probably **sour** anyway.”
+
+The Fox left the garden, pretending he didn’t want them in the first place, but deep down, he was still very hungry — and a little embarrassed too.
+
+---
+
+## 🌼 Moral of the Story
+
+**It’s easy to dislike what we cannot have. Accepting failure gracefully is better than pretending it didn’t matter.**
+
+---
diff --git a/src/content/stories/holy-rainbow.md b/src/content/stories/holy-rainbow.md
new file mode 100644
index 00000000..9a213375
--- /dev/null
+++ b/src/content/stories/holy-rainbow.md
@@ -0,0 +1,34 @@
+---
+title: "The Holi Rainbow"
+publishDate: "2025-07-09"
+author: "Folk Traditions"
+description: "A heartwarming Holi story about two friends in Mathura who learn the meaning of forgiveness through colors."
+image: "holi.png"
+category: "Fictional"
+readingTime: 5
+draft: false
+---
+
+## 🌈
+
+In the colorful town of **Mathura**, everyone was preparing for **Holi**, the festival of colors. Streets were full of music, sweets, and laughter. Children ran with gulal in their hands, ready to splash joy on everyone.
+
+Among them were two best friends — **Radha** and **Meera**. Every year, they played Holi together. But this year, something was different. A small fight had started two days ago over a broken toy. Now, both girls were angry and not talking.
+
+On the day of Holi, Radha stood with a plate full of colors, looking around sadly. Meera was on the other side, holding her pichkari but not smiling.
+
+Their friends tried to cheer them up, but nothing worked. Then came **Dadi Ma**, the wise old lady of the neighborhood. She smiled and said, “Do you know what makes Holi special? It’s not just the colors on our face, but the colors in our hearts.”
+
+Radha and Meera looked at each other. Slowly, Radha picked up pink color and walked toward Meera. “Happy Holi,” she said softly.
+
+Meera’s eyes sparkled. She took blue color and gently put it on Radha’s cheek. “Happy Holi,” she replied.
+
+Soon, they were laughing and playing together again. Red, yellow, green, and orange flew through the air. The Holi rainbow had returned — not just in the sky, but in their hearts.
+
+---
+
+## 🌼 Moral of the Story
+
+**Holi teaches us to forgive, forget, and bring back the colors of friendship.**
+
+---
diff --git a/src/content/stories/lion-mouse.md b/src/content/stories/lion-mouse.md
new file mode 100644
index 00000000..201d1027
--- /dev/null
+++ b/src/content/stories/lion-mouse.md
@@ -0,0 +1,32 @@
+---
+title: "The Lion and The Mouse"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A heartwarming forest tale of kindness and how even the smallest can help the mighty."
+image: "lion-mouse.png"
+category: "Humorous"
+readingTime: 4
+draft: false
+---
+
+## 🦁
+
+Deep in the jungle, a mighty **Lion** lay resting under a tree. While he slept, a tiny **Mouse** ran across his paw, chasing a leaf. The Lion woke up with a loud roar and caught the Mouse under his claws.
+
+“Who dares to disturb the king of the jungle?” he growled.
+
+“Please forgive me, O King!” squeaked the Mouse. “Let me go, and someday I might help you in return.”
+
+The Lion laughed. “A little thing like you helping me? That’s amusing!” But he gently let the Mouse go and went back to sleep.
+
+A few days later, hunters set a **trap** in the forest. The Lion was caught in a net and roared in anger. Hearing his cries, the Mouse rushed over, **nibbled the ropes**, and freed the Lion.
+
+“You helped me after all!” the Lion said gratefully. The two became friends, proving that courage and kindness come in all sizes.
+
+---
+
+## 🌼 Moral of the Story
+
+**No one is too small to help someone big. Kindness given always finds its way back.**
+
+---
diff --git a/src/content/stories/lost-kitten.md b/src/content/stories/lost-kitten.md
new file mode 100644
index 00000000..d9840390
--- /dev/null
+++ b/src/content/stories/lost-kitten.md
@@ -0,0 +1,29 @@
+---
+title: "The Lost Kitten"
+publishDate: "2025-07-09"
+author: "Emily Hart"
+description: "A simple and heartwarming story of a kitten who gets lost, and the kind dog who helps her find her way home, retold with lessons of virtue."
+image: "lost-kitten.png"
+category: "Fictional"
+readingTime: 2
+draft: false
+---
+
+## 📖
+
+In a peaceful village lived a gentle kitten named **Momo**, whose white fur and joyful spirit brought light to everyone around her. One bright morning, she chased a red butterfly beyond her garden and soon realized she was lost.
+Surrounded by unfamiliar sights and sounds, Momo cried for help, her tiny voice filled with fear.
+
+Just then, **Bruno**, a kind and noble dog, heard her cries. Guided by compassion, he offered to help Momo find her way home. Together, they wandered through the village, asking for directions from birds, cows, and even the postman.
+Their journey reflected the strength found in kindness, courage, and the willingness to help others.
+
+Eventually, a young girl recognized Momo and ran to her with joy. Momo purred with relief, and the girl thanked Bruno for his noble deed. From that day forward, Momo stayed close to her home, remembering the lesson of trust, safety, and
+the goodness that helped her find her way back.
+
+---
+
+## 🌟 Moral of the Story
+
+This timeless tale of Momo and Bruno teaches us that face your fears and seek help when lost.
+
+---
diff --git a/src/content/stories/monkey-crocodile.md b/src/content/stories/monkey-crocodile.md
new file mode 100644
index 00000000..040a65f6
--- /dev/null
+++ b/src/content/stories/monkey-crocodile.md
@@ -0,0 +1,32 @@
+---
+title: "The Monkey and the Crocodile"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A clever monkey teaches a crocodile that wit and wisdom can save you from any danger."
+image: "monkey-crocodile.png"
+category: "Short"
+readingTime: 4
+draft: false
+---
+
+## 🐒
+
+Long ago, near the banks of the **Ganga river**, there lived a cheerful **Monkey** in a big fruit tree. He spent his days eating sweet **jamuns** and swinging joyfully among the branches.
+
+One day, a **Crocodile** swam by and stopped to rest. The Monkey offered him some fruits. The Crocodile loved the jamuns and came back every day. Slowly, they became good friends.
+
+One evening, the Crocodile told his wife about the kind Monkey. But she became jealous. “If the fruits are so sweet, imagine how sweet the Monkey’s **heart** must be! Bring it to me,” she demanded.
+
+The Crocodile was troubled but agreed. The next day, he invited the Monkey for a ride across the river. Halfway through, he confessed his wife’s wish.
+
+The Monkey stayed calm and said, “Oh, you should have told me earlier! I left my heart on the tree. Let’s go back and get it.”
+
+The silly Crocodile turned around. As soon as they reached the shore, the Monkey jumped back to his tree. “Friendship is built on trust, not tricks!” he said, safe and wise.
+
+---
+
+## 🌼 Moral of the Story
+
+**In times of danger, quick thinking and calmness can save you. True friends never betray trust.**
+
+---
diff --git a/src/content/stories/rabbit-turtle.md b/src/content/stories/rabbit-turtle.md
new file mode 100644
index 00000000..51d2ba00
--- /dev/null
+++ b/src/content/stories/rabbit-turtle.md
@@ -0,0 +1,31 @@
+---
+title: "The Great Forest Race"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A playful retelling of the classic race between a speedy rabbit and a slow but steady turtle."
+image: "rabbit-turtle.png"
+category: "Humorous"
+readingTime: 5
+draft: false
+---
+
+## 🐢
+
+In a quiet forest, animals gathered around the big tree for a fun announcement. The **Rabbit**, proud of his speed, shouted, “I challenge anyone to a race! No one can beat me!”
+The forest fell silent — until the **Turtle** slowly raised his head and said, “I accept.”
+
+All the animals laughed. “He’s too slow!” whispered the squirrel. But the Turtle smiled. “Let’s see what happens,” he said gently.
+
+The next morning, the race began. “On your marks… go!” shouted the parrot. The Rabbit dashed off like lightning, leaving the Turtle far behind. But soon, the Rabbit grew tired and thought, _“I’m so far ahead, I’ll just nap under this tree.”_
+
+Meanwhile, the Turtle kept going — slow, steady, step by step. The Rabbit snored peacefully as the Turtle passed him quietly and neared the finish line. When the Rabbit woke up, he jumped up and ran — but it was too late.
+
+The forest animals cheered as the Turtle crossed the line. “How did he win?” cried the Rabbit. The Turtle looked back and said, “You may be fast, my friend, but I never stopped moving forward.”
+
+---
+
+## 🌼 Moral of the Story
+
+**Slow and steady wins the race. Hard work and patience can beat overconfidence.**
+
+---
diff --git a/src/content/stories/ramayan.md b/src/content/stories/ramayan.md
new file mode 100644
index 00000000..c39a58cd
--- /dev/null
+++ b/src/content/stories/ramayan.md
@@ -0,0 +1,40 @@
+---
+title: "The Story of Ramayan"
+publishDate: "2025-07-09"
+author: "Sage Valmiki"
+description: "The heartwarming tale of the Ramayan unfolds with love, duty, and sacrifice, Where Rama's righteous path lights the way through trials and triumph."
+image: "ramayan.png"
+category: "Mythology"
+readingTime: 5
+draft: false
+---
+
+## 📖
+
+Long ago in the kingdom of **Ayodhya**, there lived a noble king named **Dasharatha**. He had four sons—**Rama**, **Lakshmana**,
+**Bharata**, and **Shatrughna**. Rama, the eldest, was wise, brave, and loved by all. He married the beautiful and kind princess
+**Sita**.
+
+King Dasharatha wanted Rama to be the next king. But Queen **Kaikeyi** asked that her son **Bharata** be crowned, and that Rama
+be sent to the forest for **14 years**. The king was heartbroken, but Rama accepted the exile calmly. Sita and Lakshmana chose
+to go with him.
+
+In the forest, the demon king **Ravana** tricked Sita and kidnapped her. Rama and Lakshmana searched everywhere. They made friends
+with the monkey king **Sugriva** and the mighty **Hanuman**. Hanuman flew across the ocean and found Sita in **Lanka**.
+
+Rama, with the help of monkeys and bears, built a bridge to Lanka. A fierce battle took place. Rama defeated Ravana and rescued
+Sita. Everyone was happy and full of joy.
+
+After 14 years, Rama, Sita, and Lakshmana returned to Ayodhya. The people welcomed them with lights and celebration. This day
+is now celebrated as **Diwali**, the festival of lights.
+
+Rama became king and ruled with fairness and kindness. His rule, called **Ram Rajya**, was a time of peace, happiness, and
+justice.
+
+---
+
+## 🌟 Moral of the Story
+
+The Ramayan teaches us that good always wins over evil, and we should always do the right thing.
+
+---
diff --git a/src/content/stories/tenali-rama.md b/src/content/stories/tenali-rama.md
new file mode 100644
index 00000000..69448762
--- /dev/null
+++ b/src/content/stories/tenali-rama.md
@@ -0,0 +1,32 @@
+---
+title: "Tenali and the Talking Parrot"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A witty tale of Tenali Rama who outsmarts a greedy merchant and teaches the king a clever lesson about truth."
+image: "tenali-rama.png"
+category: "Short"
+readingTime: 5
+draft: false
+---
+
+## 🦜
+
+In the royal court of **Vijayanagara**, King **Krishna Deva Raya** received a strange gift — a parrot in a golden cage. A clever merchant claimed, “This parrot speaks seven languages and can even recite poetry!”
+The king was amazed and paid him handsomely.
+
+But days passed, and the parrot only squawked and pecked at chillies. The king grew suspicious and called his most trusted poet, **Tenali Rama**. “Find out if this bird truly talks,” the king ordered.
+
+Tenali smiled and took the parrot home. He fed it, played soft music, and even read poems aloud. But the parrot stayed silent. The next day, Tenali returned to court — holding a **covered cage**. “Did it speak?” the king asked eagerly.
+
+“Yes, Maharaj,” Tenali said, “But in a different way.” He lifted the cloth — and revealed an **empty cage**. “The parrot flew away!” gasped the king.
+Tenali bowed and said, “It told me one thing clearly: a clever tongue is not proof of a clever mind.”
+
+The king laughed loudly, realizing he’d been tricked by the merchant. He thanked Tenali for saving both his pride and his gold.
+
+---
+
+## 🌼 Moral of the Story
+
+**Don’t believe everything you hear. True wisdom is shown through action, not just fancy words.**
+
+---
diff --git a/src/content/stories/thirsty-crow.md b/src/content/stories/thirsty-crow.md
new file mode 100644
index 00000000..7d1bc2c0
--- /dev/null
+++ b/src/content/stories/thirsty-crow.md
@@ -0,0 +1,28 @@
+---
+title: "The Thirsty Crow"
+publishDate: "2025-07-10"
+author: "Folk Traditions"
+description: "A clever little crow teaches us how patience and smart thinking can solve any problem."
+image: "thirsty-crow.png"
+category: "Short"
+readingTime: 3
+draft: false
+---
+
+## 🐦
+
+One hot summer afternoon, a **Crow** was flying over a village in search of water. The sun was blazing, and the ground was dry. The poor crow was very thirsty and growing tired.
+
+Finally, he spotted a **clay pot** outside a hut. He flew down eagerly and looked inside. There was a little water at the bottom — but the **neck of the pot was too narrow**, and his beak couldn’t reach it.
+
+The Crow didn’t give up. He looked around and saw small **pebbles** nearby. One by one, he dropped them into the pot. Slowly, the water rose higher and higher. At last, the water reached the top!
+
+The Crow happily drank and flew away, cool and refreshed, proud of his clever idea.
+
+---
+
+## 🌼 Moral of the Story
+
+**Smart thinking and patience can solve even the toughest problems. Never give up too soon!**
+
+---
diff --git a/src/content/support.md b/src/content/support.md
new file mode 100644
index 00000000..000daf19
--- /dev/null
+++ b/src/content/support.md
@@ -0,0 +1,65 @@
+# Support
+
+## 🙋 Need Help?
+
+We're here to ensure your learning experience is smooth and enjoyable.
+Whether you're a parent, teacher, or student — we’ve got you covered.
+
+---
+
+## 📌 Common Questions
+
+### ❓ How do I start learning?
+
+Just visit the [Home](/) and click on any topic.
+No login or registration is required.
+
+### ❓ Does this work on mobile?
+
+Yes! Our website is fully responsive and works on desktops, tablets,
+and smartphones.
+
+### ❓ Is this app safe for children?
+
+Absolutely. We are ad-free and designed with child safety and
+simplicity in mind.
+
+### ❓ Can I use it offline?
+
+Some activities support offline mode _(coming soon)_.
+Stay tuned for updates!
+
+---
+
+## 🛠️ Technical Help
+
+If something isn’t working:
+
+- Make sure your internet connection is active.
+- Try refreshing the page.
+- Use a modern browser like **Chrome**, **Firefox**, or **Edge**.
+- If you're using a school device, check for any firewall or content blockers.
+
+---
+
+## 💌 Contact Support
+
+Still facing issues? Have suggestions or ideas?
+
+📧 Email us at [abcdkbd@outlook.com](mailto:abcdkbd@outlook.com)
+
+---
+
+## 🧑🏫 For Teachers & Schools
+
+Want to use **ABCDKBD** in your classroom or curriculum?
+
+- Visit our [Teacher's Corner](/teacher)
+- Reach out to us for integration help and printable resources.
+
+---
+
+## 🙌 Thank You
+
+We appreciate your support and feedback.
+Together, let’s make learning joyful and impactful for every child.
diff --git a/src/content/terms-and-conditions.md b/src/content/terms-and-conditions.md
new file mode 100644
index 00000000..ea589dc7
--- /dev/null
+++ b/src/content/terms-and-conditions.md
@@ -0,0 +1,121 @@
+# Terms & Conditions
+
+_Last Updated: July 16,2025_
+
+Welcome to [**abcdkbd.com**](https://abcdkbd.com). By accessing or using our platform, you agree to comply with and be bound by the following Terms and Conditions.
+
+Please read them carefully before using the site.
+
+---
+
+## 1. Acceptance of Terms
+
+By accessing or using **abcdkbd.com**, you agree to these Terms and our [Privacy Policy](/privacy). If you do not agree, please discontinue use of the site.
+
+---
+
+## 2. About the Website
+
+**abcdkbd.com** is a free educational platform for children. We focus on delivering safe, engaging, and age-appropriate learning resources.
+
+**This site is not intended for commercial use or monetization.**
+
+---
+
+## 3. Eligibility
+
+This platform is primarily intended for **children under parental or guardian supervision**. Users under 18 must use the site with guidance.
+
+Parents or guardians must consent to any data collection, per Indian laws (DPDP Act, 2023).
+
+---
+
+## 4. User Conduct
+
+Users must not:
+
+- Upload or share offensive or harmful content
+- Attempt to hack, damage, or reverse-engineer the website
+- Use bots, scrapers, or automated tools to access the site
+- Disrupt the platform for others
+
+---
+
+## 5. Intellectual Property
+
+All content on **abcdkbd.com**, including:
+
+- Text, images, animations
+- Audio/visual material
+- Code and design
+
+is the property of **RecusriveZero** or its content creators and is protected by copyright laws.
+You may use content **only for personal, non-commercial educational purposes**.
+
+---
+
+## 6. Parental Responsibility
+
+Parents or guardians are responsible for:
+
+- Monitoring their child’s activity on the website
+- Providing consent where required
+- Reporting any inappropriate content
+
+---
+
+## 7. External Links
+
+The website may contain links to third-party educational content. We are **not responsible** for the content or privacy policies of external sites.
+
+Please use discretion before navigating away from our site.
+
+---
+
+## 8. Limitation of Liability
+
+We strive to provide accurate and safe content. However, we are not liable for:
+
+- Any data loss, harm, or interruption caused by the website
+- Mistakes, typos, or inaccuracies in learning material
+
+Use of the platform is at your own risk.
+
+---
+
+## 9. Modification of Terms
+
+We reserve the right to change these Terms at any time. Updated terms will be posted here with a new “Last Updated” date.
+
+Continued use of the platform constitutes acceptance of the revised terms.
+
+---
+
+## 10. Termination
+
+We may suspend or restrict access if:
+
+- These Terms are violated
+- We detect suspicious or harmful activity
+
+We reserve the right to discontinue any feature or the entire service at any time.
+
+---
+
+## 11. Governing Law
+
+These Terms shall be governed by and interpreted under the laws of **India**. Any disputes shall be subject to the jurisdiction of **Surat courts**.
+
+---
+
+## 12. Contact
+
+For questions, concerns, or requests, please contact us:
+
+**Website**: [https://abcdkbd.com](https://{{abcdkbd.com}})
+**Email**: [support@recursivezero.com](mailto:support@recursivezero.com)
+**Grievance Officer**: Keshav Mohta,
+
+---
+
+Thank you for using **abcdkbd.com**!
diff --git a/src/data/alphabet_dataset.ts b/src/data/alphabet_dataset.ts
deleted file mode 100644
index af9fd37f..00000000
--- a/src/data/alphabet_dataset.ts
+++ /dev/null
@@ -1,109 +0,0 @@
-type DataType = {
- id: string | number;
- code: string | number;
- letter: string;
- description: string;
- text: string;
- [key: string]: any;
-};
-
-interface AlphabetDataset {
- category: string;
- description: string;
- icon: string;
- data: Array;
-}
-
-const animalData = [
- { letter: "A", description: "A animal lives in water", text: "Alligator" },
- { letter: "D", description: "A domesticated canine", text: "Dog" },
- { letter: "B", description: "A small bird with blue feathers", text: "Bluebird" },
- { letter: "C", description: "A domestic feline", text: "Cat" },
- { letter: "E", description: "A large mammal with a trunk", text: "Elephant" },
- { letter: "F", description: "A small, carnivorous mammal", text: "Fox" },
- { letter: "G", description: "A tall, long-necked herbivore", text: "Giraffe" },
- { letter: "H", description: "A large, mostly herbivorous mammal", text: "Hippo" },
- { letter: "I", description: "A slow-moving reptile", text: "Iguana" },
- { letter: "J", description: "A large feline native to the Americas", text: "Jaguar" },
- { letter: "K", description: "A marsupial known for its jumping ability", text: "Kangaroo" },
- { letter: "L", description: "A large, carnivorous feline", text: "Lion" },
- { letter: "M", description: "A small, intelligent primate", text: "Monkey" },
- { letter: "N", description: "A medium-sized whale with a long tusk", text: "Narwhal" },
- { letter: "O", description: "A sea creature with eight arms", text: "Octopus" },
- { letter: "P", description: "A flightless bird from Antarctica", text: "Penguin" },
- { letter: "Q", description: "A small, ground-dwelling bird", text: "Quail" },
- { letter: "R", description: "A small mammal known for its long ears", text: "Rabbit" },
- { letter: "S", description: "A legless reptile", text: "Snake" },
- { letter: "T", description: "A large, striped feline", text: "Tiger" },
- { letter: "U", description: "A type of monkey found in South America", text: "Uakari" },
- { letter: "V", description: "A scavenging bird known for its bald head", text: "Vulture" },
- { letter: "W", description: "A large, carnivorous mammal", text: "Wolf" },
- { letter: "X", description: "A fish known for its X-ray-like transparency", text: "X-Ray Fish" },
- { letter: "Y", description: "A domesticated member of the bovine family", text: "Yak" },
- { letter: "Z", description: "A black-and-white striped mammal", text: "Zebra" }
-];
-
-export const ANIMAL_DATASETS: AlphabetDataset = {
- category: "animals",
- description: "Animal Alphabet",
- icon: "🐾",
- data: animalData
- .sort((a, b) => a.letter.localeCompare(b.letter))
- .map((item, index) => ({
- id: index + 1,
- code: 65 + index, // ASCII code for 'A' is 65
- ...item
- }))
-};
-
-/* birds data */
-
-const birdData = [
- { letter: "A", description: "A small, colorful bird", text: "Acanthis" },
- { letter: "B", description: "A small, insect-eating bird", text: "Bunting" },
- { letter: "C", description: "A bird known for its distinctive call", text: "Crow" },
- { letter: "D", description: "A bird with a short, stocky body and a strong beak", text: "Dove" },
- { letter: "E", description: "A large bird of prey", text: "Eagle" },
- { letter: "F", description: "A bird known for its beautiful plumage", text: "Flamingo" },
- { letter: "G", description: "A bird with a long, curved beak", text: "Gull" },
- { letter: "H", description: "A bird with a strong, hooked beak", text: "Hawk" },
- { letter: "I", description: "A small, colorful bird often found in gardens", text: "Ibis" },
- { letter: "J", description: "A bird known for its distinctive song", text: "Jay" },
- { letter: "K", description: "A flightless bird from New Zealand", text: "Kiwi" },
- { letter: "L", description: "A bird known for its melodious song", text: "Lark" },
- { letter: "M", description: "A bird known for its ability to mimic sounds", text: "Mockingbird" },
- { letter: "N", description: "A bird known for its beautiful song", text: "Nightingale" },
- { letter: "O", description: "A bird with a long, slender neck", text: "Ostrich" },
- { letter: "P", description: "A large bird known for its impressive tail", text: "Peacock" },
- { letter: "Q", description: "A bird known for its colorful plumage", text: "Quetzal" },
- { letter: "R", description: "A bird with a long, curved beak", text: "Raven" },
- { letter: "S", description: "A small, insect-eating bird", text: "Sparrow" },
- { letter: "T", description: "A bird known for its striking plumage", text: "Toucan" },
- { letter: "U", description: "A bird with a long, slender body and a sharp beak", text: "Umbrellabird" },
- { letter: "V", description: "A scavenging bird known for its bald head", text: "Vulture" },
- { letter: "W", description: "A bird that builds intricate nests", text: "Weaver" },
- { letter: "X", description: "A bird known for its distinctive call", text: "Xenops" },
- { letter: "Y", description: "A bird with a long, slender body and a sharp beak", text: "Yellowthroat" },
- { letter: "Z", description: "A bird known for its striking plumage", text: "Zebra Finch" }
-];
-
-export const BIRDS_DATASETS: AlphabetDataset = {
- category: "birds",
- description: "Birds Alphabet",
- icon: "🐦",
- data: birdData
- .sort((a, b) => a.letter.localeCompare(b.letter))
- .map((item, index) => ({
- id: index + 1,
- code: 65 + index, // ASCII code for 'A' is 65
- ...item
- }))
-};
-
-/** TODO: add others from alphabets.json */
-
-export const DATASET: { [key: string]: AlphabetDataset } = {
- animals: ANIMAL_DATASETS,
- birds: BIRDS_DATASETS
-};
-export type AlphabetsData = typeof DATASET;
diff --git a/src/data/categories.json b/src/data/categories.json
index eb9da102..1d831172 100644
--- a/src/data/categories.json
+++ b/src/data/categories.json
@@ -5,7 +5,7 @@
"title": "Explore Dances of India",
"description": "Discover the rich cultural heritage of Indian classical and folk dances",
"route": "dance",
- "image": "https://static.vecteezy.com/system/resources/thumbnails/041/053/132/small/ai-generated-beautiful-ballerina-in-long-dress-dancing-ai-generative-free-photo.jpeg",
+ "image": "/assets/images/dance.png",
"color": "#3B82F6"
}
}
diff --git a/src/data/contributor.json b/src/data/contributor.json
deleted file mode 100644
index a7b4816c..00000000
--- a/src/data/contributor.json
+++ /dev/null
@@ -1,38 +0,0 @@
-[
- {
- "name": "Ayush Tyagi",
- "role": "UI Engineer",
- "description": "(June 2025 - Present)",
- "github": "Ayu-Ty"
- },
- {
- "name": "Azmat",
- "role": "UI Engineer",
- "description": "(June 2025 - Present)",
- "github": "Azmat01"
- },
- {
- "name": "Chhavi Sharma",
- "role": "UI Engineer",
- "description": "(June 2025 - Present)",
- "github": "chhaviS04"
- },
- {
- "name": "Prakash Raj",
- "role": "UI Engineer",
- "description": "(June 2025 - Present)",
- "github": "1046prt"
- },
- {
- "name": "Rupesh Rathore",
- "role": "UI Engineer",
- "description": "(June 2025 - Present)",
- "github": "Rupesh-Rathore"
- },
- {
- "name": "Suresh Chelani",
- "role": "UI Engineer",
- "description": "(June 2025 - Present)",
- "github": "Suresh-Chelani"
- }
-]
diff --git a/src/data/faq.json b/src/data/faq.json
new file mode 100644
index 00000000..6eeb2bb1
--- /dev/null
+++ b/src/data/faq.json
@@ -0,0 +1,22 @@
+[
+ {
+ "question": "What is abcdkbd?",
+ "answer": "abcdkbd is an interactive learning platform designed to make education fun and engaging for young children. We focus on core skills like reading, math, and logic through games and creative activities."
+ },
+ {
+ "question": "Is abcdkbd free to use?",
+ "answer": "Yes, the basic features of our platform are completely free. We may introduce premium features in the future, but our core learning modules will always be accessible to everyone."
+ },
+ {
+ "question": "What age group is this platform for?",
+ "answer": "Our content is primarily designed for children in preschool and early elementary school, typically ages 3 to 8. However, many of our games and activities can be enjoyed by learners of all ages."
+ },
+ {
+ "question": "How do you track my child's progress?",
+ "answer": "We are currently developing a comprehensive progress tracking system for parents. This feature will provide insights into your child's learning journey, highlighting strengths and areas for improvement. Stay tuned for updates!"
+ },
+ {
+ "question": "Can I use abcdkbd on a tablet or phone?",
+ "answer": "Absolutely! Our platform is fully responsive and designed to work seamlessly across desktops, tablets, and mobile phones. You can access it from any device with a modern web browser."
+ }
+]
diff --git a/src/data/feedback.json b/src/data/feedback.json
index 3c89ca32..fe51488c 100644
--- a/src/data/feedback.json
+++ b/src/data/feedback.json
@@ -1,44 +1 @@
-[
- {
- "id": 1739457901760,
- "name": "aESFsefesf",
- "feedback": "sdvsvsvSEFesfaewfA",
- "timestamp": "2025-02-13T14:45:01.760Z"
- },
- {
- "id": 1739457922392,
- "name": "aESFsefesf",
- "feedback": "sdvsvsvSEFesfaewfA",
- "timestamp": "2025-02-13T14:45:22.392Z"
- },
- {
- "id": 1739458007446,
- "name": "aESFsefesf",
- "feedback": "sdvsvsvSEFesfaewfA",
- "timestamp": "2025-02-13T14:46:47.446Z"
- },
- {
- "id": 1739458038660,
- "name": "esdvfesvsdvsdv",
- "feedback": "sEFesfsefESFsEfsfzsfessz",
- "timestamp": "2025-02-13T14:47:18.660Z"
- },
- {
- "id": 1739459880808,
- "name": "asscdsacsdv",
- "feedback": "dsvdsvsdvsDVV",
- "timestamp": "2025-02-13T15:18:00.808Z"
- },
- {
- "id": 1739459893114,
- "name": "esvsDVsdv",
- "feedback": "dsvsdvsDvsdvds1111111111",
- "timestamp": "2025-02-13T15:18:13.114Z"
- },
- {
- "id": 1740888288998,
- "name": "product 1",
- "feedback": "We value your thoughts and suggestions",
- "timestamp": "2025-03-02T04:04:48.998Z"
- }
-]
+[]
diff --git a/src/data/glossary.json b/src/data/glossary.json
index 00f64d27..6fcf4d71 100644
--- a/src/data/glossary.json
+++ b/src/data/glossary.json
@@ -91,18 +91,78 @@
"title": "Basic Crops",
"description": "A collection of basic crops with their names and descriptions.",
"data": [
- { "emoji": "🌾", "description": "A staple grain crop, used for making flour and bread.", "letter": "Wheat", "text": "गेहूं" },
- { "emoji": "🍚", "description": "A major cereal grain, primary food for much of the world.", "letter": "Rice", "text": "चावल" },
- { "emoji": "🌽", "description": "Also known as corn, used as food and fodder.", "letter": "Maize", "text": "मक्का" },
- { "emoji": "🌱", "description": "A cereal grain used for food, animal feed, and brewing.", "letter": "Barley", "text": "जौ" },
- { "emoji": "🌾", "description": "A group of small-seeded grasses, important in arid regions.", "letter": "Millet", "text": "बाजरा" },
- { "emoji": "🥔", "description": "A starchy tuber, widely used as a vegetable.", "letter": "Potato", "text": "आलू" },
- { "emoji": "🍅", "description": "A red fruit used as a vegetable in cooking.", "letter": "Tomato", "text": "टमाटर" },
- { "emoji": "🥜", "description": "Also called peanut, an oilseed and snack crop.", "letter": "Groundnut", "text": "मूंगफली" },
- { "emoji": "🥕", "description": "An orange root vegetable, eaten raw or cooked.", "letter": "Carrot", "text": "गाजर" },
- { "emoji": "🥒", "description": "A green, refreshing vegetable, often eaten raw.", "letter": "Cucumber", "text": "खीरा" },
- { "emoji": "🍆", "description": "Also called eggplant, a purple vegetable.", "letter": "Brinjal", "text": "बैंगन" },
- { "emoji": "🥬", "description": "A leafy green vegetable, rich in iron.", "letter": "Spinach", "text": "पालक" }
+ {
+ "emoji": "🌾",
+ "description": "A staple grain crop, used for making flour and bread.",
+ "letter": "Wheat",
+ "text": "गेहूं"
+ },
+ {
+ "emoji": "🍚",
+ "description": "A major cereal grain, primary food for much of the world.",
+ "letter": "Rice",
+ "text": "चावल"
+ },
+ {
+ "emoji": "🌽",
+ "description": "Also known as corn, used as food and fodder.",
+ "letter": "Maize",
+ "text": "मक्का"
+ },
+ {
+ "emoji": "🌱",
+ "description": "A cereal grain used for food, animal feed, and brewing.",
+ "letter": "Barley",
+ "text": "जौ"
+ },
+ {
+ "emoji": "🌾",
+ "description": "A group of small-seeded grasses, important in arid regions.",
+ "letter": "Millet",
+ "text": "बाजरा"
+ },
+ {
+ "emoji": "🥔",
+ "description": "A starchy tuber, widely used as a vegetable.",
+ "letter": "Potato",
+ "text": "आलू"
+ },
+ {
+ "emoji": "🍅",
+ "description": "A red fruit used as a vegetable in cooking.",
+ "letter": "Tomato",
+ "text": "टमाटर"
+ },
+ {
+ "emoji": "🥜",
+ "description": "Also called peanut, an oilseed and snack crop.",
+ "letter": "Groundnut",
+ "text": "मूंगफली"
+ },
+ {
+ "emoji": "🥕",
+ "description": "An orange root vegetable, eaten raw or cooked.",
+ "letter": "Carrot",
+ "text": "गाजर"
+ },
+ {
+ "emoji": "🥒",
+ "description": "A green, refreshing vegetable, often eaten raw.",
+ "letter": "Cucumber",
+ "text": "खीरा"
+ },
+ {
+ "emoji": "🍆",
+ "description": "Also called eggplant, a purple vegetable.",
+ "letter": "Brinjal",
+ "text": "बैंगन"
+ },
+ {
+ "emoji": "🥬",
+ "description": "A leafy green vegetable, rich in iron.",
+ "letter": "Spinach",
+ "text": "पालक"
+ }
]
},
"currency": {
@@ -680,76 +740,76 @@
"description": "A collection of sun signs with their date range.",
"data": [
{
- "description": "March 21 - April 19",
+ "description": "April 14 - May 14",
"id": "aries",
"letter": "♈︎",
- "text": "Aries (मेष)"
+ "text": "Mesha (मेष)"
},
{
- "description": "April 20 - May 20",
+ "description": "May 15 - June 14",
"id": "taurus",
"letter": "♉︎",
- "text": "Taurus (वृषभ)"
+ "text": "Vrishabha (वृषभ)"
},
{
- "description": "May 21 - June 20",
+ "description": "June 15 - July 14",
"id": "gemini",
"letter": "♊︎",
- "text": "Gemini (मिथुन)"
+ "text": "Mithuna (मिथुन)"
},
{
- "description": "June 21 - July 22",
+ "description": "July 15 - August 14",
"id": "cancer",
"letter": "♋︎",
- "text": "Cancer (कर्क)"
+ "text": "Karka (कर्क)"
},
{
- "description": "July 23 - August 22",
+ "description": "August 15 - September 15",
"id": "leo",
"letter": "♌︎",
- "text": "Leo (सिंह)"
+ "text": "Simha (सिंह)"
},
{
- "description": "August 23 - September 22",
+ "description": "September 16 - October 15",
"id": "virgo",
"letter": "♍︎",
- "text": "Virgo (कन्या)"
+ "text": "Kanya (कन्या)"
},
{
- "description": "September 23 - October 22",
+ "description": "October 16 - November 14",
"id": "libra",
"letter": "♎︎",
- "text": "Libra (तुला)"
+ "text": "Tula (तुला)"
},
{
- "description": "October 23 - November 21",
+ "description": "November 15 - December 14",
"id": "scorpio",
"letter": "♏︎",
- "text": "Scorpio (वृश्चिक)"
+ "text": "Vrishchika (वृश्चिक)"
},
{
- "description": "November 22 - December 21",
+ "description": "December 15 - January 13",
"id": "sagittarius",
"letter": "♐︎",
- "text": "Sagittarius (धनु)"
+ "text": "Dhanu (धनु)"
},
{
- "description": "December 22 - January 19",
+ "description": "January 14 - February 11",
"id": "capricorn",
"letter": "♑︎",
- "text": "Capricorn (मकर)"
+ "text": "Makara (मकर)"
},
{
- "description": "January 20 - February 18",
+ "description": "February 12 - March 12",
"id": "aquarius",
"letter": "♒︎",
- "text": "Aquarius (कुंभ)"
+ "text": "Kumbha (कुंभ)"
},
{
- "description": "February 19 - March 20",
+ "description": "March 13 - April 13",
"id": "pisces",
"letter": "♓︎",
- "text": "Pisces (मीन)"
+ "text": "Meena (मीन)"
}
]
},
diff --git a/src/data/nakshtra.json b/src/data/nakshtra.json
new file mode 100644
index 00000000..18d5fa43
--- /dev/null
+++ b/src/data/nakshtra.json
@@ -0,0 +1,443 @@
+{
+ "title": "Explore the Nakshatra",
+ "description": "Nakshtra list in the same order",
+ "link": "",
+ "data": {
+ "english": [
+ {
+ "id": 1,
+ "name": "Ashwini",
+ "ruling_planet": "Ketu",
+ "deity": "Ashwini Kumaras",
+ "symbol": "Horse’s head",
+ "image": "ashwini.webp"
+ },
+ {
+ "id": 2,
+ "name": "Bharani",
+ "ruling_planet": "Venus",
+ "deity": "Yama",
+ "symbol": "Yoni (womb)",
+ "image": "bharani.webp"
+ },
+ {
+ "id": 3,
+ "name": "Krittika",
+ "ruling_planet": "Sun",
+ "deity": "Agni",
+ "symbol": "Razor or flame",
+ "image": "krittika.webp"
+ },
+ {
+ "id": 4,
+ "name": "Rohini",
+ "ruling_planet": "Moon",
+ "deity": "Brahma",
+ "symbol": "Chariot or temple",
+ "image": "rohini.webp"
+ },
+ {
+ "id": 5,
+ "name": "Mrigashira",
+ "ruling_planet": "Mars",
+ "deity": "Soma",
+ "symbol": "Deer’s head",
+ "image": "mrigshira.webp"
+ },
+ {
+ "id": 6,
+ "name": "Ardra",
+ "ruling_planet": "Rahu",
+ "deity": "Rudra",
+ "symbol": "Teardrop or diamond",
+ "image": "aardra.webp"
+ },
+ {
+ "id": 7,
+ "name": "Punarvasu",
+ "ruling_planet": "Jupiter",
+ "deity": "Aditi",
+ "symbol": "Bow and quiver",
+ "image": "punarvasu.webp"
+ },
+ {
+ "id": 8,
+ "name": "Pushya",
+ "ruling_planet": "Saturn",
+ "deity": "Brihaspati",
+ "symbol": "Cow’s udder",
+ "image": "pushya.webp"
+ },
+ {
+ "id": 9,
+ "name": "Ashlesha",
+ "ruling_planet": "Mercury",
+ "deity": "Nagas",
+ "symbol": "Serpent",
+ "image": "ashlesha.webp"
+ },
+ {
+ "id": 10,
+ "name": "Magha",
+ "ruling_planet": "Ketu",
+ "deity": "Pitris (ancestors)",
+ "symbol": "Royal throne",
+ "image": "magha.webp"
+ },
+ {
+ "id": 11,
+ "name": "Purva Phalguni",
+ "ruling_planet": "Venus",
+ "deity": "Bhaga",
+ "symbol": "front legs of a bed",
+ "image": "purva_phalguni.webp"
+ },
+ {
+ "id": 12,
+ "name": "Uttara Phalguni",
+ "ruling_planet": "Sun",
+ "deity": "Aryaman",
+ "symbol": "Back legs of a bed",
+ "image": "uttra_phalguni.web"
+ },
+ {
+ "id": 13,
+ "name": "Hasta",
+ "ruling_planet": "Moon",
+ "deity": "Savitur",
+ "symbol": "Hand or fist",
+ "image": "hasta.webp"
+ },
+ {
+ "id": 14,
+ "name": "Chitra",
+ "ruling_planet": "Mars",
+ "deity": "Vishwakarma",
+ "symbol": "Bright jewel or pearl",
+ "image": "chitra.webp"
+ },
+ {
+ "id": 15,
+ "name": "Swati",
+ "ruling_planet": "Rahu",
+ "deity": "Vayu",
+ "symbol": "Shoot of a plant",
+ "image": "swati.webp"
+ },
+ {
+ "id": 16,
+ "name": "Vishakha",
+ "ruling_planet": "Jupiter",
+ "deity": "Indra-Agni",
+ "symbol": "Triumphal arch",
+ "image": "vishakha.webp"
+ },
+ {
+ "id": 17,
+ "name": "Anuradha",
+ "ruling_planet": "Saturn",
+ "deity": "Mitra",
+ "symbol": "Lotus flower",
+ "image": "anuradha.webp"
+ },
+ {
+ "id": 18,
+ "name": "Jyeshtha",
+ "ruling_planet": "Mercury",
+ "deity": "Indra",
+ "symbol": "Circular amulet",
+ "image": "jyeshtha.webp"
+ },
+ {
+ "id": 19,
+ "name": "Mula",
+ "ruling_planet": "Ketu",
+ "deity": "Nirriti",
+ "symbol": "Lion’s tail or roots",
+ "image": "mula.webp"
+ },
+ {
+ "id": 20,
+ "name": "Purva Ashadha",
+ "ruling_planet": "Venus",
+ "deity": "Apah (Water)",
+ "symbol": "Elephant tusk or fan",
+ "image": "purva_ashadha.webp"
+ },
+ {
+ "id": 21,
+ "name": "Uttara Ashadha",
+ "ruling_planet": "Sun",
+ "deity": "Vishvedevas",
+ "symbol": "Elephant tusk",
+ "image": "uttara_ashadha.webp"
+ },
+ {
+ "id": 22,
+ "name": "Shravana",
+ "ruling_planet": "Moon",
+ "deity": "Vishnu",
+ "symbol": "Ear or footprints",
+ "image": "shravana.webp"
+ },
+ {
+ "id": 23,
+ "name": "Dhanishta",
+ "ruling_planet": "Mars",
+ "deity": "Vasus",
+ "symbol": "Drum or flute",
+ "image": "dhanishta.webp"
+ },
+ {
+ "id": 24,
+ "name": "Shatabhisha",
+ "ruling_planet": "Rahu",
+ "deity": "Varuna",
+ "symbol": "Empty circle or 100 stars",
+ "image": "shatabhisha.webp"
+ },
+ {
+ "id": 25,
+ "name": "Purva Bhadrapada",
+ "ruling_planet": "Jupiter",
+ "deity": "Ajaikapada",
+ "symbol": "Front legs of a funeral cot",
+ "image": "purva_bhadrapada.webp"
+ },
+ {
+ "id": 26,
+ "name": "Uttara Bhadrapada",
+ "ruling_planet": "Saturn",
+ "deity": "Ahirbudhnya",
+ "symbol": "Back legs of a funeral cot",
+ "image": "uttara_bhadrapada.webp"
+ },
+ {
+ "id": 27,
+ "name": "Revati",
+ "ruling_planet": "Mercury",
+ "deity": "Pushan",
+ "symbol": "Fish or drum",
+ "image": "revati.webp"
+ }
+ ],
+ "hindi": [
+ {
+ "id": 1,
+ "name": "अश्विनी",
+ "ruling_planet": "केतु",
+ "deity": "अश्विनी कुमार",
+ "symbol": "घोड़े का सिर",
+ "image": "ashwini.webp"
+ },
+ {
+ "id": 2,
+ "name": "भरणी",
+ "ruling_planet": "शुक्र",
+ "deity": "यम",
+ "symbol": "योनि (गर्भ)",
+ "image": "bharani.webp"
+ },
+ {
+ "id": 3,
+ "name": "कृत्तिका",
+ "ruling_planet": "सूर्य",
+ "deity": "अग्नि",
+ "symbol": "उस्तरा या ज्वाला",
+ "image": "krittika.webp"
+ },
+ {
+ "id": 4,
+ "name": "रोहिणी",
+ "ruling_planet": "चंद्रमा",
+ "deity": "ब्रह्मा",
+ "symbol": "रथ या मंदिर",
+ "image": "rohini.webp"
+ },
+ {
+ "id": 5,
+ "name": "मृगशिरा",
+ "ruling_planet": "मंगल",
+ "deity": "सोम",
+ "symbol": "हिरण का सिर",
+ "image": "mrigshira.webp"
+ },
+ {
+ "id": 6,
+ "name": "आर्द्रा",
+ "ruling_planet": "राहु",
+ "deity": "रुद्र",
+ "symbol": "आंसू या हीरा",
+ "image": "aardra.webp"
+ },
+ {
+ "id": 7,
+ "name": "पुनर्वसु",
+ "ruling_planet": "बृहस्पति",
+ "deity": "अदिति",
+ "symbol": "धनुष और तरकश",
+ "image": "punarvasu.webp"
+ },
+ {
+ "id": 8,
+ "name": "पुष्य",
+ "ruling_planet": "शनि",
+ "deity": "बृहस्पति",
+ "symbol": "गाय का थन",
+ "image": "pushya.webp"
+ },
+ {
+ "id": 9,
+ "name": "आश्लेषा",
+ "ruling_planet": "बुध",
+ "deity": "नाग",
+ "symbol": "सर्प",
+ "image": "aashlesha.webp"
+ },
+ {
+ "id": 10,
+ "name": "मघा",
+ "ruling_planet": "केतु",
+ "deity": "पितर (पूर्वज)",
+ "symbol": "राज सिंहासन",
+ "image": "magha.webp"
+ },
+ {
+ "id": 11,
+ "name": "पूर्व फाल्गुनी",
+ "ruling_planet": "शुक्र",
+ "deity": "भग",
+ "symbol": "बिस्तर के अगले पैर",
+ "image": "purva_phalguni.webp"
+ },
+ {
+ "id": 12,
+ "name": "उत्तर फाल्गुनी",
+ "ruling_planet": "सूर्य",
+ "deity": "अर्यमन",
+ "symbol": "बिस्तर के पिछले पैर",
+ "image": "uttra_phalguni.webp"
+ },
+ {
+ "id": 13,
+ "name": "हस्त",
+ "ruling_planet": "चंद्रमा",
+ "deity": "सवितुर",
+ "symbol": "हाथ या मुट्ठी",
+ "image": "hasta.webp"
+ },
+ {
+ "id": 14,
+ "name": "चित्रा",
+ "ruling_planet": "मंगल",
+ "deity": "विश्वकर्मा",
+ "symbol": "चमकीला गहना या मोती",
+ "image": "chitra.webp"
+ },
+ {
+ "id": 15,
+ "name": "स्वाति",
+ "ruling_planet": "राहु",
+ "deity": "वायु",
+ "symbol": "पौधे का अंकुर",
+ "image": "swati.webp"
+ },
+ {
+ "id": 16,
+ "name": "विशाखा",
+ "ruling_planet": "बृहस्पति",
+ "deity": "इंद्र-अग्नि",
+ "symbol": "विजय द्वार",
+ "image": "vishakha.webp"
+ },
+ {
+ "id": 17,
+ "name": "अनुराधा",
+ "ruling_planet": "शनि",
+ "deity": "मित्र",
+ "symbol": "कमल का फूल",
+ "image": "anuradha.webp"
+ },
+ {
+ "id": 18,
+ "name": "ज्येष्ठा",
+ "ruling_planet": "बुध",
+ "deity": "इंद्र",
+ "symbol": "गोलाकार ताबीज",
+ "image": "jyeshtha.webp"
+ },
+ {
+ "id": 19,
+ "name": "मूल",
+ "ruling_planet": "केतु",
+ "deity": "निरृति",
+ "symbol": "शेर की पूंछ या जड़ें",
+ "image": "mula.webp"
+ },
+ {
+ "id": 20,
+ "name": "पूर्वाषाढ़ा",
+ "ruling_planet": "शुक्र",
+ "deity": "आपः (जल)",
+ "symbol": "हाथी दांत या पंखा",
+ "image": "purva_ashadha.webp"
+ },
+ {
+ "id": 21,
+ "name": "उत्तराषाढ़ा",
+ "ruling_planet": "सूर्य",
+ "deity": "विश्वेदेव",
+ "symbol": "हाथी दांत",
+ "image": "uttara_ashadha.webp"
+ },
+ {
+ "id": 22,
+ "name": "श्रवण",
+ "ruling_planet": "चंद्रमा",
+ "deity": "विष्णु",
+ "symbol": "कान या तीन पदचिह्न",
+ "image": "shravana.webp"
+ },
+ {
+ "id": 23,
+ "name": "धनिष्ठा",
+ "ruling_planet": "मंगल",
+ "deity": "वसु",
+ "symbol": "ढोल या बांसुरी",
+ "image": "dhanishta.webp"
+ },
+ {
+ "id": 24,
+ "name": "शतभिषा",
+ "ruling_planet": "राहु",
+ "deity": "वरुण",
+ "symbol": "खाली वृत्त या 100 तारे",
+ "image": "shatabhisha.webp"
+ },
+ {
+ "id": 25,
+ "name": "पूर्व भाद्रपद",
+ "ruling_planet": "बृहस्पति",
+ "deity": "अजैकपाद",
+ "symbol": "चिता के अगले पैर",
+ "image": "purva_bhadrapada.webp"
+ },
+ {
+ "id": 26,
+ "name": "उत्तर भाद्रपद",
+ "ruling_planet": "शनि",
+ "deity": "अहिर्बुध्न्य",
+ "symbol": "चिता के पिछले पैर",
+ "image": "uttara_bhadrapada.webp"
+ },
+ {
+ "id": 27,
+ "name": "रेवती",
+ "ruling_planet": "बुध",
+ "deity": "पूषन",
+ "symbol": "मछली या ढोल",
+ "image": "revati.webp"
+ }
+ ]
+ }
+}
diff --git a/src/data/numbers.json b/src/data/numbers.json
index 741dbfbd..69f7128c 100644
--- a/src/data/numbers.json
+++ b/src/data/numbers.json
@@ -6,17 +6,83 @@
"title": "Hindi Numbers",
"description": "A collection of numbers in Hindi script with their names.",
"data": [
- { "id": 0, "letter": "०", "text": "शून्य", "description": "Zero", "emoji": "0" },
- { "id": 1, "letter": "१", "text": "एक", "description": "One", "emoji": "1" },
- { "id": 2, "letter": "२", "text": "दो", "description": "Two", "emoji": "2" },
- { "id": 3, "letter": "३", "text": "तीन", "description": "Three", "emoji": "3" },
- { "id": 4, "letter": "४", "text": "चार", "description": "Four", "emoji": "4" },
- { "id": 5, "letter": "५", "text": "पांच", "description": "Five", "emoji": "5" },
- { "id": 6, "letter": "६", "text": "छह", "description": "Six", "emoji": "6" },
- { "id": 7, "letter": "७", "text": "सात", "description": "Seven", "emoji": "7" },
- { "id": 8, "letter": "८", "text": "आठ", "description": "Eight", "emoji": "8" },
- { "id": 9, "letter": "९", "text": "नौ", "description": "Nine", "emoji": "9" },
- { "id": 10, "letter": "१०", "text": "दस", "description": "Ten", "emoji": "10" }
+ {
+ "id": 0,
+ "letter": "०",
+ "text": "शून्य",
+ "description": "Zero",
+ "emoji": "0"
+ },
+ {
+ "id": 1,
+ "letter": "१",
+ "text": "एक",
+ "description": "One",
+ "emoji": "1"
+ },
+ {
+ "id": 2,
+ "letter": "२",
+ "text": "दो",
+ "description": "Two",
+ "emoji": "2"
+ },
+ {
+ "id": 3,
+ "letter": "३",
+ "text": "तीन",
+ "description": "Three",
+ "emoji": "3"
+ },
+ {
+ "id": 4,
+ "letter": "४",
+ "text": "चार",
+ "description": "Four",
+ "emoji": "4"
+ },
+ {
+ "id": 5,
+ "letter": "५",
+ "text": "पांच",
+ "description": "Five",
+ "emoji": "5"
+ },
+ {
+ "id": 6,
+ "letter": "६",
+ "text": "छह",
+ "description": "Six",
+ "emoji": "6"
+ },
+ {
+ "id": 7,
+ "letter": "७",
+ "text": "सात",
+ "description": "Seven",
+ "emoji": "7"
+ },
+ {
+ "id": 8,
+ "letter": "८",
+ "text": "आठ",
+ "description": "Eight",
+ "emoji": "8"
+ },
+ {
+ "id": 9,
+ "letter": "९",
+ "text": "नौ",
+ "description": "Nine",
+ "emoji": "9"
+ },
+ {
+ "id": 10,
+ "letter": "१०",
+ "text": "दस",
+ "description": "Ten",
+ "emoji": "10"
+ }
]
},
"morse": {
@@ -26,16 +92,76 @@
"title": "Morse Code Numbers",
"description": "A collection of numbers in Morse code.",
"data": [
- { "id": 0, "letter": "0", "text": "0", "description": "Zero", "emoji": "−−−−−" },
- { "id": 1, "letter": "1", "text": "1", "description": "One", "emoji": "•−−−−" },
- { "id": 2, "letter": "2", "text": "2", "description": "Two", "emoji": "••−−−" },
- { "id": 3, "letter": "3", "text": "3", "description": "Three", "emoji": "•••−−" },
- { "id": 4, "letter": "4", "text": "4", "description": "Four", "emoji": "••••−" },
- { "id": 5, "letter": "5", "text": "5", "description": "Five", "emoji": "•••••" },
- { "id": 6, "letter": "6", "text": "6", "description": "Six", "emoji": "−••••" },
- { "id": 7, "letter": "7", "text": "7", "description": "Seven", "emoji": "−−•••" },
- { "id": 8, "letter": "8", "text": "8", "description": "Eight", "emoji": "−−−••" },
- { "id": 9, "letter": "9", "text": "9", "description": "Nine", "emoji": "−−−−•" }
+ {
+ "id": 0,
+ "letter": "0",
+ "text": "−−−−−",
+ "description": "Zero",
+ "emoji": "−−−−−"
+ },
+ {
+ "id": 1,
+ "letter": "1",
+ "text": "•−−−−",
+ "description": "One",
+ "emoji": "•−−−−"
+ },
+ {
+ "id": 2,
+ "letter": "2",
+ "text": "••−−−",
+ "description": "Two",
+ "emoji": "••−−−"
+ },
+ {
+ "id": 3,
+ "letter": "3",
+ "text": "•••−−",
+ "description": "Three",
+ "emoji": "•••−−"
+ },
+ {
+ "id": 4,
+ "letter": "4",
+ "text": "••••−",
+ "description": "Four",
+ "emoji": "••••−"
+ },
+ {
+ "id": 5,
+ "letter": "5",
+ "text": "•••••",
+ "description": "Five",
+ "emoji": "•••••"
+ },
+ {
+ "id": 6,
+ "letter": "6",
+ "text": "−••••",
+ "description": "Six",
+ "emoji": "−••••"
+ },
+ {
+ "id": 7,
+ "letter": "7",
+ "text": "−−•••",
+ "description": "Seven",
+ "emoji": "−−•••"
+ },
+ {
+ "id": 8,
+ "letter": "8",
+ "text": "−−−••",
+ "description": "Eight",
+ "emoji": "−−−••"
+ },
+ {
+ "id": 9,
+ "letter": "9",
+ "text": "−−−−•",
+ "description": "Nine",
+ "emoji": "−−−−•"
+ }
]
},
"roman": {
@@ -45,37 +171,223 @@
"title": "Roman Numerals",
"description": "A collection of numbers in Roman numerals.",
"data": [
- { "id": 0, "letter": "N", "text": "0", "description": "Null (Zero)", "emoji": "" },
- { "id": 1, "letter": "I", "text": "1", "description": "One", "emoji": "" },
- { "id": 2, "letter": "II", "text": "2", "description": "Two", "emoji": "" },
- { "id": 3, "letter": "III", "text": "3", "description": "Three", "emoji": "" },
- { "id": 4, "letter": "IV", "text": "4", "description": "Four", "emoji": "" },
- { "id": 5, "letter": "V", "text": "5", "description": "Five", "emoji": "" },
- { "id": 6, "letter": "VI", "text": "6", "description": "Six", "emoji": "" },
- { "id": 7, "letter": "VII", "text": "7", "description": "Seven", "emoji": "" },
- { "id": 8, "letter": "VIII", "text": "8", "description": "Eight", "emoji": "" },
- { "id": 9, "letter": "IX", "text": "9", "description": "Nine", "emoji": "" },
- { "id": 10, "letter": "X", "text": "10", "description": "Ten", "emoji": "" },
- { "id": 11, "letter": "XI", "text": "11", "description": "Eleven", "emoji": "" },
- { "id": 20, "letter": "XX", "text": "20", "description": "Twenty", "emoji": "" },
- { "id": 30, "letter": "XXX", "text": "30", "description": "Thirty", "emoji": "" },
- { "id": 40, "letter": "XL", "text": "40", "description": "Forty", "emoji": "" },
- { "id": 50, "letter": "L", "text": "50", "description": "Fifty", "emoji": "" },
- { "id": 60, "letter": "LX", "text": "60", "description": "Sixty", "emoji": "" },
- { "id": 70, "letter": "LXX", "text": "70", "description": "Seventy", "emoji": "" },
- { "id": 80, "letter": "LXXX", "text": "80", "description": "Eighty", "emoji": "" },
- { "id": 90, "letter": "XC", "text": "90", "description": "Ninety", "emoji": "" },
- { "id": 100, "letter": "C", "text": "100", "description": "One Hundred", "emoji": "" },
- { "id": 200, "letter": "CC", "text": "200", "description": "Two Hundred", "emoji": "" },
- { "id": 300, "letter": "CCC", "text": "300", "description": "Three Hundred", "emoji": "" },
- { "id": 400, "letter": "CD", "text": "400", "description": "Four Hundred", "emoji": "" },
- { "id": 500, "letter": "D", "text": "500", "description": "Five Hundred", "emoji": "" },
- { "id": 600, "letter": "DC", "text": "600", "description": "Six Hundred", "emoji": "" },
- { "id": 700, "letter": "DCC", "text": "700", "description": "Seven Hundred", "emoji": "" },
- { "id": 800, "letter": "DCCC", "text": "800", "description": "Eight Hundred", "emoji": "" },
- { "id": 900, "letter": "CM", "text": "900", "description": "Nine Hundred", "emoji": "" },
- { "id": 1000, "letter": "M", "text": "1000", "description": "One Thousand", "emoji": "" },
- { "id": 1001, "letter": "MI", "text": "1001", "description": "One Thousand One", "emoji": "" }
+ {
+ "id": 0,
+ "letter": "N",
+ "text": "0",
+ "description": "Null (Zero)",
+ "emoji": ""
+ },
+ {
+ "id": 1,
+ "letter": "I",
+ "text": "1",
+ "description": "One",
+ "emoji": ""
+ },
+ {
+ "id": 2,
+ "letter": "II",
+ "text": "2",
+ "description": "Two",
+ "emoji": ""
+ },
+ {
+ "id": 3,
+ "letter": "III",
+ "text": "3",
+ "description": "Three",
+ "emoji": ""
+ },
+ {
+ "id": 4,
+ "letter": "IV",
+ "text": "4",
+ "description": "Four",
+ "emoji": ""
+ },
+ {
+ "id": 5,
+ "letter": "V",
+ "text": "5",
+ "description": "Five",
+ "emoji": ""
+ },
+ {
+ "id": 6,
+ "letter": "VI",
+ "text": "6",
+ "description": "Six",
+ "emoji": ""
+ },
+ {
+ "id": 7,
+ "letter": "VII",
+ "text": "7",
+ "description": "Seven",
+ "emoji": ""
+ },
+ {
+ "id": 8,
+ "letter": "VIII",
+ "text": "8",
+ "description": "Eight",
+ "emoji": ""
+ },
+ {
+ "id": 9,
+ "letter": "IX",
+ "text": "9",
+ "description": "Nine",
+ "emoji": ""
+ },
+ {
+ "id": 10,
+ "letter": "X",
+ "text": "10",
+ "description": "Ten",
+ "emoji": ""
+ },
+ {
+ "id": 11,
+ "letter": "XI",
+ "text": "11",
+ "description": "Eleven",
+ "emoji": ""
+ },
+ {
+ "id": 20,
+ "letter": "XX",
+ "text": "20",
+ "description": "Twenty",
+ "emoji": ""
+ },
+ {
+ "id": 30,
+ "letter": "XXX",
+ "text": "30",
+ "description": "Thirty",
+ "emoji": ""
+ },
+ {
+ "id": 40,
+ "letter": "XL",
+ "text": "40",
+ "description": "Forty",
+ "emoji": ""
+ },
+ {
+ "id": 50,
+ "letter": "L",
+ "text": "50",
+ "description": "Fifty",
+ "emoji": ""
+ },
+ {
+ "id": 60,
+ "letter": "LX",
+ "text": "60",
+ "description": "Sixty",
+ "emoji": ""
+ },
+ {
+ "id": 70,
+ "letter": "LXX",
+ "text": "70",
+ "description": "Seventy",
+ "emoji": ""
+ },
+ {
+ "id": 80,
+ "letter": "LXXX",
+ "text": "80",
+ "description": "Eighty",
+ "emoji": ""
+ },
+ {
+ "id": 90,
+ "letter": "XC",
+ "text": "90",
+ "description": "Ninety",
+ "emoji": ""
+ },
+ {
+ "id": 100,
+ "letter": "C",
+ "text": "100",
+ "description": "One Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 200,
+ "letter": "CC",
+ "text": "200",
+ "description": "Two Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 300,
+ "letter": "CCC",
+ "text": "300",
+ "description": "Three Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 400,
+ "letter": "CD",
+ "text": "400",
+ "description": "Four Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 500,
+ "letter": "D",
+ "text": "500",
+ "description": "Five Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 600,
+ "letter": "DC",
+ "text": "600",
+ "description": "Six Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 700,
+ "letter": "DCC",
+ "text": "700",
+ "description": "Seven Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 800,
+ "letter": "DCCC",
+ "text": "800",
+ "description": "Eight Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 900,
+ "letter": "CM",
+ "text": "900",
+ "description": "Nine Hundred",
+ "emoji": ""
+ },
+ {
+ "id": 1000,
+ "letter": "M",
+ "text": "1000",
+ "description": "One Thousand",
+ "emoji": ""
+ },
+ {
+ "id": 1001,
+ "letter": "MI",
+ "text": "1001",
+ "description": "One Thousand One",
+ "emoji": ""
+ }
]
}
}
diff --git a/src/data/state.json b/src/data/state.json
index c0f042c0..86fc694a 100644
--- a/src/data/state.json
+++ b/src/data/state.json
@@ -19,9 +19,12 @@
"famous_dress": "Dhoti and Saree",
"famous_language": "Telugu",
"famous_sport": "Kabaddi",
- "state_color": "",
- "state_animal": "",
+ "state_color": "Sky Blue",
+ "state_animal": "Blackbuck",
"state_flower": "Jasmine",
+ "state_tree": "Neem",
+ "mineral_resources": "Limestone",
+ "gdp": "₹13.17 lakh crore",
"surface_area": 162968,
"districts_count": 26,
"largest_city": "Visakhapatnam",
@@ -51,9 +54,12 @@
"famous_dress": "Mekhela Chador",
"famous_language": "Assamese",
"famous_sport": "Dhopkhel",
- "state_color": "",
- "state_animal": "One-horned rhinoceros",
+ "state_color": "Forest Green",
+ "state_animal": "One-horned Rhinoceros",
"state_flower": "Foxtail Orchid",
+ "state_tree": "Hollong",
+ "mineral_resources": "Petroleum",
+ "gdp": "₹4.51 lakh crore",
"surface_area": 78438,
"districts_count": 35,
"largest_city": "Guwahati",
@@ -80,12 +86,15 @@
"famous_person": "Tsangyang Gyatso",
"famous_food": "Thukpa",
"famous_place": "Tawang Monastery",
- "famous_dress": "Hand-woven garments with geometric patterns",
+ "famous_dress": "Hand-woven garments",
"famous_language": "Nyishi",
"famous_sport": "Archery",
- "state_color": "",
- "state_animal": "Mithun",
- "state_flower": "Foxtail orchid",
+ "state_color": "Orange",
+ "state_animal": "Gayal",
+ "state_flower": "Foxtail Orchid",
+ "state_tree": "Hollong",
+ "mineral_resources": "Coal",
+ "gdp": "₹0.32 lakh crore",
"surface_area": 83743,
"districts_count": 28,
"largest_city": "Itanagar",
@@ -108,17 +117,19 @@
"official_website": "https://state.bihar.gov.in/",
"isActive": true,
"alternate_dance": "Bidesia",
- "famous_quote": "Bihar is not just a state; it is a civilization that has shaped India's past, present, and future.",
+ "famous_quote": "Bihar is not just a state; it is a civilization.",
"famous_person": "Aryabhata",
"famous_food": "Litti Chokha",
"famous_place": "Mahabodhi Temple",
"famous_dress": "Dhoti-Kurta and Saree",
"famous_language": "Hindi",
"famous_sport": "Kabaddi",
- "state_color": "",
+ "state_color": "Crimson",
"state_animal": "Gaur",
"state_flower": "Kachnar",
"state_tree": "Peepal tree",
+ "mineral_resources": "Bauxite",
+ "gdp": "₹7.45 lakh crore",
"surface_area": 94163,
"districts_count": 38,
"largest_city": "Patna",
@@ -148,9 +159,12 @@
"famous_dress": "Langa Voni",
"famous_language": "Telugu",
"famous_sport": "Kabaddi",
- "state_color": "Green",
- "state_animal": "Spotted deer (Jinka)",
- "state_flower": "Tangedu Puvvu (Senna auriculata)",
+ "state_color": "Magenta",
+ "state_animal": "Spotted Deer",
+ "state_flower": "Tanner's Cassia",
+ "state_tree": "Coconut",
+ "mineral_resources": "Ilmenite",
+ "gdp": "₹9.78 lakh crore",
"surface_area": "112,077 km²",
"districts_count": 33,
"largest_city": "Hyderabad",
@@ -180,10 +194,12 @@
"famous_dress": "Chaniya Choli and Kediyu",
"famous_language": "Gujarati",
"famous_sport": "Cricket",
- "state_color": "Saffron",
+ "state_color": "Pink",
"state_animal": "Asiatic Lion",
"state_flower": "Marigold",
"state_tree": "Banyan",
+ "mineral_resources": "Natural Gas",
+ "gdp": "₹22.61 lakh crore",
"surface_area": 196024,
"districts_count": 33,
"largest_city": "Ahmedabad",
@@ -213,10 +229,12 @@
"famous_dress": "Lugda saree with a Polkha blouse",
"famous_language": "Chhattisgarhi",
"famous_sport": "Kabaddi",
- "state_color": "",
- "state_animal": "Wild water buffalo",
- "state_flower": "French marigold",
+ "state_color": "Violet",
+ "state_animal": "Wild Water Buffalo",
+ "state_flower": "Lady's Slipper Orchid",
"state_tree": "Sal",
+ "mineral_resources": "Iron Ore",
+ "gdp": "₹4.09 lakh crore",
"surface_area": 135192,
"districts_count": 33,
"largest_city": "Raipur",
@@ -246,9 +264,12 @@
"famous_dress": "Pano Bhaju",
"famous_language": "Konkani",
"famous_sport": "Football",
- "state_color": "",
+ "state_color": "Brown",
"state_animal": "Gaur",
- "state_flower": "Jasmine",
+ "state_flower": "Red Jasmine",
+ "state_tree": "Matti",
+ "mineral_resources": "Iron Ore",
+ "gdp": "₹0.89 lakh crore",
"surface_area": 3702,
"districts_count": 2,
"largest_city": "Vasco da Gama",
@@ -278,10 +299,12 @@
"famous_dress": "Kurta–pyjama and saree with shawl",
"famous_language": "Hindi",
"famous_sport": "Cricket",
- "state_color": "Blue",
- "state_animal": "Blackbuck",
- "state_flower": "Lotus",
+ "state_color": "Peach",
+ "state_animal": "Nilgai",
+ "state_flower": "Alfalfa",
"state_tree": "Amaltas",
+ "mineral_resources": "Sand",
+ "gdp": "₹9.23 lakh crore",
"surface_area": 1483,
"districts_count": 11,
"largest_city": "Delhi (the NCT itself)",
@@ -308,12 +331,15 @@
"famous_person": "Jaikishan (of Shankar–Jaikishan music duo)",
"famous_food": "Ubadiyu",
"famous_place": "Diu Fort",
- "famous_dress": "Ghaghra-blouse-odhani for women; dhoti or pajama with kurta/shirt for men",
+ "famous_dress": "Ghaghra-blouse-odhani, dhoti-kurta",
"famous_language": "Gujarati",
"famous_sport": "Cricket",
- "state_color": "",
+ "state_color": "Sand",
"state_animal": "",
"state_flower": "",
+ "state_tree": "Not designated",
+ "mineral_resources": "Limestone",
+ "gdp": "₹0.03 lakh crore",
"surface_area": 603,
"districts_count": 3,
"largest_city": "Silvassa",
@@ -336,16 +362,19 @@
"official_website": "https://kerala.gov.in",
"isActive": true,
"alternate_dance": "Mohiniyattam",
- "famous_quote": "God’s Own Country",
+ "famous_quote": "God's Own Country",
"famous_person": "E. Sreedharan",
- "famous_food": "Sadya, Kerala Parotta with Beef Fry",
+ "famous_food": "Sadya",
"famous_place": "Alleppey Backwaters",
"famous_dress": "Mundu, Kasavu Saree",
"famous_language": "Malayalam",
"famous_sport": "Boat Racing",
- "state_color": "N/A",
+ "state_color": "Dark Green",
"state_animal": "Indian Elephant",
"state_flower": "Golden Shower",
+ "state_tree": "Coconut",
+ "mineral_resources": "Ilmenite",
+ "gdp": "₹9.78 lakh crore",
"surface_area": 38863,
"districts_count": 14,
"largest_city": "Kochi",
@@ -375,9 +404,12 @@
"famous_dress": "Panche, Ilkal Saree",
"famous_language": "Kannada",
"famous_sport": "Kabaddi",
- "state_color": "Red and Yellow",
+ "state_color": "Navy Blue",
"state_animal": "Indian Elephant",
"state_flower": "Lotus",
+ "state_tree": "Sandalwood",
+ "mineral_resources": "Iron Ore",
+ "gdp": "₹20.51 lakh crore",
"surface_area": 191791,
"districts_count": 31,
"largest_city": "Bengaluru",
@@ -404,12 +436,15 @@
"famous_person": "Dr. B. R. Ambedkar",
"famous_food": "Vada Pav, Puran Poli, Misal Pav",
"famous_place": "Ajanta and Ellora Caves",
- "famous_dress": "Nauvari Saree (women), Dhoti-Kurta with Pheta (men)",
+ "famous_dress": "Nauvari Saree",
"famous_language": "Marathi",
"famous_sport": "Kabaddi",
- "state_color": "Saffron",
+ "state_color": "Maroon",
"state_animal": "Indian Giant Squirrel",
- "state_flower": "Jarul (Pride of India)",
+ "state_flower": "Jarul",
+ "state_tree": "Mango",
+ "mineral_resources": "Coal",
+ "gdp": "₹35.27 lakh crore",
"surface_area": 307713,
"districts_count": 36,
"largest_city": "Mumbai",
@@ -439,9 +474,12 @@
"famous_dress": "Lugda and blouse with Odhni",
"famous_language": "Hindi",
"famous_sport": "Malkhamb",
- "state_color": "N/A",
- "state_animal": "Barasingha",
- "state_flower": "White Lily",
+ "state_color": "Bronze",
+ "state_animal": "Swamp Deer",
+ "state_flower": "Palash",
+ "state_tree": "Banyan",
+ "mineral_resources": "Diamond",
+ "gdp": "₹12.60 lakh crore",
"surface_area": 308350,
"districts_count": 55,
"largest_city": "Indore",
@@ -457,7 +495,7 @@
"name": "Odisha",
"dance": "Odissi",
"festival": "Rath Yatra",
- "description": "Odissi is one of India’s eight classical dance forms, deeply rooted in temple rituals and sculptures. Ghumura Dance is a warrior tribal dance with drums and symbolic masks.",
+ "description": "Odissi is one of India's eight classical dance forms, deeply rooted in temple rituals and sculptures. Ghumura Dance is a warrior tribal dance with drums and symbolic masks.",
"image": "odisha.webp",
"svg": "Odisha.svg",
"wikiLink": "https://en.wikipedia.org/wiki/Odisha",
@@ -471,9 +509,12 @@
"famous_dress": "Sambalpuri Saree, Dhoti & Kurta",
"famous_language": "Odia",
"famous_sport": "Hockey",
- "state_color": "N/A",
+ "state_color": "Moss Green",
"state_animal": "Sambar Deer",
- "state_flower": "Ashoka Flower",
+ "state_flower": "Ashoka",
+ "state_tree": "Banyan",
+ "mineral_resources": "Iron Ore",
+ "gdp": "₹7.92 lakh crore",
"surface_area": 155707,
"districts_count": 30,
"largest_city": "Bhubaneswar",
@@ -503,9 +544,12 @@
"famous_dress": "Dhoti and Kurta, Saree",
"famous_language": "Bengali",
"famous_sport": "Football",
- "state_color": "N/A",
+ "state_color": "Lilac",
"state_animal": "Fishing Cat",
- "state_flower": "Night-flowering Jasmine (Shiuli)",
+ "state_flower": "Night-flowering Jasmine",
+ "state_tree": "Chatim",
+ "mineral_resources": "Coal",
+ "gdp": "₹16.64 lakh crore",
"surface_area": 88752,
"districts_count": 23,
"largest_city": "Kolkata",
@@ -535,9 +579,12 @@
"famous_dress": "Saree or Tribal Dress",
"famous_language": "Hindi",
"famous_sport": "Archery",
- "state_color": "N/A",
- "state_animal": "Elephant",
+ "state_color": "Cyan",
+ "state_animal": "Indian Elephant",
"state_flower": "Palash",
+ "state_tree": "Sal",
+ "mineral_resources": "Coal",
+ "gdp": "₹3.83 lakh crore",
"surface_area": 79714,
"districts_count": 24,
"largest_city": "Jamshedpur",
@@ -564,12 +611,15 @@
"famous_person": "Dr. B. R. Ambedkar",
"famous_food": "Tunday Kababi, Bedai, Petha",
"famous_place": "Varanasi",
- "famous_dress": "Kurta-Pyjama with Dupatta (men), Saree or Salwar Kameez (women)",
+ "famous_dress": "Saree or Salwar Kameez",
"famous_language": "Hindi",
"famous_sport": "Wrestling",
- "state_color": "N/A",
- "state_animal": "Swamp Deer (Barasingha)",
- "state_flower": "Palash (Flame of the Forest)",
+ "state_color": "Plum",
+ "state_animal": "Swamp Deer",
+ "state_flower": "Palash",
+ "state_tree": "Ashoka",
+ "mineral_resources": "Limestone",
+ "gdp": "₹21.73 lakh crore",
"surface_area": 243286,
"districts_count": 75,
"largest_city": "Kanpur",
@@ -599,9 +649,12 @@
"famous_dress": "Traditional tribal attire with beadwork and headgear (varies by tribe)",
"famous_language": "Nagamese",
"famous_sport": "Wrestling",
- "state_color": "N/A",
- "state_animal": "Mithun (Gayal)",
+ "state_color": "Royal Blue",
+ "state_animal": "Gayal",
"state_flower": "Rhododendron",
+ "state_tree": "Alder",
+ "mineral_resources": "Coal",
+ "gdp": "₹0.35 lakh crore",
"surface_area": 16579,
"districts_count": 16,
"largest_city": "Dimapur",
@@ -617,7 +670,7 @@
"name": "Manipur",
"dance": "Manipuri Dance",
"festival": "Yaoshang",
- "description": "Manipuri Dance is one of India’s eight classical dance forms, known for its devotional themes and graceful hand and body movements. Thang Ta is a traditional Manipuri martial art/dance using swords and spears.",
+ "description": "Manipuri Dance is one of India's eight classical dance forms, known for its devotional themes and graceful hand and body movements. Thang Ta is a traditional Manipuri martial art/dance using swords and spears.",
"image": "manipur.webp",
"svg": "Manipur.svg",
"wikiLink": "https://en.wikipedia.org/wiki/Manipur",
@@ -631,9 +684,12 @@
"famous_dress": "Phanek and Innaphi",
"famous_language": "Meitei (Manipuri)",
"famous_sport": "Polo",
- "state_color": "N/A",
+ "state_color": "Purple",
"state_animal": "Sangai",
- "state_flower": "Shirui Lily",
+ "state_flower": "Siroi Lily",
+ "state_tree": "Uningthou",
+ "mineral_resources": "Limestone",
+ "gdp": "₹0.41 lakh crore",
"surface_area": 22327,
"districts_count": 16,
"largest_city": "Imphal",
@@ -660,12 +716,15 @@
"famous_person": "Mukul Sangma",
"famous_food": "Jadoh",
"famous_place": "Cherrapunji",
- "famous_dress": "Jainsem and Dhara, Jymphong",
+ "famous_dress": "Jainsem and Dhara",
"famous_language": "Khasi",
"famous_sport": "Archery",
- "state_color": "N/A",
+ "state_color": "Indigo",
"state_animal": "Clouded Leopard",
"state_flower": "Lady's Slipper Orchid",
+ "state_tree": "Gamhar",
+ "mineral_resources": "Coal",
+ "gdp": "₹0.46 lakh crore",
"surface_area": 22429,
"districts_count": 12,
"largest_city": "Shillong",
@@ -681,7 +740,7 @@
"name": "Mizoram",
"dance": "Cheraw Dance",
"festival": "Chapchar Kut",
- "description": "Cheraw Dance, also known as the Bamboo Dance, involves dancers stepping between moving bamboo sticks — it’s one of India’s most iconic tribal dances. Khuallam is another group dance performed during social gatherings.",
+ "description": "Cheraw Dance, also known as the Bamboo Dance, involves dancers stepping between moving bamboo sticks — it's one of India's most iconic tribal dances. Khuallam is another group dance performed during social gatherings.",
"image": "mizoram.webp",
"svg": "Mizoram.svg",
"wikiLink": "https://en.wikipedia.org/wiki/Mizoram",
@@ -695,9 +754,12 @@
"famous_dress": "Puan, Shirt with Puanchei",
"famous_language": "Mizo",
"famous_sport": "Football",
- "state_color": "N/A",
- "state_animal": "Serow",
- "state_flower": "Red Vanda (Renanthera imschootiana)",
+ "state_color": "Lavender",
+ "state_animal": "Himalayan Serow",
+ "state_flower": "Red Vanda",
+ "state_tree": "Iron Wood",
+ "mineral_resources": "Limestone",
+ "gdp": "₹0.32 lakh crore",
"surface_area": 21081,
"districts_count": 11,
"largest_city": "Aizawl",
@@ -726,9 +788,12 @@
"famous_dress": "Ghagra-Choli",
"famous_language": "Rajasthani",
"famous_sport": "Polo",
- "state_color": "Pink",
- "state_animal": "Camel",
+ "state_color": "Mustard",
+ "state_animal": "Chinkara",
"state_flower": "Rohida",
+ "state_tree": "Khejri",
+ "mineral_resources": "Zinc",
+ "gdp": "₹12.87 lakh crore",
"surface_area": 342239,
"districts_count": 41,
"largest_city": "Jaipur",
@@ -758,9 +823,12 @@
"famous_dress": "Bakhu (both men and women)",
"famous_language": "Nepali",
"famous_sport": "Football",
- "state_color": "N/A",
+ "state_color": "Brick Red",
"state_animal": "Red Panda",
- "state_flower": "Noble Orchid (Dendrobium nobile)",
+ "state_flower": "Noble Orchid",
+ "state_tree": "Rhododendron",
+ "mineral_resources": "Copper",
+ "gdp": "₹0.46 lakh crore",
"surface_area": 7096,
"districts_count": 6,
"largest_city": "Gangtok",
@@ -787,12 +855,15 @@
"famous_person": "Dr. A.P.J. Abdul Kalam",
"famous_food": "Sambar, Dosa, Idli",
"famous_place": "Meenakshi Temple (Madurai)",
- "famous_dress": "Veshti (men), Saree (women)",
+ "famous_dress": "Veshti, Saree",
"famous_language": "Tamil",
"famous_sport": "Kabaddi",
- "state_color": "N/A",
+ "state_color": "Rose",
"state_animal": "Nilgiri Tahr",
- "state_flower": "Gloriosa Lily",
+ "state_flower": "Glory Lily",
+ "state_tree": "Palm",
+ "mineral_resources": "Lignite",
+ "gdp": "₹24.85 lakh crore",
"surface_area": 130058,
"districts_count": 38,
"largest_city": "Chennai",
@@ -819,12 +890,15 @@
"famous_person": "Sachin Dev Burman",
"famous_food": "Mui Borok",
"famous_place": "Ujjayanta Palace",
- "famous_dress": "Rignai and Risa (women), Rikutu Gamcha (men)",
+ "famous_dress": "Rignai and Risa, Rikutu Gamcha",
"famous_language": "Kokborok",
"famous_sport": "Football",
- "state_color": "N/A",
+ "state_color": "Light Pink",
"state_animal": "Phayre's Langur",
- "state_flower": "Mesua Ferrea (Nagkesar)",
+ "state_flower": "Nag Kesar",
+ "state_tree": "Agar",
+ "mineral_resources": "Natural Gas",
+ "gdp": "₹0.64 lakh crore",
"surface_area": 10491,
"districts_count": 8,
"largest_city": "Agartala",
@@ -854,9 +928,12 @@
"famous_dress": "Dhoti-Kurta with Pagri (men), Ghagra-Choli with Orhni (women)",
"famous_language": "Haryanvi",
"famous_sport": "Wrestling",
- "state_color": "N/A",
+ "state_color": "Grey",
"state_animal": "Blackbuck",
"state_flower": "Lotus",
+ "state_tree": "Peepal",
+ "mineral_resources": "Limestone",
+ "gdp": "₹9.96 lakh crore",
"surface_area": 44212,
"districts_count": 22,
"largest_city": "Faridabad",
@@ -886,9 +963,12 @@
"famous_dress": "Kurta-Pajama with Turban (men), Salwar-Kameez with Phulkari Dupatta (women)",
"famous_language": "Punjabi",
"famous_sport": "Kabaddi",
- "state_color": "N/A",
+ "state_color": "Goldenrod",
"state_animal": "Blackbuck",
- "state_flower": "Gladiolus",
+ "state_flower": "Sword Lily",
+ "state_tree": "Sheesham",
+ "mineral_resources": "Limestone",
+ "gdp": "₹6.44 lakh crore",
"surface_area": 50362,
"districts_count": 23,
"largest_city": "Ludhiana",
@@ -914,13 +994,16 @@
"famous_quote": "Devbhumi (Land of the Gods)",
"famous_person": "Narendra Singh Negi",
"famous_food": "Aloo Ke Gutke",
- "famous_place": "Char Dham (Yamunotri, Gangotri, Kedarnath, Badrinath)",
- "famous_dress": "Kurta with Pyjama and Waistcoat (men), Ghagra-Choli or Saree with Pichora (women)",
+ "famous_place": "Char Dham",
+ "famous_dress": "Ghagra-Choli",
"famous_language": "Garhwali",
"famous_sport": "Mountaineering",
- "state_color": "N/A",
- "state_animal": "Musk Deer",
+ "state_color": "Orchid",
+ "state_animal": "Alpine Musk Deer",
"state_flower": "Brahma Kamal",
+ "state_tree": "Burans",
+ "mineral_resources": "Limestone",
+ "gdp": "₹2.65 lakh crore",
"surface_area": 53483,
"districts_count": 13,
"largest_city": "Dehradun",
@@ -950,9 +1033,12 @@
"famous_dress": "Churidar Pyjama with Waistcoat and Himachali Cap (men), Ghagra-Choli with Dupatta (women)",
"famous_language": "Pahari",
"famous_sport": "Cricket",
- "state_color": "N/A",
+ "state_color": "Olive",
"state_animal": "Snow Leopard",
"state_flower": "Pink Rhododendron",
+ "state_tree": "Deodar",
+ "mineral_resources": "Limestone",
+ "gdp": "₹1.85 lakh crore",
"surface_area": 55673,
"districts_count": 12,
"largest_city": "Shimla",
@@ -982,9 +1068,12 @@
"famous_dress": "Pheran",
"famous_language": "Kashmiri",
"famous_sport": "Winter Sports",
- "state_color": "N/A",
- "state_animal": "Hangul",
- "state_flower": "Lotus",
+ "state_color": "Lemon",
+ "state_animal": "Kashmir Stag",
+ "state_flower": "Common Rhododendron",
+ "state_tree": "Chinar",
+ "mineral_resources": "Limestone",
+ "gdp": "₹2.12 lakh crore",
"surface_area": 55538,
"districts_count": 20,
"largest_city": "Srinagar",
@@ -1011,12 +1100,15 @@
"famous_person": "Veer Savarkar",
"famous_food": "Fish Curry and Coconut Prawn Curry",
"famous_place": "Cellular Jail",
- "famous_dress": "Lungi and Shirt (men), Saree or Tribal Attire (women)",
+ "famous_dress": "Lungi and Shirt",
"famous_language": "Hindi",
"famous_sport": "Water Sports",
- "state_color": "N/A",
- "state_animal": "Dugong (Sea Cow)",
- "state_flower": "Andaman Pyinma (Lagerstroemia hypoleuca)",
+ "state_color": "Coral",
+ "state_animal": "Dugong",
+ "state_flower": "Andaman Pyinma",
+ "state_tree": "Andaman Padauk",
+ "mineral_resources": "Limestone",
+ "gdp": "₹0.08 lakh crore",
"surface_area": 8249,
"districts_count": 3,
"largest_city": "Port Blair",
@@ -1046,9 +1138,12 @@
"famous_dress": "Kurta-Pajama with Nehru Jacket (men), Salwar-Kameez with Dupatta (women)",
"famous_language": "Hindi",
"famous_sport": "Cricket",
- "state_color": "N/A",
+ "state_color": "Periwinkle",
"state_animal": "Indian Grey Mongoose",
- "state_flower": "Dahlia",
+ "state_flower": "Palash",
+ "state_tree": "Mango",
+ "mineral_resources": "Sand",
+ "gdp": "₹0.39 lakh crore",
"surface_area": 114,
"districts_count": 1,
"largest_city": "Chandigarh",
@@ -1075,12 +1170,15 @@
"famous_person": "Mohammed Faizal P. P.",
"famous_food": "Tuna Curry",
"famous_place": "Minicoy Island",
- "famous_dress": "Lungi and Shirt (men), Burqa and Hijab (women)",
+ "famous_dress": "Lungi and Shirt",
"famous_language": "Malayalam",
"famous_sport": "Football",
- "state_color": "N/A",
- "state_animal": "Butterflyfish",
- "state_flower": "Bougainvillea",
+ "state_color": "Teal",
+ "state_animal": "Butterfly Fish",
+ "state_flower": "Neelakurinji",
+ "state_tree": "Coconut",
+ "mineral_resources": "Coral",
+ "gdp": "₹0.01 lakh crore",
"surface_area": 32.62,
"districts_count": 1,
"largest_city": "Kavaratti",
@@ -1088,7 +1186,7 @@
"population": 64473,
"literacy_rate": 91.85,
"languages": ["Malayalam", "Jeseri", "Dhawari", "English"],
- "major_rivers": []
+ "major_rivers": ["N/A"]
},
{
"id": "ladakh",
@@ -1107,16 +1205,19 @@
"famous_person": "Sonam Wangchuk",
"famous_food": "Skyu",
"famous_place": "Pangong Lake",
- "famous_dress": "Goncha (for men), Sulma (for women)",
+ "famous_dress": "Goncha, Sulma",
"famous_language": "Ladakhi",
"famous_sport": "Ice Hockey",
- "state_color": "N/A",
+ "state_color": "Turquoise",
"state_animal": "Snow Leopard",
"state_flower": "Blue Poppy",
+ "state_tree": "Not designated",
+ "mineral_resources": "Boron",
+ "gdp": "₹0.06 lakh crore",
"surface_area": 59146,
"districts_count": 2,
"largest_city": "Leh",
- "capital": "Leh (Administrative), Kargil (Joint Capital)",
+ "capital": "Leh, Kargil",
"population": 274289,
"literacy_rate": 77.2,
"languages": ["Ladakhi", "Balti", "Urdu", "Hindi", "English"],
@@ -1142,9 +1243,12 @@
"famous_dress": "Dhoti and sari",
"famous_language": "Tamil",
"famous_sport": "Cricket",
- "state_color": "N/A",
- "state_animal": "Indian palm squirrel",
- "state_flower": "Cannonball tree flower",
+ "state_color": "Light Blue",
+ "state_animal": "Indian Palm Squirrel",
+ "state_flower": "Cannonball Tree flower",
+ "state_tree": "Bael",
+ "mineral_resources": "Limestone",
+ "gdp": "₹0.38 lakh crore",
"surface_area": 483,
"districts_count": 4,
"largest_city": "Puducherry",
diff --git a/src/data/testimonials.json b/src/data/testimonials.json
new file mode 100644
index 00000000..474a3606
--- /dev/null
+++ b/src/data/testimonials.json
@@ -0,0 +1,14 @@
+[
+ {
+ "text": "Every day I am amazed @abcdkbd is free, and I am so grateful for how much it has contributed to my kid's development.",
+ "author": "J. Hernandez, via Twitter"
+ },
+ {
+ "text": "Parents: If you are looking for an educational app for your 2-5 yr old, download @abcdkbd - seriously most research-based, engaging, non-annoying app. AND IT'S FREE.",
+ "author": "T. Peltier, via Twitter"
+ },
+ {
+ "text": "My 4-year old is working on @abcdkbd app this morning and loving it. The combo of school facts along with social/emotional content is outstanding.",
+ "author": "M. Nemerow, via Twitter"
+ }
+]
diff --git a/src/data/vedic.json b/src/data/vedic.json
index 9c9a9d99..6d52ea43 100644
--- a/src/data/vedic.json
+++ b/src/data/vedic.json
@@ -1,6 +1,7 @@
{
- "-comment": "'seconds' field is only used for unit conversion and is not displayed in Vedic Time Journey.",
- "time_units": [
+ "comment": "'seconds' field is only used for unit conversion and is not displayed in Vedic Time Journey.",
+ "disclaimer": "The tithi (lunar day) and paksha (lunar phase) displayed here are calculated based on a numeric logic following the Gregorian calendar.Due to technical limitations, this may not always match the exact tithi according to traditional Hindu calendar calculations which consider actual astronomical positions of the sun and moon. For precise religious observances, please consult authoritative panchang sources.",
+ "units": [
{
"name": "त्रुटि",
"seconds": 0.0000003086,
diff --git a/public/data/zodiacs.json b/src/data/zodiac.json
similarity index 87%
rename from public/data/zodiacs.json
rename to src/data/zodiac.json
index 79f14e5f..b9631026 100644
--- a/public/data/zodiacs.json
+++ b/src/data/zodiac.json
@@ -1,33 +1,33 @@
[
{
"name": {
- "english": "Mesha (Aries)",
- "hindi": "मेष (मेष राशि)"
+ "english": "Aries",
+ "hindi": "मेष"
},
"dates": {
"english": "April 14 - May 14",
"hindi": "14 अप्रैल - 14 मई"
},
- "image": "1.jpeg",
+ "image": "aries.webp",
"description": {
- "english": "Mesha is the first sign of the Indian zodiac, represented by the Ram. People born under this sign are known for their leadership qualities, courage, and enthusiasm.",
- "hindi": "मेष भारतीय राशि चक्र का पहला चिन्ह है, जिसे मेढ़े द्वारा दर्शाया जाता है। इस राशि के लोग नेतृत्व गुणों, साहस और उत्साह के लिए जाने जाते हैं।"
+ "english": "Mesha is symbolized by the Ram. Individuals born under this sign are known for their courage, determination, and leadership qualities.",
+ "hindi": "मेष को मेढ़े द्वारा दर्शाया जाता है। इस राशि के जातक अपने साहस, दृढ़ संकल्प और नेतृत्व गुणों के लिए जाने जाते हैं।"
},
"points": {
- "english": ["Corresponding Letters:A, L, E, C", "Ruled by Mars (Mangal) - planet of energy and action", "Fire sign - passionate and dynamic personality", "Natural leaders with competitive spirit", "Impulsive decision makers but quick learners", "Best suited for careers in military, sports or entrepreneurship", "Health concerns: Headaches, high blood pressure", "Compatible with Leo and Sagittarius"],
- "hindi": ["संबंधित अक्षर: अ, ल, ई, च", "मंगल ग्रह द्वारा शासित - ऊर्जा और कार्य का ग्रह", "अग्नि तत्व - उत्साही और गतिशील व्यक्तित्व", "प्राकृतिक नेता प्रवृत्ति के साथ प्रतिस्पर्धी स्वभाव", "आवेगी निर्णय लेने वाले परंतु तीव्र सीखने की क्षमता", "सेना, खेल या उद्यमिता में करियर के लिए उपयुक्त", "स्वास्थ्य संबंधी चिंताएँ: सिरदर्द, उच्च रक्तचाप", "सिंह और धनु राशि के साथ अच्छी संगतता"]
+ "english": ["Corresponding Letters: A,L,E", "Ruled by Mars (Mangal) - planet of energy", "Fire sign - passionate and dynamic personality", "Natural leaders with a competitive spirit", "Can be impulsive and impatient", "Best suited for entrepreneurship, sports and military", "Health concerns: Headaches and fevers", "Compatible with Leo and Sagittarius"],
+ "hindi": ["संबंधित अक्षर: अ, ल, ई", "मंगल ग्रह द्वारा शासित - ऊर्जा का ग्रह", "अग्नि तत्व - भावुक और गतिशील व्यक्तित्व", "प्रतिस्पर्धी भावना के साथ प्राकृतिक नेता", "आवेगी और अधीर हो सकते हैं", "उद्यमिता, खेल और सेना के लिए सबसे उपयुक्त", "स्वास्थ्य संबंधी चिंताएँ: सिरदर्द और बुखार", "सिंह और धनु राशि के साथ अच्छी संगतता"]
}
},
{
"name": {
- "english": "Vrishabha (Taurus)",
- "hindi": "वृषभ (वृषभ राशि)"
+ "english": "Taurus",
+ "hindi": "वृषभ"
},
"dates": {
"english": "May 15 - June 14",
"hindi": "15 मई - 14 जून"
},
- "image": "2.jpeg",
+ "image": "taurus.webp",
"description": {
"english": "Vrishabha is represented by the Bull. Individuals born under this sign are typically reliable, patient, and practical, with a strong connection to material comforts.",
"hindi": "वृषभ को बैल द्वारा दर्शाया जाता है। इस राशि के जातक आमतौर पर विश्वसनीय, धैर्यवान और व्यावहारिक होते हैं, जो भौतिक सुखों से गहरा जुड़ाव रखते हैं।"
@@ -39,14 +39,14 @@
},
{
"name": {
- "english": "Mithuna (Gemini)",
- "hindi": "मिथुन (मिथुन राशि)"
+ "english": "Gemini",
+ "hindi": "मिथुन"
},
"dates": {
"english": "June 15 - July 14",
"hindi": "15 जून - 14 जुलाई"
},
- "image": "3.jpeg",
+ "image": "gemini.webp",
"description": {
"english": "Mithuna is symbolized by the Twins. Those born under this sign are often adaptable, communicative, and intellectually curious, with a dual nature.",
"hindi": "मिथुन को जुड़वां बच्चों द्वारा दर्शाया जाता है। इस राशि के लोग अक्सर अनुकूलनीय, संवादशील और बौद्धिक रूप से जिज्ञासु होते हैं, जिनमें द्वैध स्वभाव होता है।"
@@ -58,14 +58,14 @@
},
{
"name": {
- "english": "Karka (Cancer)",
- "hindi": "कर्क (कर्क राशि)"
+ "english": "Cancer",
+ "hindi": "कर्क"
},
"dates": {
"english": "July 15 - August 14",
"hindi": "15 जुलाई - 14 अगस्त"
},
- "image": "4.jpeg",
+ "image": "cancer.webp",
"description": {
"english": "Karka is represented by the Crab. People of this sign are typically emotional, intuitive, and nurturing, with strong connections to home and family.",
"hindi": "कर्क को केकड़े द्वारा दर्शाया जाता है। इस राशि के लोग आमतौर पर भावुक, अंतर्ज्ञानी और पोषण करने वाले होते हैं, जो घर और परिवार से मजबूत जुड़ाव रखते हैं।"
@@ -77,14 +77,14 @@
},
{
"name": {
- "english": "Simha (Leo)",
- "hindi": "सिंह (सिंह राशि)"
+ "english": "Leo",
+ "hindi": "सिंह"
},
"dates": {
"english": "August 15 - September 15",
"hindi": "15 अगस्त - 15 सितंबर"
},
- "image": "5.jpeg",
+ "image": "leo.webp",
"description": {
"english": "Simha is symbolized by the Lion. Individuals born under this sign are often confident, generous, and natural leaders who enjoy being in the spotlight.",
"hindi": "सिंह को शेर द्वारा दर्शाया जाता है। इस राशि के जातक अक्सर आत्मविश्वासी, उदार और प्राकृतिक नेता होते हैं जो स्पॉटलाइट में रहना पसंद करते हैं।"
@@ -96,14 +96,14 @@
},
{
"name": {
- "english": "Kanya (Virgo)",
- "hindi": "कन्या (कन्या राशि)"
+ "english": "Virgo",
+ "hindi": "कन्या"
},
"dates": {
"english": "September 16 - October 15",
"hindi": "16 सितंबर - 15 अक्टूबर"
},
- "image": "6.jpeg",
+ "image": "virgo.webp",
"description": {
"english": "Kanya is represented by the Virgin. Those born under this sign are typically analytical, practical, and detail-oriented, with a strong sense of service.",
"hindi": "कन्या को कुंवारी द्वारा दर्शाया जाता है। इस राशि के लोग आमतौर पर विश्लेषणात्मक, व्यावहारिक और विस्तार-उन्मुख होते हैं, जिनमें सेवा की प्रबल भावना होती है।"
@@ -115,14 +115,14 @@
},
{
"name": {
- "english": "Tula (Libra)",
- "hindi": "तुला (तुला राशि)"
+ "english": "Libra",
+ "hindi": "तुला"
},
"dates": {
"english": "October 16 - November 14",
"hindi": "16 अक्टूबर - 14 नवंबर"
},
- "image": "7.jpeg",
+ "image": "libra.webp",
"description": {
"english": "Tula is symbolized by the Scales. People of this sign are often diplomatic, social, and fair-minded, with a strong sense of justice and balance.",
"hindi": "तुला को तराजू द्वारा दर्शाया जाता है। इस राशि के लोग अक्सर कूटनीतिक, सामाजिक और निष्पक्ष विचारों वाले होते हैं, जिनमें न्याय और संतुलन की प्रबल भावना होती है।"
@@ -134,14 +134,14 @@
},
{
"name": {
- "english": "Vrishchika (Scorpio)",
- "hindi": "वृश्चिक (वृश्चिक राशि)"
+ "english": "Scorpio",
+ "hindi": "वृश्चिक"
},
"dates": {
"english": "November 15 - December 14",
"hindi": "15 नवंबर - 14 दिसंबर"
},
- "image": "8.jpeg",
+ "image": "scorpio.webp",
"description": {
"english": "Vrishchika is represented by the Scorpion. Individuals born under this sign are typically passionate, resourceful, and determined, with strong intuitive abilities.",
"hindi": "वृश्चिक को बिच्छू द्वारा दर्शाया जाता है। इस राशि के जातक आमतौर पर भावुक, साधन संपन्न और दृढ़ निश्चयी होते हैं, जिनमें मजबूत अंतर्ज्ञानी क्षमताएं होती हैं।"
@@ -153,14 +153,14 @@
},
{
"name": {
- "english": "Dhanu (Sagittarius)",
- "hindi": "धनु (धनु राशि)"
+ "english": "Sagittarius",
+ "hindi": "धनु"
},
"dates": {
"english": "December 15 - January 13",
"hindi": "15 दिसंबर - 13 जनवरी"
},
- "image": "9.jpeg",
+ "image": "sagittarius.webp",
"description": {
"english": "Dhanu is symbolized by the Archer. Those born under this sign are often optimistic, adventurous, and philosophical, with a love for freedom and exploration.",
"hindi": "धनु को धनुर्धर द्वारा दर्शाया जाता है। इस राशि के लोग अक्सर आशावादी, साहसी और दार्शनिक होते हैं, जिन्हें स्वतंत्रता और अन्वेषण का प्रेम होता है।"
@@ -172,14 +172,14 @@
},
{
"name": {
- "english": "Makara (Capricorn)",
- "hindi": "मकर (मकर राशि)"
+ "english": "Capricorn",
+ "hindi": "मकर"
},
"dates": {
"english": "January 14 - February 11",
"hindi": "14 जनवरी - 11 फरवरी"
},
- "image": "10.jpeg",
+ "image": "capricorn.webp",
"description": {
"english": "Makara is represented by the Crocodile or Sea-Goat. People of this sign are typically disciplined, ambitious, and practical, with strong organizational skills.",
"hindi": "मकर को मगरमच्छ या समुद्री बकरी द्वारा दर्शाया जाता है। इस राशि के लोग आमतौर पर अनुशासित, महत्वाकांक्षी और व्यावहारिक होते हैं, जिनमें मजबूत संगठनात्मक कौशल होते हैं।"
@@ -191,14 +191,14 @@
},
{
"name": {
- "english": "Kumbha (Aquarius)",
- "hindi": "कुंभ (कुंभ राशि)"
+ "english": "Aquarius",
+ "hindi": "कुंभ"
},
"dates": {
"english": "February 12 - March 12",
"hindi": "12 फरवरी - 12 मार्च"
},
- "image": "11.jpeg",
+ "image": "aquarius.webp",
"description": {
"english": "Kumbha is symbolized by the Water Bearer. Individuals born under this sign are often innovative, humanitarian, and independent thinkers with progressive ideas.",
"hindi": "कुंभ को कलश वाहक द्वारा दर्शाया जाता है। इस राशि के जातक अक्सर नवप्रवर्तक, मानवतावादी और स्वतंत्र विचारक होते हैं जिनके पास प्रगतिशील विचार होते हैं।"
@@ -210,14 +210,14 @@
},
{
"name": {
- "english": "Meena (Pisces)",
- "hindi": "मीन (मीन राशि)"
+ "english": "Pisces",
+ "hindi": "मीन"
},
"dates": {
"english": "March 13 - April 13",
"hindi": "13 मार्च - 13 अप्रैल"
},
- "image": "12.jpeg",
+ "image": "pisces.webp",
"description": {
"english": "Meena is represented by the Fish. Those born under this sign are typically compassionate, artistic, and intuitive, with a strong connection to the spiritual realm.",
"hindi": "मीन को मछली द्वारा दर्शाया जाता है। इस राशि के लोग आमतौर पर दयालु, कलात्मक और अंतर्ज्ञानी होते हैं, जिनका आध्यात्मिक क्षेत्र से गहरा जुड़ाव होता है।"
diff --git a/src/layouts/Base.astro b/src/layouts/Base.astro
index 8931c735..5800ef00 100755
--- a/src/layouts/Base.astro
+++ b/src/layouts/Base.astro
@@ -7,13 +7,14 @@ import Menu from "@/layouts/common/Menu";
import { siteConfig } from "@/site-config";
const {
- meta: { title, description = siteConfig.description, ogImage, articleDate }
+ meta: { title, description = siteConfig.description, ogImage },
+ sidebar = true
} = Astro.props;
---
-
+
@@ -22,7 +23,7 @@ const {
-
+
{sidebar && }
This is my fallback content, if there is no child passed into slot