tailwind.config = { theme: { extend: { fontFamily: { sans: [‘Inter’, ‘sans-serif’], display: [‘Space Grotesk’, ‘sans-serif’], mono: [‘JetBrains Mono’, ‘monospace’], } } } } .highlight-ring { transition: all 0.5s ease-in-out; }
(function() { // Knowledge Hub Articles Database const knowledgeHubArticles = [ // — STUDENT & PARENT ARTICLES — { id: ‘parent_login’, role: ‘student_parent’, title: ‘Logging into Buddy’s World’, category: ‘Access & Security’, summary: ‘A step-by-step guide to downloading and logging into the Buddy\’s World application for parents and students.’, contentMarkdown: “To begin your child’s digital educational journey, you can access the **Buddy’s World Portal** via several platforms:\n* **Google Play Store (Android Devices):** [Download App](https://play.google.com/store/search?q=buddy%27s%20world&c=apps&hl=en_IN)\n* **Apple App Store (iOS Devices):** [Download App](https://apps.apple.com/in/app/buddys-world/id6741790067)\n* **Web Application:** [Access Portal Online](https://buddysworld.lighthouse-learning.com/)\n\n### How to Login as a Student/Parent:\nIf you are logging in as a student/parent, make sure to use the **Student Tab**.\n1. Enter your **Registered Phone Number** (this should be the mobile number registered with the school during admission).\n2. Click or tap on the **\”Receive OTP\”** button.\n3. Enter the secure **OTP** received on your mobile device.\n4. Click on the **\”Login\”** button to proceed.\n5. *Alternative Method:* If you prefer to log in using a password, click on **\”Login with password\”**.\n6. Then enter your password and click on **\”Login\”** to access your dashboard.”, proTips: [ ‘If your phone number is not registered, or you are having trouble receiving the SMS OTP, reach out to your respective school Franchise Admin, who can verify and update your profile in the database instantly.’ ], importantNotes: [ ‘If you forgot your password for the password-based login option, your school administrator can reset your credentials back to the default password (1234). You will be prompted to create a strong password upon your next login.’ ] }, { id: ‘parent_interface’, role: ‘student_parent’, title: ‘Buddy’s World Dashboard & Curriculum Structure’, category: ‘Navigation’, summary: ‘An overview of the student homepage interface and the academic week transition mechanics.’, contentMarkdown: “The **Buddy’s World Dashboard** serves as a comprehensive, visually rich digital platform connecting parents and students directly to academic curriculum milestones, daily updates, and core school communications.\n\nThe dashboard layout centers around giant, touch-friendly launcher buttons (Play, See, Do, Explore) that take students directly to their high-engagement portals.\n\n### Understanding the Curriculum:\n* **Theme Integration:** The school syllabus is divided into various engaging, topic-based learning themes.\n* **Dedicated Weeks:** Each theme has a dedicated number of Weeks, ranging from anywhere between one to four weeks.\n* **Five-Day Schedule:** Each week is assigned exactly **five days** (Monday through Friday).\n* **Content Shifting:** After the completion of the 5 days, the curriculum content is automatically shifted to the next week, keeping progression organized and consistent.”, proTips: [ ‘Let your child explore the interactive, cloud-themed digital space! The buttons and audio-visual menus are designed to be motor-friendly and completely ad-free for children of all age groups.’ ] }, { id: ‘parent_learn’, role: ‘student_parent’, title: ‘The Play Menu: FunZone, GameZone, & PictoZone’, category: ‘Learning Modules’, summary: ‘Detailed explanation of the interactive visualization activities and cognitive playground zones.’, contentMarkdown: “In the **Play Menu**, students can access a variety of interactive games and activities designed specifically to reinforce the classroom syllabus through engagement.\n\nThis section is structured into three primary learning zones:\n1. **FunZone:**\n * Features highly engaging visualization activities to support conceptual and sensory learning.\n * Assists in developing early literacy and reading comprehension.\n2. **GameZone:**\n * Designed as a \”playground for the mind.\”\n * Offers a series of thoughtfully crafted, simple games aimed at stimulating and developing the student’s cognitive abilities.\n * Exercises problem-solving, critical thinking, spatial awareness, and logical reasoning—all while keeping the gameplay fun, accessible, and ad-free.\n3. **PictoZone:**\n * Includes a delightful collection of interactive picture talk activities.”, proTips: [ ‘Spend 15 minutes checking out the GameZone games together! They offer a perfect, non-addictive screen-time alternative that exercises mental focus and motor coordination.’ ] }, { id: ‘parent_launch’, role: ‘student_parent’, title: ‘The See Menu: Immersive Audio-Visuals’, category: ‘Learning Modules’, summary: ‘Discover the rich multimedia library of instructional videos, storytelling, fitness, and music.’, contentMarkdown: “The **’See’ Menu** offers a rich library of immersive audio-visual content designed to bring the curriculum to life.\n\nBy leveraging visual and auditory learning styles, this section helps students grasp complex abstract concepts, discover new stories, and engage with content in dynamic, interactive ways.\n\nThis section is organized into four key categories:\n* **AudioVisual:** Features high-quality instructional videos that reinforce core syllabus concepts, allowing students to learn through visual demonstration and clear explanations.\n* **Stories:** A collection of captivating narratives presented in video format, designed to foster imagination, language development, and emotional intelligence through the power of storytelling.\n* **Eurofit:** A dedicated fitness channel featuring energetic workout and movement videos. These resources encourage physical activity, promote motor skill development, and help instill healthy, active habits in students.\n* **EuroMusic:** A musical learning hub where students explore rhythmic, vocal, and instrumental content. These videos are curated to help develop auditory processing, memory, and a lasting appreciation for music and the arts.”, importantNotes: [ ‘The audio-visual materials are strictly aligned with the school curriculum. We recommend reviewing these videos after class to reinforce what was taught.’ ] }, { id: ‘parent_explore’, role: ‘student_parent’, title: ‘The Do Menu: Homework & Classwork Hub’, category: ‘Learning Modules’, summary: ‘A dedicated hub where students access and complete homework and classwork assignments.’, contentMarkdown: “The **’Do’ Menu** is the dedicated hub for managing academic assignments, allowing students to engage directly with their school curriculum deliverables.\n\nThis section is organized into two primary categories to streamline the learning process:\n* **Home Connect:** A dedicated space where students can access and complete their homework assignments, reinforcing the lessons and topics learned during school hours.\n* **Class Connect:** Provides direct access to classwork modules, ensuring students stay up-to-date with daily learning objectives, sheets, and active classroom activities.”, proTips: [ ‘Use the Home Connect portal every afternoon. It provides a simple checklist that makes completing and tracking homework exciting for children.’ ] }, { id: ‘parent_theme’, role: ‘student_parent’, title: ‘Syllabus Theme Mechanics & Today’s Schedule’, category: ‘Syllabus & Structure’, summary: ‘Understanding the thematic backbone, calendar navigation, and Daily Schedule dashboard.’, contentMarkdown: “The academic year in Buddy’s World is structured strategically to offer an organized, progressive path of learning.\n\n### Today’s Schedule:\nThe **’Today’s Schedule’** section serves as a central daily dashboard for students, providing a comprehensive overview of their planned educational journey for the day. This feature acts as a navigational hub, ensuring that all learning activities are easily accessible in one organized location.\n\n### Theme System Architecture:\n* **Curriculum Structure:** The entire syllabus is divided into **11 comprehensive themes** (such as *Exploration Week*, *All About Me*, *My Senses*, *My Surroundings*, *Fruity Fun*, *Veggie Land*, etc.).\n* **Hierarchical Organization:** Each theme is broken down into structured weeks (typically 4 weeks, with a range of 1–4), and every week is further detailed into 5 specific daily plans.\n* **Pre-planned Learning:** Every day of the student’s journey is mapped out in advance, ensuring consistent and organized progression through the syllabus.\n* **Revision & Review:** This menu allows students to revisit completed themes and past content, providing an excellent opportunity for review and reinforcement of learned concepts.”, importantNotes: [ ‘The Today’s Schedule highlights current lessons. To look back at completed lessons, tap on the Theme menu to access the review index.’ ] }, { id: ‘parent_corner’, role: ‘student_parent’, title: ‘The Parent Corner: Tracking & Insights’, category: ‘Parental Controls’, summary: ‘Accessing the parent-only gateway, student profiles, My Day updates, notifications, and school messaging.’, contentMarkdown: “The **Parent Corner** is a section dedicated to parents. To protect children from navigating away from learning materials, parents must solve a simple calculation, provide the answer, and tap on **\”Proceed\”** to enter.\n\n### Sub-Modules Inside the Parent Corner:\n* **A. Student Profile:** A comprehensive dashboard where parents can view essential information regarding their child’s academic journey, including unique learner identification (UIN), School Name, and personal details. Parents can upload or update the profile image here.\n* **B. My Day at EuroKids:** A transparent window into your child’s daily learning experience. Teachers track and mark specific learning activities as completed, which then sync and reflect instantly on your dashboard. You can switch themes, select a week and day, or tap **\”Switch to Today\”** to review completed objectives.\n* **C. Funroom Memories:** Parents gain exclusive access to classroom highlights and photo records posted by the teacher. Parents can **like and add comments** to these posts to encourage their child’s school journey.\n* **D. Notification Panel:** A dedicated communication channel to keep parents informed. Categorized into **Info** (automated alerts for uploaded memories, Scheduled Buddy Live classes, or MyDay completion) and **Update** (teacher-triggered notices for field trip consent, specific homework details, etc.).\n* **E. EuroRewards:** Access exclusive coupon codes and special partner offers curated to support family lifestyle essentials, ranging from educational resources and child-friendly toys to apparel and lifestyle benefits.\n* **F. School Connect:** Direct communication portal to initiate requests for parent-teacher meetups, report lost and found items, or address other administrative queries to facilitate a seamless connection.\n* **G. AY Calendar:** Provides a comprehensive overview of the academic year. Tap on **\”Holiday List\”** to see all scheduled breaks, or track official session start dates.\n* **H. Buddy Live:** Access the secure, embedded virtual classroom where educators host live interactive online classes.\n* **I. Explore Zone:** Listen to narrated tales (like **’Ben and the Magical Toy’**), rate them, and engage in auditory learning.\n* **J. Observation Panel:** Access qualitative developmental milestones logged by teachers, covering *Self Awareness*, *Self Management*, *Responsible Decision*, *Social Awareness*, and *Relationship Skills*.”, proTips: [ ‘Form a habit of reviewing My Day at EuroKids and Funroom Memories every evening. Commenting on your child\’s pictures is a wonderful way to boost their confidence!’ ] }, // — TEACHER ARTICLES — { id: ‘teacher_login’, role: ‘teacher’, title: ‘Account Setup & Password Protocols’, category: ‘Access & Security’, summary: ‘A guide on setting up your teacher credentials, default login password, and password reset protocols.’, contentMarkdown: “Every classroom teacher will have a unique username and password.\n\n### Password Setup and Default Codes:\n* **Default Password:** Once your password has been reset by your Franchisee Admin, your temporary login password will default to **1234**.\n* **Enforced Password Reset:** Once you enter this temporary password and try to sign in, the system will immediately prompt you with a reset screen.\n* **Re-login Flow:** When you’ve reset it, you will be automatically logged out and asked to re-login with your new password.”, importantNotes: [ ‘Keep your credentials secure. If you ever forget your password, simply contact your Franchise Admin to trigger a reset back to the default code “1234”.’ ] }, { id: ‘teacher_dashboard’, role: ‘teacher’, title: ‘Understanding the Teacher’s Dashboard’, category: ‘Classroom Management’, summary: ‘An overview of the central dashboard modules: Student Overview, Teaching Plan, and Smart Teaching.’, contentMarkdown: “As soon as the teacher logs in, they will land on the **\”Dashboard\”**. It provides a centralized control station to guide your daily classroom instruction.\n\nThe landing dashboard shows three primary areas:\n* **Student Overview:** By clicking on this, teachers are able to see the exact content that the students see for the current day, the previous day, and the upcoming weeks.\n* **Teaching Plan:** Displays the daily, weekly, and monthly curriculum teaching schedule.\n* **Smart Teaching:** Provides teachers with useful pedagogical resources and digital files that help them prepare better for teaching their students.”, proTips: [ ‘Use the Student Overview module at the start of each week. Previewing the active Readers and stories allows you to map physical classroom toys and decorations to the digital weekly themes.’ ] }, { id: ‘teacher_planning’, role: ‘teacher’, title: ‘Teaching Plans, Mid Term DTP, Resources & Upskill Hub’, category: ‘Academic Preparation’, summary: ‘Delivering curriculum plans, handling mid-term joiners, using downloadable files, and professional training.’, contentMarkdown: “Excellent preparation is the key to classroom success. The teacher portal contains a variety of planning support tools:\n\n### 1. Teaching Plan\nProvides the teachers with a daily, weekly, and monthly plan for delivering the comprehensive curriculum to the students.\n\n### 2. Mid Term DTP (Daily Teaching Plan)\nProvides useful resources, accelerated reviews, and specific guides for teachers to teach students who are joining the class from the mid term.\n\n### 3. Resources\nContains downloadable worksheets, PDF materials, lesson assets (such as *Flashcards A-Z*, *A-Z Picture Cards*, *TakeAway templates*), and instructional videos that help teachers teach students in a better, highly visual way.\n\n### 4. Upskill Hub\nProvides necessary professional courses for the teachers (such as *Basic First Aid Course For PreK*, *SafeStart Certification for EuroKids*, etc.) that are extremely useful for their teaching journey and help them upskill themselves.”, importantNotes: [ ‘Check the Resources section at the start of each theme to print out necessary templates or flashcards ahead of time.’ ] }, { id: ‘teacher_notifications’, role: ‘teacher’, title: ‘Manage Notification: Sender Steps’, category: ‘Parent Communications’, summary: ‘How teachers draft, configure, and send notifications to Franchise Admin for approval.’, contentMarkdown: “**Manage Notification** is used to send important notifications, updates, and home enrichments directly to students and parents.\n\n### Steps of how a teacher can send notification:\n1. Click on the **\”Send Notification\”** Button.\n2. The fields for **Franchise**, **Program**, and **Role** (Student/Parent) will be selected automatically according to the mapping of the teacher to her respective class.\n3. Select the **Section**, **Notification Type** (e.g. Push, PopUp, SMS), date to deliver the notification, and **Request Type**.\n4. **Consent Option:** Select if consent of the parent is required or not. If **Yes**, select the **Consent Due Date**.\n5. Then write the **Heading** and **Description** of the event.\n6. Add attachments or images if needed (up to 50MB for PDFs or images).\n7. Click **\”Send for Approval\”**.\n8. The approval request will be sent to the Franchise Admin. Once approved, it will go directly to the parent’s app for their consent.”, importantNotes: [ ‘Always double-check notice details before submitting. Once sent, notifications are locked in the admin pending approval queue.’ ] }, { id: ‘teacher_live’, role: ‘teacher’, title: ‘Buddy Live Setup & Schedulers’, category: ‘Academic Preparation’, summary: ‘Scheduling, approving, and hosting virtual lessons within the built-in Buddy Live module.’, contentMarkdown: “**Buddy Live** is a built-in online classroom system, designed to provide a seamless and integrated learning experience.\n\nUnlike external platforms such as Google Meet or Zoom, Buddy Live is fully embedded within the Buddy’s World ecosystem, offering a secure and streamlined environment for virtual instruction. Through this feature, teachers can effortlessly host live online classes, conduct interactive lessons, and engage with students in real-time within one unified platform.\n\n### Steps to use Buddy Live as a Teacher:\n1. Click on **\”Schedule a Class\”**.\n2. Select the **Program**, **Section**, **Date**, and the **Time Range** of the class that will be held.\n3. Click on **\”Schedule a Class\”**.\n4. The class gets scheduled and goes to the Franchise Admin for approval.\n5. Once the Franchise Admin approves the schedule, the class will be available for the teacher to conduct and for the student to attend.”, proTips: [ ‘Schedule virtual sessions at least 24 hours in advance. This gives parents sufficient warning to configure their child\’s tablet or computer ahead of the live session.’ ] }, { id: ‘teacher_attendance’, role: ‘teacher’, title: ‘Daily Student Attendance & EPMS Synchronizations’, category: ‘Classroom Management’, summary: ‘Marking attendance, selecting dates, and managing student directory records.’, contentMarkdown: “The **Attendance** feature helps the teacher mark the attendance of the students very efficiently and makes the process extremely hassle-free.\n\n### Steps of how a teacher can mark Attendance:\n1. Select the **Program** and the **Division** (Section) within all the classes assigned to you.\n2. By default, the **current date** will be selected, but the teacher can also select any previous date to make adjustments.\n3. Once the Program, division, and date are selected, select whether to mark the selected students **Present** or **Absent**.\n4. Then mark the attendance for the students and click on **\”Save Attendance\”**.\n\n### Troubleshooting the \”NP\” (Not Possible) Status:\nIn some cases, you will see **\”NP\”** mentioned against a student’s name on your roster instead of attendance checkboxes.\n* **What it means:** It is *not possible* to mark attendance for such a student. This happens if the official enrollment date of the student is *later* than the selected attendance date.\n* **Resolution:** This needs to be corrected in the primary **EPMS Portal**.\n* **Database Sync:** If any details of the student or the educator need to be updated, it must be updated directly in the **EPMS Portal** to reflect correctly here.”, importantNotes: [ ‘By default, the Franchisee Administrator has full administrative access to all programs and she can mark student attendance and post daily logs if needed.’ ] }, { id: ‘teacher_hopspots’, role: ‘teacher’, title: ‘MyDay@EuroKids: Logging Daily Activities’, category: ‘Parent Communications’, summary: ‘Step-by-step guide to selecting, completing, and submitting daily lessons to parents.’, contentMarkdown: “**MyDay@EuroKids** is used to send instant daily updates of what was taught in class to parent portals.\n\n### Steps of how a teacher can share updates:\n1. The teacher can either send updates of the **current day** or any **past day** (if any learning logs are pending that you wish to complete later).\n2. To share the updates of what has been taught in the current day, select **\”Switch to Today\”**.\n3. A list of scheduled curriculum activities will appear automatically (sourced from the theme’s active day teaching plan).\n4. Select the checkboxes next to the activities that you were able to successfully complete with your class.\n5. Click **\”Submit\”** to publish.\n6. **Incomplete Activities:** If you couldn’t complete a scheduled activity, leave it unchecked. You can complete it the next day and send updates then in the same way.”, proTips: [ ‘Check off your completed lessons right before dismissal. This ensures parents receive the notification the moment their child gets home, prompting great family conversations!’ ] }, { id: ‘teacher_portfolio’, role: ‘teacher’, title: ‘Funroom Memories: Sharing Photos & Portfolios’, category: ‘Parent Communications’, summary: ‘Capturing, uploading, and targeting classroom photos to individual parents or the class.’, contentMarkdown: “In **Funroom Memories**, teachers share pictures of students performing activities with their parents. These can be shared with one specific student privately or with the whole class.\n\n### Steps to share pictures in Funroom Memories:\n1. Click on the **\”Upload\”** button.\n2. Select the **Program** (grade level) of the student and the **Division** (Section).\n3. **Choose Recipients:** Select the name of the specific student if you wish to share with only one parent. If you wish to send to the whole class, check the **\”Select All Students\”** checkbox.\n4. Click **\”Next\”**.\n5. Enter the **Event Name** and description.\n6. Add the images you desire to share.\n7. Click on **\”Send for Approval\”**.\n8. The approval request is sent to the Franchise Admin. Once approved, the images are published directly to parent portals.”, importantNotes: [ ‘Ensure that all uploaded images meet the school\’s student privacy guidelines. Ensure consent is obtained before taking and sharing class photos.’ ] }, // — FRANCHISE ADMIN ARTICLES — { id: ‘admin_overview’, role: ‘franchise_admin’, title: ‘Franchise Admin Portal Overview’, category: ‘Administration’, summary: ‘An overview of the Franchise Admin’s core dual responsibilities: shared teaching assets and exclusive administration.’, contentMarkdown: “Welcome to the **Buddy’s World Franchise Admin Portal**. As the Administrator, you supervise the operational, database, and curriculum quality of your campus.\n\n### Core Dual Modules:\n1. **Shared Academic Access:** Your portal includes the exact same **Teaching Assistance Module** as the Teacher’s Portal—giving you access to the *Dashboard*, *Teaching Plan*, *Mid-term DTP*, *Resources*, *UpSkill Hub*, and *Student Overviews*.\n2. **Administrative Control:** You possess exclusive access to the **Admin Dashboard** (staff/student directories, teacher mapping, guard directories), **Calendar Configuration**, and **Content Approval Queues** (approving notices, virtual classes, and photos).”, proTips: [ ‘You have complete operational backup capabilities! If a teacher is absent, you can log in, mark student attendance, and submit MyDay progress checklists directly from your administrative account.’ ] }, { id: ‘admin_approvals’, role: ‘franchise_admin’, title: ‘Managing Approvals: Notifications & Memories’, category: ‘Content Moderation’, summary: ‘Approving or sending notices, reviewing parent consents, and validating classroom portfolio uploads.’, contentMarkdown: “To maintain high communication standards, all parent-facing notices, live virtual sessions, and photos drafted by teachers must be reviewed and approved by you.\n\n### 1. Manage Notifications:\nAs a Franchise Admin, you can do two things:\n* **Approve Teacher’s Notifications:** Click on the approve button beside the notification listed under the **\”Pending for Approval\”** tab.\n* **Send Direct Notifications:** Click **\”Send Notification\”** to draft and publish announcements directly. The Franchise will be auto-selected. Select the target Program, Role, Section, Notice parameters, and toggle parent consent deadlines if necessary. Write the event heading, description, add attachments, and click **\”Send Notification\”**.\n\n### 2. Approve Funroom Memories:\n* Teachers upload student classroom pictures and submit them for review.\n* Simply navigate to the pending memories queue and click the **\”Approve\”** button to publish them to parents’ digital portfolios.”, importantNotes: [ ‘Establish a routine to review pending notifications twice daily—once in the morning and once before school dismissal—to ensure communication flows without delay.’ ] }, { id: ‘admin_database’, role: ‘franchise_admin’, title: ‘User Management: Master Staff & Student Databases’, category: ‘User Management’, summary: ‘Managing educator credentials, student registers, co-teacher mapping, division allocations, and campus security guards.’, contentMarkdown: “The **Admin Dashboard** is your central console to access, manage, and edit the master databases of all school personnel.\n\n### A. Educator Section (Teachers & Staff)\n* Access the complete database and credentials of the teachers.\n* Mark teachers as **Active** or **Inactive** to manage active staff.\n* **Reset Passwords:** Resetting an educator’s credentials defaults their login password back to **1234**. They will be prompted to create a strong password upon signing in.\n\n### B. Student Section\n* Access the database of student profiles, enrollment IDs, and unique learner metrics.\n* Toggle student status between **Active** and **Inactive**.\n* **Reset Passwords:** Resetting a student’s portal password defaults it back to **1234**.\n\n### C. Program & Division Management\n* Manage academic levels and adjust the active number of **Divisions** (Sections) using the action button in the Program Management area.\n\n### D. Teacher Mapping Section\n* Assign teachers to their specific division. The system supports mapping **up to 2 teachers per division** to enable co-teaching.\n\n### E. Campus guards & Visitors Section\n* View, add, and edit the credentials of campus security guards. Mark guards active or inactive.\n* Monitor campus safety by reviewing the real-time **Visitor’s List** logged by guards at the front gate.”, importantNotes: [ ‘Ensure all mobile phone numbers match registration records exactly. This is crucial for seamless OTP delivery and SMS verification across Student, Parent, and Staff accounts.’ ] }, { id: ‘admin_calendar’, role: ‘franchise_admin’, title: ‘AY Calendar Controls: Buffer Days, Holidays, & Working Days’, category: ‘Operations’, summary: ‘Managing calendar schedules, adding holidays, and converting days to keep curriculum on track.’, contentMarkdown: “The **AY Calendar (Academic Year Calendar)** governs your school’s operating schedule. You can view the calendar for all 4 programs separately.\n\nTo make updates, click on the **\”Update Calendar\”** button. This opens a pop-up box with options:\n1. **Add a Buffer Day (Buffer Mechanism):**\n * **How it works:** Shifting a day forward slides the scheduled curriculum content for that day to the next active school day.\n * **When to use:** Use this when a planned school day is disrupted by event rehearsals, storm closures, or school celebrations. This ensures students do not miss any planned lessons.\n2. **Add a Holiday:**\n * Define holiday ranges by selecting a start and end date to automatically update all parent and teacher calendars.\n3. **Add a Working Day:**\n * **How it works:** Converts a scheduled holiday or weekend into an active class day.\n * **When to use:** Convert weekends to active working days to compensate for unexpected emergency closures, keeping the syllabus perfectly on schedule.”, proTips: [ ‘When you add a Buffer Day, student attendance can still be marked and tracked normally on that day, while keeping the digital curriculum content safely paused.’ ] }, { id: ‘admin_observations’, role: ‘franchise_admin’, title: ‘Observations’, category: ‘Administration’, summary: ‘Reviewing and managing student qualitative developmental milestones logged by teachers.’, contentMarkdown: “The **Observations** module enables Franchise Administrators to review and manage qualitative developmental milestones logged by classroom teachers.\n\n### Key Focus Areas:\n* **Self-Awareness:** Tracking self-recognition, emotional expression, and confidence indicators.\n* **Self-Management:** Monitoring self-regulation, focus, and impulse control progress.\n* **Responsible Decision-Making:** Evaluating problem-solving, ethical choice, and school rule compliance.\n* **Social Awareness:** Documenting empathy, group behavior, and respect for diversity.\n* **Relationship Skills:** Assessing cooperation, communication, and friend-making milestones.\n\nAll observations are synchronized instantly and populated inside the dedicated parent portals.”, proTips: [ ‘Encourage teachers to log qualitative highlights weekly. Parents appreciate reading detailed, positive developmental progress about their child\’s social-emotional growth!’ ] } ]; // SVG Icons const icons = { search: ”, info: ”, check: ”, alert: ”, x: ” }; // Mockup visual data mapping const mockupData = { parent_login: { title: “Logging into Buddy’s World”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b7b31a88163997c33b9a_Screenshot%202026-07-16%20162124.png”, hover: “Secure Student & Parent Login Dashboard” }, parent_interface: { title: “Buddy’s World Dashboard & Curriculum Structure”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b8d4cb044ee3818a1d80_Screenshot%202026-07-16%20162612.png”, hover: “Visual Overview of Student Home Screens & Launchers” }, parent_learn: { title: “The Play Menu: FunZone, GameZone, & PictoZone”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b7667ac17803138f8064_Screenshot%202026-06-24%20150643.png”, hover: “Interactive Early Literacy Storybooks & Cognitive Games View” }, parent_launch: { title: “The See Menu: Immersive Audio-Visuals”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b766de3014055e3150e6_Screenshot%202026-06-24%20150815.png”, hover: “Curriculum-Aligned Immersive Video Lessons & Audio-Visual Tracks” }, parent_explore: { title: “The Do Menu: Homework & Classwork Hub”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b766eba550350c29de54_Screenshot%202026-06-24%20150853.png”, hover: “Curated Children’s Stories, Rhymes, & Homework Tracker” }, parent_theme: { title: “Syllabus Theme Mechanics & Today’s Schedule”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b7664008afc338240694_Screenshot%202026-06-24%20152644.png”, hover: “Academic Thematic Progression (11 Themes Hierarchy)” }, parent_corner: { title: “The Parent Corner: Tracking & Insights”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58b76612276e5cfd360efa_Screenshot%202026-06-24%20154455.png”, hover: “Interactive Parent Corner & Student Dashboard” }, teacher_login: { title: “Account Setup & Password Protocols”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58bb43ccaedd3649780818_Screenshot%202026-07-16%20163618.png”, hover: “EPMS Security Credentials & Verification Setup View” }, teacher_dashboard: { title: “Understanding the Teacher’s Dashboard”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba93f08415c83cb18806_Screenshot%202026-06-26%20161216.png”, hover: “Educator Daily Overview & Class Management Board” }, teacher_planning: { title: “Teaching Plans, Mid Term DTP, Resources & Upskill Hub”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba9372b4d22f22e512e1_Screenshot%202026-06-26%20161320.png”, hover: “Mid-Term Accelerated DTP & Facilitator Lesson Guides” }, teacher_notifications: { title: “Manage Notification: Sender Steps”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba9374138f320a5eaa8e_Screenshot%202026-06-26%20164424.png”, hover: “Parent Communication broadcast & Consent Alert Request Form” }, teacher_live: { title: “Buddy Live Setup & Schedulers”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba92809fc1771f9416dd_Screenshot%202026-06-30%20120508.png”, hover: “Embedded Live Instruction & Online Session Console” }, teacher_attendance: { title: “Daily Student Attendance & EPMS Synchronizations”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba93ab8075834d169e73_Screenshot%202026-06-26%20164802.png”, hover: “Daily Student Attendance & Roster System” }, teacher_hopspots: { title: “MyDay@EuroKids: Logging Daily Activities”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba9346e13e28e7e33f36_Screenshot%202026-06-26%20165103.png”, hover: “MyDay@EuroKids Activity Logger View” }, teacher_portfolio: { title: “Funroom Memories: Sharing Photo”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58ba93c1857f1e4915029c_Screenshot%202026-06-26%20165209.png”, hover: “Funroom Memories Photo Uploader & Parent Like/Comment Console” }, admin_overview: { title: “Franchise Admin Portal Overview”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58bb43ccaedd3649780818_Screenshot%202026-07-16%20163618.png”, hover: “Shared Academic Core & Supervisor Console” }, admin_approvals: { title: “Managing Approvals: Notifications & Memories”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58be516aab72c25e18c3f6_Screenshot%202026-07-01%20144648.png”, hover: “Review Queue for Teacher Notice Boards & Classroom Session Proposals” }, admin_database: { title: “User Management: Master Staff & Student Databases”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58be51297b3096ff20de97_Screenshot%202026-06-30%20170413.png”, hover: “Franchise Educator & Student Master Database Directory” }, admin_calendar: { title: “AY Calendar Controls: Buffer Days, Holidays, & Working Days”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58be516d386973d5497eab_Screenshot%202026-06-30%20170618.png”, hover: “Academic Year Scheduling & Holiday Override Panel” }, admin_observations: { title: “Observations”, image: “https://cdn.prod.website-files.com/6a50d1d12253bae8f4a5cd85/6a58be52bd2af48276e4cd2d_Screenshot%202026-06-30%20170807.png”, hover: “Qualitative Developmental Milestones Panel” } }; const getMockupInfo = function(id) { return mockupData[id] || { title: “Buddy’s World Dashboard Placeholder”, image: “https://images.unsplash.com/photo-1543269865-cbf427effbad?q=80&w=800&auto=format&fit=crop”, hover: “Interactive Student & Parent Portal Mockup” }; }; // State let activeRole = ‘student_parent’; let searchQuery = ”; let showSearchResults = false; // Custom Markdown Compiler function renderMarkdownToHTML(markdown) { const lines = markdown.split(‘\n’); const blocks = []; let currentBlock = null; const isHeading = (line) => /^\s*#{1,6}\s+/.test(line); const isUnordered = (line) => /^\s*[\*\-]\s+/.test(line); const isOrdered = (line) => /^\s*\d+\.\s+/.test(line); const isEmpty = (line) => line.trim() === ”; for (let i = 0; i = 2))) { currentBlock.lines.push(line); } else { currentBlock = { type: ‘ul’, lines: [line] }; blocks.push(currentBlock); } } else if (isOrdered(line)) { if (currentBlock && currentBlock.type === ‘ol’) { currentBlock.lines.push(line); } else { currentBlock = { type: ‘ol’, lines: [line] }; blocks.push(currentBlock); } } else { const leadingSpaces = (line.match(/^\s*/) || [”])[0].length; if (currentBlock && (currentBlock.type === ‘ol’ || currentBlock.type === ‘ul’) && leadingSpaces >= 2) { currentBlock.lines.push(line); } else if (currentBlock && currentBlock.type === ‘paragraph’) { currentBlock.lines.push(line); } else { currentBlock = { type: ‘paragraph’, lines: [line] }; blocks.push(currentBlock); } } } const formatInlineHTML = (text) => { return text .replace(/\*\*([^*]+)\*\*/g, ‘$1‘) .replace(/\*([^*]+)\*/g, ‘$1‘) .replace(/\*/g, ”) .replace(/\[([^\]]+)\]\(([^)]+)\)/g, ‘$1‘); }; let htmlResult = ”; blocks.forEach(block => { if (block.type === ‘heading’) { const content = block.lines.join(‘ ‘); const htmlContent = formatInlineHTML(content); const tag = block.level === 1 ? ‘h2’ : block.level === 2 ? ‘h3’ : ‘h4’; const headingClass = block.level === 1 ? “text-2xl font-bold text-slate-900 mt-6 mb-3 font-display” : block.level === 2 ? “text-xl font-bold text-slate-900 mt-5 mb-2.5 font-display” : “text-base font-bold text-slate-900 pt-2 font-display”; htmlResult += `${htmlContent}`; } else if (block.type === ‘paragraph’) { const content = block.lines.join(‘ ‘); htmlResult += `

${formatInlineHTML(content)}

`; } else { const tag = block.type === ‘ul’ ? ‘ul’ : ‘ol’; const listClass = block.type === ‘ul’ ? ‘list-disc’ : ‘list-decimal’; htmlResult += “; const items = []; let currentItem = null; block.lines.forEach(line => { const leadingSpaces = (line.match(/^\s*/) || [”])[0].length; const isSub = leadingSpaces >= 2 && currentItem; if (isSub) { currentItem.subLines.push(line); } else { currentItem = { mainLine: line, subLines: [] }; items.push(currentItem); } }); items.forEach(item => { const mainText = item.mainLine.trim().replace(/^([\*\-]|(\d+\.))\s+/, ”); const mainHTML = formatInlineHTML(mainText); let subHTML = ”; if (item.subLines.length > 0) { subHTML += ``; } htmlResult += `
  • ${mainHTML}${subHTML}
  • `; }); htmlResult += ``; } }); return htmlResult; } // Role-specific styles generator const getRoleStyles = (role) => { switch (role) { case ‘student_parent’: return { accent: ‘blue’, badge: ‘bg-blue-50 text-blue-700 border-blue-200’, topBar: ‘bg-[#1880f5]’ }; case ‘teacher’: return { accent: ‘sky’, badge: ‘bg-sky-50 text-sky-700 border-sky-200’, topBar: ‘bg-sky-500’ }; case ‘franchise_admin’: return { accent: ‘indigo’, badge: ‘bg-indigo-50 text-indigo-700 border-indigo-200’, topBar: ‘bg-indigo-700’ }; } }; // Search filter logic const getSearchResults = () => { if (!searchQuery.trim()) return []; const query = searchQuery.toLowerCase(); const results = []; knowledgeHubArticles.forEach(article => { if ( article.title.toLowerCase().includes(query) || article.category.toLowerCase().includes(query) || article.contentMarkdown.toLowerCase().includes(query) || article.summary.toLowerCase().includes(query) ) { const content = article.contentMarkdown; const index = content.toLowerCase().indexOf(query); const start = Math.max(0, index – 40); const end = Math.min(content.length, index + query.length + 60); const snippet = (start > 0 ? ‘…’ : ”) + content.substring(start, end) + (end { const results = getSearchResults(); if (!showSearchResults || searchQuery.trim() === ”) return ”; return `
    Search Results (${results.length})
    ${results.length === 0 ? `
    No matching articles found for “${searchQuery}”
    ` : `
    ${results.map((res) => ``).join(”)}
    `}
    `; }; const jumpToArticle = (role, sectionId) => { activeRole = role; showSearchResults = false; renderApp(); setTimeout(() => { const element = document.getElementById(`article-${sectionId}`); if (element) { element.scrollIntoView({ behavior: ‘smooth’, block: ‘center’ }); element.classList.add(‘ring-4’, ‘ring-blue-300’, ‘bg-blue-50/50’); setTimeout(() => { element.classList.remove(‘ring-4’, ‘ring-blue-300’, ‘bg-blue-50/50’); }, 2000); } }, 200); }; function renderApp() { const root = document.getElementById(‘root’); if (!root) return; const currentArticles = knowledgeHubArticles.filter(a => a.role === activeRole); const styles = getRoleStyles(activeRole); root.innerHTML = `
    Buddy's World Logo

    Buddy’s World Product Knowledge Hub

    ${icons.search}
    ${searchQuery ? `` : ”}
    ${renderSearchDropdownHTML()}
    ${currentArticles.map((article) => { const mockup = getMockupInfo(article.id); return `
    ${article.category}ID: ${article.id}

    ${article.title}

    ${article.summary}

    ${renderMarkdownToHTML(article.contentMarkdown)}
    ${article.proTips && article.proTips.length > 0 ? `
    ${icons.check}Pro Tip
    ${article.proTips.map(tip => `

    ${tip}

    `).join(”)}
    ` : ”}${article.importantNotes && article.importantNotes.length > 0 ? `
    ${icons.alert}Important Note
    ${article.importantNotes.map(note => `

    ${note}

    `).join(”)}
    ` : ”}
    ${mockup.title}
    ${mockup.title}

    ${mockup.hover}

    `; }).join(”)}
    ${icons.info}

    Need Further Assistance?

    Email support: help@lighthouse-learning.com

    © 2026 Buddy’s World. All rights reserved.

    Senior Technical Content Writing & User Experience Architecture.

    `; // Role Tab click handlers const tabs = document.querySelectorAll(‘.role-tab’); tabs.forEach(tab => { tab.addEventListener(‘click’, (e) => { const id = e.currentTarget.id; if (id === ‘role-tab-student_parent’) activeRole = ‘student_parent’; if (id === ‘role-tab-teacher’) activeRole = ‘teacher’; if (id === ‘role-tab-franchise_admin’) activeRole = ‘franchise_admin’; renderApp(); }); }); // Sidebar TOC click handlers const sideBtns = document.querySelectorAll(‘.sidebar-nav-btn’); sideBtns.forEach(btn => { btn.addEventListener(‘click’, (e) => { const targetId = e.currentTarget.getAttribute(‘data-target’); if (targetId) { const element = document.getElementById(`article-${targetId}`); if (element) { element.scrollIntoView({ behavior: ‘smooth’, block: ‘center’ }); element.classList.add(‘ring-4’, ‘ring-blue-300’, ‘bg-blue-50/50’); setTimeout(() => { element.classList.remove(‘ring-4’, ‘ring-blue-300’, ‘bg-blue-50/50’); }, 2000); } } }); }); // Search input handlers const searchInput = document.getElementById(‘search-input’); if (searchInput) { const updateSearchUI = () => { const clearContainer = document.getElementById(‘search-clear-container’); if (clearContainer) { clearContainer.innerHTML = searchQuery ? `` : ”; const clearBtn = document.getElementById(‘search-clear’); clearBtn?.addEventListener(‘click’, () => { searchQuery = ”; showSearchResults = false; const inputEl = document.getElementById(‘search-input’); if (inputEl) inputEl.value = ”; updateSearchUI(); }); } const dropdownContainer = document.getElementById(‘search-dropdown-container’); if (dropdownContainer) { dropdownContainer.innerHTML = renderSearchDropdownHTML(); const searchResultBtns = dropdownContainer.querySelectorAll(‘.search-result-btn’); searchResultBtns.forEach(btn => { btn.addEventListener(‘click’, (e) => { const role = e.currentTarget.getAttribute(‘data-role’); const targetId = e.currentTarget.getAttribute(‘data-id’); if (role && targetId) jumpToArticle(role, targetId); }); }); } }; searchInput.addEventListener(‘input’, (e) => { searchQuery = e.target.value; showSearchResults = true; updateSearchUI(); }); searchInput.addEventListener(‘focus’, () => { showSearchResults = true; updateSearchUI(); }); } } // Dismiss dropdown on outside click document.addEventListener(‘mousedown’, (e) => { const searchContainer = document.getElementById(‘search-container’); if (searchContainer && !searchContainer.contains(e.target)) { if (showSearchResults) { showSearchResults = false; const dropdownContainer = document.getElementById(‘search-dropdown-container’); if (dropdownContainer) dropdownContainer.innerHTML = ”; } } }); // Initialize if (document.readyState === ‘loading’) { document.addEventListener(‘DOMContentLoaded’, renderApp); } else { renderApp(); } })();