{"id":4472,"date":"2018-09-14T03:53:48","date_gmt":"2018-09-14T03:53:48","guid":{"rendered":"https:\/\/paksc.org\/pk\/?page_id=4472"},"modified":"2026-04-28T10:01:07","modified_gmt":"2026-04-28T10:01:07","slug":"steam","status":"publish","type":"page","link":"https:\/\/paksc.org\/pk\/","title":{"rendered":"STEM\/STEAM Projects"},"content":{"rendered":"\n\n\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, viewport-fit=cover\">\n<title>DoScience | Free STEM Learning for Everyone \u2013 Pakistan Science Club<\/title>\n<meta name=\"description\" content=\"Free STEM resources, science experiments, DIY electronics, and project guides for students and teachers in Pakistan. Learn science in Urdu & English.\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:opsz,wght@14..32,300;14..32,400;14..32,600;14..32,700;14..32,800&display=swap\" rel=\"stylesheet\">\n<style>\n  \/* RESET & BASE *\/\n  * {\n    margin: 0;\n    padding: 0;\n    box-sizing: border-box;\n  }\n  body {\n    font-family: 'Inter', sans-serif;\n    background: #f9fafc;\n    color: #1e293b;\n    scroll-behavior: smooth;\n  }\n  .container {\n    max-width: 1280px;\n    margin: 0 auto;\n    padding: 0 24px;\n  }\n  \/* Hook Section (added on top) *\/\n  .psc-hook {\n    text-align: center;\n    padding: 40px 20px;\n    background: #f5f7fb;\n    border-bottom: 1px solid #e2edf2;\n  }\n  .psc-hook h2 {\n    font-size: 1.9rem;\n    margin-bottom: 16px;\n    font-weight: 800;\n    background: linear-gradient(135deg, #0b2b44, #1976d2);\n    background-clip: text;\n    -webkit-background-clip: text;\n    color: transparent;\n  }\n  .psc-search {\n    max-width: 540px;\n    margin: 24px auto 20px;\n    display: flex;\n    border-radius: 60px;\n    overflow: hidden;\n    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);\n    background: white;\n    transition: all 0.2s;\n  }\n  .psc-search:focus-within {\n    box-shadow: 0 8px 25px rgba(25, 118, 210, 0.15);\n  }\n  .psc-search input {\n    flex: 1;\n    padding: 14px 20px;\n    border: none;\n    outline: none;\n    font-size: 1rem;\n    font-weight: 400;\n    background: white;\n  }\n  .psc-search button {\n    background: #1976d2;\n    color: white;\n    border: none;\n    padding: 0 28px;\n    cursor: pointer;\n    font-weight: 600;\n    font-size: 1rem;\n    transition: background 0.2s;\n    display: flex;\n    align-items: center;\n    gap: 6px;\n  }\n  .psc-search button:hover {\n    background: #0f5eae;\n  }\n  \/* QUICK CATEGORY PILLS *\/\n  .psc-cats {\n    margin-top: 20px;\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: center;\n    gap: 12px;\n  }\n  .psc-cats a {\n    padding: 8px 20px;\n    border-radius: 40px;\n    background: white;\n    text-decoration: none;\n    font-weight: 600;\n    font-size: 0.9rem;\n    color: #1f3a4b;\n    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.03);\n    transition: all 0.25s ease;\n    border: 1px solid #e0edf5;\n  }\n  .psc-cats a:hover {\n    background: #1976d2;\n    color: white;\n    transform: translateY(-3px);\n    border-color: #1976d2;\n    box-shadow: 0 8px 18px rgba(25, 118, 210, 0.2);\n  }\n  \/* Hero section *\/\n  .hero {\n    background: linear-gradient(120deg, #eef2ff 0%, #ffffff 100%);\n    padding: 48px 0 48px;\n    border-bottom: 1px solid #e2e8f0;\n  }\n  .hero-grid {\n    display: flex;\n    flex-wrap: wrap;\n    align-items: center;\n    justify-content: space-between;\n    gap: 32px;\n  }\n  .hero-text {\n    flex: 1;\n  }\n  .hero-text h2 {\n    font-size: 2.8rem;\n    font-weight: 800;\n    line-height: 1.2;\n    background: linear-gradient(to right, #0b2b44, #1976d2);\n    background-clip: text;\n    -webkit-background-clip: text;\n    color: transparent;\n  }\n  .hero-text p {\n    font-size: 1.2rem;\n    margin: 20px 0 24px;\n    color: #2d3a4b;\n  }\n  .hero-buttons {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 16px;\n  }\n  .btn-primary, .btn-outline {\n    padding: 12px 28px;\n    border-radius: 40px;\n    font-weight: 700;\n    text-decoration: none;\n    transition: all 0.2s;\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n  }\n  .btn-primary {\n    background: #1976d2;\n    color: white;\n  }\n  .btn-primary:hover {\n    background: #0f5eae;\n    transform: translateY(-2px);\n    box-shadow: 0 10px 20px rgba(25,118,210,0.2);\n  }\n  .btn-outline {\n    background: transparent;\n    border: 2px solid #1976d2;\n    color: #1976d2;\n  }\n  .hero-stats {\n    flex: 0.8;\n    background: rgba(255,255,255,0.75);\n    backdrop-filter: blur(8px);\n    border-radius: 32px;\n    padding: 24px;\n    text-align: center;\n    box-shadow: 0 20px 35px -12px rgba(0,0,0,0.1);\n  }\n  .stats-number {\n    font-size: 2.5rem;\n    font-weight: 800;\n    color: #0f3b5e;\n  }\n  .section-title {\n    font-size: 2rem;\n    font-weight: 700;\n    margin: 48px 0 24px 0;\n    text-align: center;\n  }\n  \/* category grid (static) *\/\n  .cat-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 28px;\n    margin-bottom: 40px;\n  }\n  .cat-card {\n    background: white;\n    border-radius: 28px;\n    padding: 28px 20px;\n    text-align: center;\n    transition: all 0.25s ease;\n    box-shadow: 0 5px 18px rgba(0,0,0,0.04);\n    border: 1px solid #eef2ff;\n  }\n  .cat-card:hover {\n    transform: translateY(-8px);\n    box-shadow: 0 25px 30px -12px rgba(0,0,0,0.1);\n    border-color: #cbdffc;\n  }\n  .cat-icon {\n    font-size: 3rem;\n    margin-bottom: 16px;\n  }\n  .cat-card h3 {\n    font-size: 1.6rem;\n    margin-bottom: 12px;\n  }\n  .cat-card p {\n    color: #4b5563;\n    margin-bottom: 20px;\n  }\n  .cat-link {\n    font-weight: 700;\n    color: #1976d2;\n    text-decoration: none;\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n  }\n  .urdu-badge {\n    background: #fef9e3;\n    border-left: 5px solid #f5b042;\n  }\n  .steam-info {\n    background: #ffffff;\n    border-radius: 32px;\n    padding: 32px 28px;\n    margin: 30px 0 20px;\n    box-shadow: 0 8px 24px rgba(0,0,0,0.04);\n    border: 1px solid #eef2ff;\n  }\n  .steam-info p {\n    font-size: 1.05rem;\n    line-height: 1.6;\n    color: #2d3a4b;\n  }\n  \/* Merged feed *\/\n  .merged-feed {\n    background: #ffffff;\n    border-radius: 40px;\n    margin: 30px 0 40px;\n    padding: 32px 28px;\n    box-shadow: 0 12px 30px rgba(0,0,0,0.05);\n  }\n  .feed-header {\n    display: flex;\n    justify-content: space-between;\n    align-items: baseline;\n    flex-wrap: wrap;\n    margin-bottom: 28px;\n  }\n  .filter-pills {\n    display: flex;\n    gap: 12px;\n    flex-wrap: wrap;\n  }\n  .filter-btn {\n    background: #f1f5f9;\n    border: none;\n    padding: 8px 20px;\n    border-radius: 60px;\n    font-weight: 500;\n    cursor: pointer;\n    transition: 0.2s;\n    font-family: inherit;\n  }\n  .filter-btn.active {\n    background: #1976d2;\n    color: white;\n    box-shadow: 0 4px 10px rgba(25,118,210,0.3);\n  }\n  .feed-grid-merged {\n    display: grid;\n    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n    gap: 28px;\n    margin: 24px 0 32px;\n  }\n  .merged-card {\n    background: #ffffff;\n    border-radius: 24px;\n    overflow: hidden;\n    transition: all 0.4s cubic-bezier(0.2, 0.9, 0.4, 1.1);\n    box-shadow: 0 12px 28px rgba(0,0,0,0.08);\n    border: 1px solid #eef2ff;\n    display: flex;\n    flex-direction: column;\n    opacity: 0;\n    transform: translateY(20px);\n    animation: fadeUpCard 0.5s forwards;\n  }\n  .merged-card:hover {\n    transform: scale(1.02);\n    box-shadow: 0 25px 40px rgba(0,0,0,0.12);\n  }\n  @keyframes fadeUpCard {\n    to { opacity: 1; transform: translateY(0); }\n  }\n  .merged-card img {\n    width: 100%;\n    aspect-ratio: 16 \/ 9;\n    object-fit: cover;\n    background: #eef2ff;\n  }\n  .card-content-merged {\n    padding: 20px;\n    flex: 1;\n    display: flex;\n    flex-direction: column;\n  }\n  .card-content-merged h3 {\n    font-size: 1.25rem;\n    font-weight: 700;\n    line-height: 1.35;\n    margin-bottom: 8px;\n    display: -webkit-box;\n    -webkit-line-clamp: 2;\n    -webkit-box-orient: vertical;\n    overflow: hidden;\n  }\n  .post-meta-merged {\n    font-size: 0.75rem;\n    color: #6c757d;\n    margin: 8px 0 12px;\n    display: flex;\n    gap: 16px;\n    align-items: center;\n    flex-wrap: wrap;\n  }\n  .post-excerpt {\n    font-size: 0.85rem;\n    color: #4b5563;\n    line-height: 1.45;\n    margin-bottom: 14px;\n    display: -webkit-box;\n    -webkit-line-clamp: 2;\n    -webkit-box-orient: vertical;\n    overflow: hidden;\n  }\n  .read-link-merged {\n    margin-top: auto;\n    font-weight: 700;\n    color: #1976d2;\n    text-decoration: none;\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n  }\n  .load-more-btn-merged {\n    background: #1976d2;\n    border: none;\n    color: white;\n    font-weight: 700;\n    padding: 12px 32px;\n    border-radius: 40px;\n    font-size: 1rem;\n    cursor: pointer;\n    display: block;\n    margin: 20px auto 10px;\n    transition: 0.2s;\n    font-family: inherit;\n  }\n  .load-more-btn-merged:disabled {\n    background: #9aaebf;\n    cursor: not-allowed;\n  }\n  .info-message {\n    text-align: center;\n    padding: 28px;\n    background: #eef2ff;\n    border-radius: 48px;\n    margin: 16px 0;\n    color: #1e293b;\n  }\n  .error-message {\n    background: #ffe6e5;\n    border-radius: 28px;\n    padding: 20px;\n    text-align: center;\n    color: #b91c1c;\n  }\n  .join-banner {\n    background: linear-gradient(110deg, #e9f0fe, white);\n    border-radius: 36px;\n    padding: 32px 24px;\n    text-align: center;\n    margin: 20px 0 50px;\n  }\n  \/* === OPTIMIZED MOBILE VIEW === *\/\n  @media (max-width: 768px) {\n    .container { padding: 0 18px; }\n    .hero-text h2 { font-size: 2rem; }\n    .hero-text p { font-size: 1rem; }\n    .hero-grid { flex-direction: column; text-align: center; }\n    .hero-buttons { justify-content: center; }\n    .hero-stats { width: 100%; margin-top: 10px; }\n    .section-title { font-size: 1.7rem; margin-top: 32px; }\n    .cat-card h3 { font-size: 1.4rem; }\n    .merged-feed { padding: 20px 16px; }\n    .feed-header { flex-direction: column; gap: 16px; }\n    .feed-header h2 { font-size: 1.5rem !important; }\n    .filter-pills { justify-content: center; margin-top: 8px; }\n    .filter-btn { padding: 6px 16px; font-size: 0.85rem; }\n    .steam-info { padding: 22px 18px; }\n    .psc-hook h2 { font-size: 1.6rem; }\n    .psc-search input { padding: 12px 16px; }\n    .psc-search button { padding: 0 18px; font-size: 0.9rem; }\n    .psc-cats a { padding: 6px 14px; font-size: 0.8rem; }\n    .join-banner h3 { font-size: 1.4rem; }\n  }\n  @media (max-width: 480px) {\n    .hero-text h2 { font-size: 1.7rem; }\n    .stats-number { font-size: 2rem; }\n    .cat-grid { gap: 18px; }\n    .feed-grid-merged { gap: 20px; }\n    .load-more-btn-merged { width: 100%; }\n  }\n<\/style>\n\n<!-- ========== PSC HOOK SECTION (Search + quick categories) ========== -->\n<section class=\"psc-hook\">\n  <h2>\ud83d\udd0d What do you want to learn today?<\/h2>\n  <form class=\"psc-search\" action=\"https:\/\/paksc.org\/pk\/\" method=\"get\" target=\"_blank\" rel=\"noopener\">\n    <input type=\"text\" name=\"s\" placeholder=\"Search experiments, projects, electronics...\" aria-label=\"Search STEM content\">\n    <button type=\"submit\">\ud83d\udd0e Search<\/button>\n  <\/form>\n  <div class=\"psc-cats\">\n    <a href=\"https:\/\/paksc.org\/pk\/science-experiments\/\" data-wpel-link=\"internal\">\ud83d\udd2c STEM Projects<\/a>\n    <a href=\"https:\/\/paksc.org\/pk\/diy-projects\/\" data-wpel-link=\"internal\">\u2699\ufe0f DIY Projects<\/a>\n    <a href=\"https:\/\/paksc.org\/pk\/electronics\/\" data-wpel-link=\"internal\">\ud83e\udd16 Electronics<\/a>\n    <a href=\"https:\/\/paksc.org\/pk\/science-fair-projects\/\" data-wpel-link=\"internal\">\ud83c\udfc6 Science Fair<\/a>\n    <a href=\"https:\/\/paksc.org\/pk\/articles\/\" data-wpel-link=\"internal\">\ud83d\udcda Articles<\/a>\n  <\/div>\n<\/section>\n\n<!-- Hero Section -->\n<header class=\"hero\">\n  <div class=\"container hero-grid\">\n    <div class=\"hero-text\">\n      <h2>Free STEM Learning <br>for Everyone<\/h2>\n      <p>Explore science experiments, build DIY electronics, and discover project guides \u2014 in English & Urdu. Trusted by 1000+ schools in Pakistan.<\/p>\n      <div class=\"hero-buttons\">\n        <a href=\"https:\/\/paksc.org\/pk\/science-experiments\/\" class=\"btn-primary\" data-wpel-link=\"internal\">\ud83d\udd2c Start Experiments<\/a>\n        <a href=\"https:\/\/paksc.org\/pk\/diy-projects\/\" class=\"btn-outline\" data-wpel-link=\"internal\">\u2699\ufe0f Build Projects<\/a>\n      <\/div>\n    <\/div>\n    <div class=\"hero-stats\">\n      <div class=\"stats-number\">500+<\/div>\n      <div>Free experiments & guides<\/div>\n      <div class=\"stats-number\" style=\"margin-top:12px\">120k+<\/div>\n      <div>Monthly learners<\/div>\n      <div style=\"margin-top:12px; font-size:0.8rem;\">\u2b50 Bilingual resources (Urdu\/English)<\/div>\n    <\/div>\n  <\/div>\n<\/header>\n\n<main class=\"container\">\n  <h2 class=\"section-title\">\ud83d\udcda What do you want to learn today?<\/h2>\n  <div class=\"cat-grid\">\n    <div class=\"cat-card\"><div class=\"cat-icon\">\ud83d\udd2c<\/div><h3>Learn Science<\/h3><p>Physics, Chemistry, Biology & kitchen science fun.<\/p><a href=\"https:\/\/paksc.org\/pk\/science-experiments\/\" class=\"cat-link\" data-wpel-link=\"internal\">Explore Experiments \u2192<\/a><\/div>\n    <div class=\"cat-card\"><div class=\"cat-icon\">\u2699\ufe0f<\/div><h3>Build Projects<\/h3><p>DIY models, STEAM projects & real working systems.<\/p><a href=\"https:\/\/paksc.org\/pk\/diy-projects\/\" class=\"cat-link\" data-wpel-link=\"internal\">Start Building \u2192<\/a><\/div>\n    <div class=\"cat-card\"><div class=\"cat-icon\">\ud83e\udd16<\/div><h3>Electronics & Tech<\/h3><p>Circuits, Arduino, robotics & computer science.<\/p><a href=\"https:\/\/paksc.org\/pk\/electronics\/\" class=\"cat-link\" data-wpel-link=\"internal\">Learn Electronics \u2192<\/a><\/div>\n    <div class=\"cat-card\"><div class=\"cat-icon\">\ud83c\udfc6<\/div><h3>Science Fair<\/h3><p>Ideas, models & winning competition guides.<\/p><a href=\"https:\/\/paksc.org\/pk\/science-fair-projects\/\" class=\"cat-link\" data-wpel-link=\"internal\">Get Ideas \u2192<\/a><\/div>\n    <div class=\"cat-card urdu-badge\"><div class=\"cat-icon\">\ud83c\udf10<\/div><h3>Science in Urdu<\/h3><p>Learn experiments & electronics in Urdu language.<\/p><a href=\"https:\/\/paksc.org\/pk\/science-experiments-urdu\/\" class=\"cat-link\" data-wpel-link=\"internal\">\u0627\u0628 \u0634\u0631\u0648\u0639 \u06a9\u0631\u06cc\u06ba \u2192<\/a><\/div>\n    <div class=\"cat-card\"><div class=\"cat-icon\">\ud83d\udcd6<\/div><h3>Articles & Blog<\/h3><p>Science knowledge, ideas & learning resources.<\/p><a href=\"https:\/\/paksc.org\/pk\/articles\/\" class=\"cat-link\" data-wpel-link=\"internal\">Read Articles \u2192<\/a><\/div>\n  <\/div>\n\n  <div class=\"steam-info\">\n    <p>\ud83d\ude80 <strong>STEAM Education<\/strong> is an approach to learning that uses Science, Technology, Engineering, the Arts, and Mathematics as access points for guiding student inquiry, dialogue, and critical thinking. <strong>\"DoScience\"<\/strong> is a web portal of the Pakistan Science Club offering free STEAM Resources, cool science experiments for kids, DIY projects for home, DIY electronics projects for high school students, and Hands-on Science Activities. All STEAM Resources and Science Experiments are free for teachers and students. You can also find Science club activities and award-winning science fair projects.<\/p>\n  <\/div>\n\n  <div class=\"merged-feed\" id=\"mergedFeedSection\">\n    <div class=\"feed-header\">\n      <h2 style=\"font-size:1.8rem;\">\u2728 Latest from DoScience Portal<\/h2>\n      <div class=\"filter-pills\" id=\"filterContainerMerged\">\n        <button data-cat=\"all\" class=\"filter-btn active\">All<\/button>\n        <button data-cat=\"experiment\" class=\"filter-btn\">\ud83d\udd2c Experiments<\/button>\n        <button data-cat=\"electronics\" class=\"filter-btn\">\u26a1 Electronics<\/button>\n        <button data-cat=\"project\" class=\"filter-btn\">\ud83d\udee0\ufe0f Projects<\/button>\n      <\/div>\n    <\/div>\n    <div id=\"psc-feed-output-merged\" class=\"feed-grid-merged\"><\/div>\n    <button id=\"psc-load-more-merged\" class=\"load-more-btn-merged\">Load more articles \u2192<\/button>\n  <\/div>\n\n  <div class=\"join-banner\">\n    <h3>\ud83c\uddf5\ud83c\uddf0 Join Pakistan Science Club<\/h3>\n    <p style=\"margin: 12px 0; max-width: 600px; margin-inline: auto;\">Be part of a growing community of makers, teachers, and young scientists. Free resources + monthly challenges.<\/p>\n    <a href=\"https:\/\/paksc.org\/community\/\" class=\"btn-primary\" style=\"background:#0f3b5e;\" data-wpel-link=\"internal\">Join Now \u2192<\/a>\n  <\/div>\n<\/main>\n\n<script>\n  (function() {\n    let currentPage = 1;\n    let currentCategory = 'all';\n    let isLoading = false;\n    let noMorePosts = false;\n    const feedContainer = document.getElementById('psc-feed-output-merged');\n    const loadBtn = document.getElementById('psc-load-more-merged');\n\n    function detectPostCategory(post) {\n      const title = (post.title?.rendered || '').toLowerCase();\n      const excerpt = (post.excerpt?.rendered || post.content?.rendered || '').toLowerCase();\n      if (title.includes('circuit') || title.includes('arduino') || title.includes('led') || title.includes('electronics') || title.includes('sensor') || excerpt.includes('electronics')) return 'electronics';\n      if (title.includes('project') || title.includes('diy') || title.includes('build') || title.includes('model') || title.includes('making') || excerpt.includes('project')) return 'project';\n      if (title.includes('experiment') || title.includes('kitchen') || title.includes('chemistry') || title.includes('physics') || title.includes('biology') || excerpt.includes('experiment')) return 'experiment';\n      return 'experiment';\n    }\n\n    function getCleanExcerpt(post, maxLength = 100) {\n      const raw = post.excerpt?.rendered || post.content?.rendered || '';\n      let clean = raw.replace(\/<[^>]+>\/g, '').trim();\n      if (clean.length > maxLength) clean = clean.slice(0, maxLength) + '\u2026';\n      return clean || 'Hands-on STEM activity to boost creativity.';\n    }\n\n    async function fetchPostsMerged(reset = false) {\n      if (isLoading) return;\n      if (reset) {\n        currentPage = 1;\n        noMorePosts = false;\n        feedContainer.innerHTML = '';\n        if (loadBtn) {\n          loadBtn.style.display = 'block';\n          loadBtn.disabled = false;\n          loadBtn.textContent = 'Load more articles \u2192';\n        }\n      }\n      if (noMorePosts) {\n        if (!reset && feedContainer.children.length > 0) {\n          const existingMsg = document.querySelector('.end-feed-msg-merged');\n          if (!existingMsg && feedContainer) {\n            feedContainer.insertAdjacentHTML('beforeend', `<div class=\"info-message end-feed-msg-merged\">\ud83c\udf89 You've reached the end \u2014 explore more categories above! \ud83c\udf89<\/div>`);\n          }\n          if (loadBtn) loadBtn.style.display = 'none';\n        }\n        return;\n      }\n\n      isLoading = true;\n      if (loadBtn) {\n        loadBtn.textContent = '\u23f3 Loading ...';\n        loadBtn.disabled = true;\n      }\n\n      const apiUrl = `https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/posts?per_page=6&page=${currentPage}&_embed`;\n      try {\n        const response = await fetch(apiUrl);\n        if (!response.ok) {\n          if (response.status === 404 || response.status === 400) {\n            noMorePosts = true;\n            if (loadBtn) loadBtn.style.display = 'none';\n            if (feedContainer.children.length === 0) feedContainer.innerHTML = '<div class=\"info-message\">\u2728 No more posts. Check back later for fresh science content!<\/div>';\n            isLoading = false;\n            return;\n          }\n          throw new Error(`HTTP ${response.status}`);\n        }\n        const posts = await response.json();\n        if (!posts.length) {\n          noMorePosts = true;\n          if (loadBtn) loadBtn.style.display = 'none';\n          if (feedContainer.children.length === 0) feedContainer.innerHTML = '<div class=\"info-message\">\ud83d\udced No articles match this category \u2014 try another filter!<\/div>';\n          isLoading = false;\n          return;\n        }\n\n        let filteredPosts = [...posts];\n        if (currentCategory !== 'all') {\n          filteredPosts = posts.filter(post => detectPostCategory(post) === currentCategory);\n        }\n\n        if (filteredPosts.length === 0 && posts.length > 0 && currentCategory !== 'all') {\n          if (currentPage === 1 && feedContainer.children.length === 0) {\n            feedContainer.innerHTML = `<div class=\"info-message\">\ud83d\udd0d No \"${currentCategory}\" articles yet. Try \"All\" or another filter!<\/div>`;\n          }\n          isLoading = false;\n          if (loadBtn) { loadBtn.disabled = false; loadBtn.textContent = 'Load more \u2192'; }\n          currentPage++;\n          return;\n        }\n\n        let htmlFragment = '';\n        for (let post of filteredPosts) {\n          const img = post._embedded?.['wp:featuredmedia']?.[0]?.source_url || 'https:\/\/placehold.co\/600x400\/eef2ff\/1976d2?text=STEM+Activity';\n          const title = post.title.rendered;\n          const link = post.link;\n          const date = new Date(post.date).toLocaleDateString('en-PK', { year: 'numeric', month: 'short', day: 'numeric' });\n          const categoryLabel = detectPostCategory(post);\n          const catIcon = categoryLabel === 'electronics' ? '\u26a1' : (categoryLabel === 'project' ? '\ud83d\udee0\ufe0f' : '\ud83d\udd2c');\n          const excerptText = getCleanExcerpt(post, 95);\n          htmlFragment += `\n            <div class=\"merged-card\">\n              <img decoding=\"async\" src=\"${img}\" alt=\"${title.replace(\/<[^>]*>\/g, '').substring(0, 70)}\" loading=\"lazy\">\n              <div class=\"card-content-merged\">\n                <h3>${title}<\/h3>\n                <div class=\"post-meta-merged\"><span>\ud83d\udcc5 ${date}<\/span><span>${catIcon} ${categoryLabel.charAt(0).toUpperCase() + categoryLabel.slice(1)}<\/span><\/div>\n                <div class=\"post-excerpt\">${excerptText}<\/div>\n                <a href=\"${link}\" class=\"read-link-merged\" target=\"_blank\" rel=\"noopener noreferrer\">Read full article \u2192<\/a>\n              <\/div>\n            <\/div>\n          `;\n        }\n        feedContainer.insertAdjacentHTML('beforeend', htmlFragment);\n        currentPage++;\n        isLoading = false;\n        if (loadBtn) {\n          loadBtn.disabled = false;\n          loadBtn.textContent = 'Load more \u2192';\n        }\n        const existingEnd = document.querySelector('.end-feed-msg-merged');\n        if (existingEnd) existingEnd.remove();\n      } catch (err) {\n        console.warn(err);\n        isLoading = false;\n        if (loadBtn) {\n          loadBtn.disabled = false;\n          loadBtn.textContent = 'Retry \u21bb';\n        }\n        if (feedContainer.children.length === 0) {\n          feedContainer.innerHTML = `<div class=\"error-message\">\u26a0\ufe0f Unable to load content. <button id=\"refreshFeedMergedBtn\" style=\"background:#1976d2; border:none; color:white; border-radius:40px; padding:6px 18px; margin-left:12px; cursor:pointer;\">Refresh<\/button><\/div>`;\n          const refreshBtn = document.getElementById('refreshFeedMergedBtn');\n          if (refreshBtn) refreshBtn.addEventListener('click', () => {\n            feedContainer.innerHTML = '';\n            currentPage = 1;\n            noMorePosts = false;\n            fetchPostsMerged(true);\n          });\n        }\n      } finally {\n        if (loadBtn && !noMorePosts) loadBtn.disabled = false;\n      }\n    }\n\n    function resetAndFetch(newCategory) {\n      currentCategory = newCategory;\n      currentPage = 1;\n      noMorePosts = false;\n      feedContainer.innerHTML = '';\n      if (loadBtn) {\n        loadBtn.style.display = 'block';\n        loadBtn.disabled = false;\n        loadBtn.textContent = 'Loading...';\n      }\n      fetchPostsMerged(true);\n    }\n\n    const filterBtns = document.querySelectorAll('#filterContainerMerged .filter-btn');\n    filterBtns.forEach(btn => {\n      btn.addEventListener('click', (e) => {\n        const cat = btn.getAttribute('data-cat');\n        if (!cat) return;\n        filterBtns.forEach(b => b.classList.remove('active'));\n        btn.classList.add('active');\n        resetAndFetch(cat);\n      });\n    });\n\n    if (loadBtn) {\n      loadBtn.addEventListener('click', () => {\n        if (!isLoading && !noMorePosts) fetchPostsMerged(false);\n        else if (noMorePosts) loadBtn.style.display = 'none';\n      });\n    }\n    fetchPostsMerged(true);\n  })();\n<\/script>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<style>\n.psc-feed {\n  padding:70px 20px;\n  background:linear-gradient(135deg,#f5f7fb,#ffffff);\n}\n\n.psc-feed-container {\n  max-width:1200px;\n  margin:auto;\n}\n\n.psc-feed-title {\n  text-align:center;\n  font-size:28px;\n  margin-bottom:40px;\n}\n\n\/* GRID *\/\n.psc-feed-grid {\n  display:grid;\n  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));\n  gap:30px;\n  perspective:1000px;\n}\n\n\/* CARD *\/\n.psc-feed-card {\n  background:#fff;\n  border-radius:18px;\n  overflow:hidden;\n  transform-style:preserve-3d;\n  transition:all 0.4s ease;\n  box-shadow:0 15px 40px rgba(0,0,0,0.08);\n  position:relative;\n\n  opacity:0;\n  transform:translateY(30px);\n  animation:fadeUp 0.6s forwards;\n}\n\n\/* HOVER *\/\n.psc-feed-card:hover {\n  transform:rotateX(6deg) rotateY(-6deg) scale(1.04);\n  box-shadow:0 30px 70px rgba(0,0,0,0.15);\n}\n\n\/* IMAGE *\/\n.psc-feed-img {\n  width:100%;\n  height:180px;\n  object-fit:cover;\n}\n\n\/* CONTENT *\/\n.psc-feed-content {\n  padding:20px;\n}\n\n.psc-feed-content h3 {\n  font-size:18px;\n  margin-bottom:10px;\n}\n\n\/* DESCRIPTION *\/\n.psc-feed-desc {\n  font-size:14px;\n  color:#555;\n  line-height:1.5;\n}\n\n\/* BUTTON *\/\n.psc-readmore {\n  display:inline-block;\n  margin-top:12px;\n  font-weight:bold;\n  color:#1976d2;\n  text-decoration:none;\n}\n\n.psc-readmore:hover {\n  color:#0d47a1;\n}\n\n\/* ANIMATION *\/\n.psc-feed-card:nth-child(2){animation-delay:0.1s;}\n.psc-feed-card:nth-child(3){animation-delay:0.2s;}\n.psc-feed-card:nth-child(4){animation-delay:0.3s;}\n\n@keyframes fadeUp {\n  to {\n    opacity:1;\n    transform:translateY(0);\n  }\n}\n\n\/* MOBILE *\/\n@media(max-width:768px){\n  .psc-feed-card:hover {\n    transform:none;\n  }\n}\n<\/style>\n\n<section class=\"psc-feed\">\n  <div class=\"psc-feed-container\">\n\n    <h2 class=\"psc-feed-title\">\n      Latest from Pakistan Science Club\n    <\/h2>\n\n    <div id=\"psc-feed-output\" class=\"psc-feed-grid\"><\/div>\n\n  <\/div>\n<\/section>\n\n<script>\ndocument.addEventListener(\"DOMContentLoaded\", function(){\n\nfetch(\"https:\/\/paksc.org\/wp-json\/wp\/v2\/posts?per_page=4&_embed\")\n.then(res=>res.json())\n.then(posts=>{\n\n  let html = \"\";\n\n  posts.forEach(p=>{\n\n    let img = p._embedded?.['wp:featuredmedia']?.[0]?.source_url \n              || \"https:\/\/via.placeholder.com\/400x200\";\n\n    let title = p.title.rendered;\n    let desc = p.excerpt.rendered\n                .replace(\/<[^>]+>\/g, '')\n                .slice(0,100) + \"...\";\n\n    html += `\n    <div class=\"psc-feed-card\">\n      <img decoding=\"async\" src=\"${img}\" class=\"psc-feed-img\">\n\n      <div class=\"psc-feed-content\">\n        <h3>${title}<\/h3>\n        <div class=\"psc-feed-desc\">${desc}<\/div>\n        <a href=\"${p.link}\" class=\"psc-readmore\">Read More \u2192<\/a>\n      <\/div>\n    <\/div>`;\n  });\n\n  document.getElementById(\"psc-feed-output\").innerHTML = html;\n\n});\n\n});\n<\/script>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>DoScience | Free STEM Learning for Everyone \u2013 Pakistan Science Club \ud83d\udd0d What do you want to learn today? \ud83d\udd0e Search \ud83d\udd2c STEM Projects \u2699\ufe0f DIY Projects \ud83e\udd16 Electronics \ud83c\udfc6 Science Fair \ud83d\udcda Articles Free STEM Learning for Everyone Explore science experiments, build DIY electronics, and discover project guides \u2014 in English &#038; Urdu. Trusted&#8230;<\/p>\n","protected":false},"author":9,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"class_list":["post-4472","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>DoScience Portal \u2013 Free STEAM Resources, Science Experiments &amp; DIY Projects<\/title>\n<meta name=\"description\" content=\"STEAM Science, Technology, Engineering Math Project-Based Learning Activities for kids, diy electronics projects for high school students.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/paksc.org\/pk\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"DoScience Portal \u2013 Free STEAM Resources, Science Experiments &amp; DIY Projects\" \/>\n<meta name=\"twitter:description\" content=\"STEAM Science, Technology, Engineering Math Project-Based Learning Activities for kids, diy electronics projects for high school students.\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/\",\"url\":\"https:\\\/\\\/paksc.org\\\/pk\\\/\",\"name\":\"DoScience Portal \u2013 Free STEAM Resources, Science Experiments & DIY Projects\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#website\"},\"datePublished\":\"2018-09-14T03:53:48+00:00\",\"dateModified\":\"2026-04-28T10:01:07+00:00\",\"description\":\"STEAM Science, Technology, Engineering Math Project-Based Learning Activities for kids, diy electronics projects for high school students.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/paksc.org\\\/pk\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/paksc.org\\\/pk\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"STEM\\\/STEAM Projects\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#website\",\"url\":\"https:\\\/\\\/paksc.org\\\/pk\\\/\",\"name\":\"PSC Do Science\",\"description\":\"STEAM Resources, Science Experiments and Projects by PSC\",\"publisher\":{\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/paksc.org\\\/pk\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#organization\",\"name\":\"Pak Science Club\",\"url\":\"https:\\\/\\\/paksc.org\\\/pk\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/paksc.org\\\/pk\\\/wp-content\\\/uploads\\\/2016\\\/10\\\/Do-science-logo.png?fit=408%2C136&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/paksc.org\\\/pk\\\/wp-content\\\/uploads\\\/2016\\\/10\\\/Do-science-logo.png?fit=408%2C136&ssl=1\",\"width\":408,\"height\":136,\"caption\":\"Pak Science Club\"},\"image\":{\"@id\":\"https:\\\/\\\/paksc.org\\\/pk\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"DoScience Portal \u2013 Free STEAM Resources, Science Experiments & DIY Projects","description":"STEAM Science, Technology, Engineering Math Project-Based Learning Activities for kids, diy electronics projects for high school students.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/paksc.org\/pk\/","twitter_card":"summary_large_image","twitter_title":"DoScience Portal \u2013 Free STEAM Resources, Science Experiments & DIY Projects","twitter_description":"STEAM Science, Technology, Engineering Math Project-Based Learning Activities for kids, diy electronics projects for high school students.","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/paksc.org\/pk\/","url":"https:\/\/paksc.org\/pk\/","name":"DoScience Portal \u2013 Free STEAM Resources, Science Experiments & DIY Projects","isPartOf":{"@id":"https:\/\/paksc.org\/pk\/#website"},"datePublished":"2018-09-14T03:53:48+00:00","dateModified":"2026-04-28T10:01:07+00:00","description":"STEAM Science, Technology, Engineering Math Project-Based Learning Activities for kids, diy electronics projects for high school students.","breadcrumb":{"@id":"https:\/\/paksc.org\/pk\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/paksc.org\/pk\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/paksc.org\/pk\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/paksc.org\/pk\/"},{"@type":"ListItem","position":2,"name":"STEM\/STEAM Projects"}]},{"@type":"WebSite","@id":"https:\/\/paksc.org\/pk\/#website","url":"https:\/\/paksc.org\/pk\/","name":"PSC Do Science","description":"STEAM Resources, Science Experiments and Projects by PSC","publisher":{"@id":"https:\/\/paksc.org\/pk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/paksc.org\/pk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/paksc.org\/pk\/#organization","name":"Pak Science Club","url":"https:\/\/paksc.org\/pk\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/paksc.org\/pk\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/paksc.org\/pk\/wp-content\/uploads\/2016\/10\/Do-science-logo.png?fit=408%2C136&ssl=1","contentUrl":"https:\/\/i0.wp.com\/paksc.org\/pk\/wp-content\/uploads\/2016\/10\/Do-science-logo.png?fit=408%2C136&ssl=1","width":408,"height":136,"caption":"Pak Science Club"},"image":{"@id":"https:\/\/paksc.org\/pk\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/pages\/4472","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/comments?post=4472"}],"version-history":[{"count":96,"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/pages\/4472\/revisions"}],"predecessor-version":[{"id":7121,"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/pages\/4472\/revisions\/7121"}],"wp:attachment":[{"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/media?parent=4472"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}