500ms
Filter Transition WindowCoordinated fadeOutDown & fadeInUp CSS transitions
Coordinated fadeOutDown & fadeInUp CSS transitions
Web, AI, Data Science, C#, Python, Mobile Android
Home, About, Course, Team, Bootcamp, and Login
Adyvka (Front-End), Abdullah (Back-End), Rosan (Design)
Pure vanilla web execution without runtime bundle overhead
Custom CSS Flexbox and Grid layouts across all viewports
In the fast-moving landscape of software engineering, aspiring developers frequently struggle to find structured, beginner-friendly learning paths that bridge the gap from foundational syntax to practical development. IDNCourse was conceived to address this challenge: a collaborative online learning platform providing curated courses across modern tech stacks including Web Development, Python, C#, and Mobile Development.
Core Mandate: Build an engaging, responsive e-learning web platform combining smooth category-filtered course animations, interactive modal syllabi, and transparent team collaboration for a student programming competition.
Explore the core interactive touchpoints of IDNCourse — spanning category-filtered course animations, multi-layer course popups, interactive team showcases, and client-side session persistence.
Official competition presentation flyer showcasing IDNCourse's programming academy, hands-on development curricula, and interactive multi-track learning system.
IDNCourse empowers students to master modern programming languages through clean category navigation and structured learning modules.
Vanilla JavaScript animation pipeline dynamically coordinating exit and entrance keyframes for seamless technology category switching.
Modular course cards with enrollment counters, rating badges, and modal overlays detailing learning outcomes.
Built as a competition collaboration uniting dedicated front-end engineering, back-end API thinking, and modern visual design.
Client-side localStorage session hydration paired with accordion-based knowledge discovery.
Each module is engineered with robust transactional boundaries, modular isolation, and comprehensive audit trails.
Custom JavaScript state coordinator (animateCourses and hideAllCourses) managing smooth exit and entrance animation cycles when users filter by tech stack.
From animated technology filtering to verified student enrollment — guiding learners through an intuitive educational discovery pathway.
Student clicks a technology filter (C#, Python, Web, AI) in the course section. The engine animates matching courses with fade transitions.
Student clicks a course card to open the interactive popup modal, inspecting syllabus topics, student review metrics, and instructor background.
Student submits registration. If logged in via localStorage, the platform activates course access and reflects enrollment status on the navigation bar.
IDNCourse represents the combined dedication of a 3-developer team to make programming education intuitive and accessible. Every course card, modal syllabus, and interactive filter is engineered to remove friction for beginner developers starting their tech journey.
Engineered with a clean separation between independent semantic HTML5 portals, modular CSS stylesheets, a centralized animation controller, and client-side session storage.
Discrete semantic portals (index, about, course, ourteam, bootcamp, login) styled with clean typography hierarchy and responsive layout containers.
Page-specific stylesheets managing card shadows, layout grids, and hardware-accelerated fadeInUp and fadeOutDown animation classes.
Asynchronous animation pipeline coordinating hideAllCourses and animateCourses transitions with active button state switching.
Client-side credential cache persisting active student username states across page transitions without backend database dependencies.
Optimized language badges (Python, C#, Java, HTML), hero illustrations, and avatar photography.
A modern engineering stack combining high-throughput user interfaces, modular backend architecture, and resilient data layers.
Clear boundary separation between system components, paired with modular schemas and structured repositories.
Defines educational offerings with title, technologyTrack (CSharp, Python, Web, AI, Android), studentCount, starRating, and syllabusDescription.
Stores intensive training cohorts with cohortTitle, instructorName, academicInstitution, prerequisiteSkills, and registrationDeadline.
Captures development team profiles with memberName, roleSpecialization (Front-End, Back-End, UI/UX), biography, and avatarAsset.
Represents client-side authentication state cached in localStorage: username, sessionToken, and lastActiveTimestamp.
Client-side security architecture ensuring safe session handling, clean DOM insertion, and resilient static distribution.
User credentials stored in localStorage are strictly scoped to the site's origin protocol, port, and domain, preventing cross-origin session hijacking.
Dynamic session names and modal strings are injected strictly through textContent properties, mitigating Cross-Site Scripting (XSS) risks from untrusted input.
Served over TLS 1.3 encrypted HTTPS channels as pre-rendered static files, providing immunity against server-side injection and unauthorized script execution.
The entire platform operates without third-party tracking scripts, advertising pixels, or telemetry beacons, protecting student privacy.
How critical technical bottlenecks were overcome and verified under real production conditions.
Synchronizing multi-element exit and entrance animations in vanilla JavaScript without visual glitches or DOM flashing. Solved by implementing a callback countdown pattern (hideCount) that ensures all currently displayed cards complete their fadeOutDown keyframe before target category cards receive fadeInUp.
Managing dynamic container dimensions when switching between the full catalog and single-course categories. Engineered container state classes (all-size and default-size) that smoothly adjust parent height constraints during category transitions.
Coordinating engineering deliverables across a 3-developer team under competition deadlines. Established strict file conventions and clean separation between front-end DOM manipulation, back-end API alignment, and visual design assets.