{"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-12T06:52:57","modified_gmt":"2026-04-12T06:52:57","slug":"steam","status":"publish","type":"page","link":"https:\/\/paksc.org\/pk\/","title":{"rendered":"STEM\/STEAM Projects"},"content":{"rendered":"\n<style>\n.psc-hook {\n  text-align:center;\n  padding:40px 20px;\n  background:#f5f7fb;\n}\n\n.psc-search {\n  max-width:500px;\n  margin:20px auto;\n  display:flex;\n  border-radius:30px;\n  overflow:hidden;\n  box-shadow:0 5px 15px rgba(0,0,0,0.08);\n}\n\n.psc-search input {\n  flex:1;\n  padding:12px 15px;\n  border:none;\n  outline:none;\n}\n\n.psc-search button {\n  background:#1976d2;\n  color:#fff;\n  border:none;\n  padding:0 20px;\n  cursor:pointer;\n}\n\n\/* CATEGORY BUTTONS *\/\n.psc-cats {\n  margin-top:20px;\n  display:flex;\n  flex-wrap:wrap;\n  justify-content:center;\n  gap:10px;\n}\n\n.psc-cats a {\n  padding:10px 16px;\n  border-radius:25px;\n  background:#fff;\n  text-decoration:none;\n  font-weight:600;\n  color:#333;\n  box-shadow:0 5px 15px rgba(0,0,0,0.05);\n  transition:0.3s;\n}\n\n.psc-cats a:hover {\n  background:#1976d2;\n  color:#fff;\n  transform:translateY(-2px);\n}\n<\/style>\n\n<section class=\"psc-hook\">\n\n  <h2>What do you want to learn today?<\/h2>\n\n  <!-- SEARCH -->\n  <form class=\"psc-search\" action=\"\/pk\/\" method=\"get\">\n    <input type=\"text\" name=\"s\" placeholder=\"Search experiments, projects...\">\n    <button type=\"submit\">Search<\/button>\n  <\/form>\n\n  <!-- QUICK CATEGORIES -->\n  <div class=\"psc-cats\">\n    <a href=\"\/pk\/science-experiments\" data-wpel-link=\"internal\">\ud83d\udd2c STEM Projects<\/a>\n    <a href=\"\/pk\/diy-projects\" data-wpel-link=\"internal\">\u2699\ufe0f DIY Projects<\/a>\n    <a href=\"\/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\n<\/section>\n\n\n\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\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    * {\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    .hero {\n      background: linear-gradient(120deg, #eef2ff 0%, #ffffff 100%);\n      padding: 50px 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.7);\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    .cat-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(290px, 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      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 {\n        opacity: 1;\n        transform: translateY(0);\n      }\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    }\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    @media (max-width: 700px) {\n      .hero-text h2 { font-size: 2rem; }\n      .container { padding: 0 18px; }\n      .merged-feed { padding: 20px 16px; }\n      .filter-pills { margin-top: 12px; }\n    }\n  <\/style>\n<\/head>\n<body>\n\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\">\n      <div class=\"cat-icon\">\ud83d\udd2c<\/div>\n      <h3>Learn Science<\/h3>\n      <p>Physics, Chemistry, Biology & kitchen science fun.<\/p>\n      <a href=\"https:\/\/paksc.org\/pk\/science-experiments\/\" class=\"cat-link\" data-wpel-link=\"internal\">Explore Experiments \u2192<\/a>\n    <\/div>\n    <div class=\"cat-card\">\n      <div class=\"cat-icon\">\u2699\ufe0f<\/div>\n      <h3>Build Projects<\/h3>\n      <p>DIY models, STEAM projects & real working systems.<\/p>\n      <a href=\"https:\/\/paksc.org\/pk\/diy-projects\/\" class=\"cat-link\" data-wpel-link=\"internal\">Start Building \u2192<\/a>\n    <\/div>\n    <div class=\"cat-card\">\n      <div class=\"cat-icon\">\ud83e\udd16<\/div>\n      <h3>Electronics & Tech<\/h3>\n      <p>Circuits, Arduino, robotics & computer science.<\/p>\n      <a href=\"https:\/\/paksc.org\/pk\/electronics\/\" class=\"cat-link\" data-wpel-link=\"internal\">Learn Electronics \u2192<\/a>\n    <\/div>\n    <div class=\"cat-card\">\n      <div class=\"cat-icon\">\ud83c\udfc6<\/div>\n      <h3>Science Fair<\/h3>\n      <p>Ideas, models & winning competition guides.<\/p>\n      <a href=\"https:\/\/paksc.org\/pk\/science-fair-projects\/\" class=\"cat-link\" data-wpel-link=\"internal\">Get Ideas \u2192<\/a>\n    <\/div>\n    <div class=\"cat-card urdu-badge\">\n      <div class=\"cat-icon\">\ud83c\udf10<\/div>\n      <h3>Science in Urdu<\/h3>\n      <p>Learn experiments & electronics in Urdu language.<\/p>\n      <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>\n    <\/div>\n    <div class=\"cat-card\">\n      <div class=\"cat-icon\">\ud83d\udcd6<\/div>\n      <h3>Articles & Blog<\/h3>\n      <p>Science knowledge, ideas & learning resources.<\/p>\n      <a href=\"https:\/\/paksc.org\/pk\/articles\/\" class=\"cat-link\" data-wpel-link=\"internal\">Read Articles \u2192<\/a>\n    <\/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 content = (post.excerpt?.rendered || post.content?.rendered || '').toLowerCase();\n      if (title.includes('circuit') || title.includes('arduino') || title.includes('led') || title.includes('electronics') || content.includes('electronics')) return 'electronics';\n      if (title.includes('project') || title.includes('diy') || title.includes('build') || title.includes('model') || content.includes('project')) return 'project';\n      if (title.includes('experiment') || title.includes('kitchen') || title.includes('chemistry') || title.includes('physics') || content.includes('experiment')) return 'experiment';\n      return 'experiment';\n    }\n\n    function getExcerpt(post, maxLength = 100) {\n      let raw = post.excerpt?.rendered || post.content?.rendered || '';\n      let clean = raw.replace(\/<[^>]+>\/g, '').trim();\n      if (clean.length > maxLength) clean = clean.slice(0, maxLength) + '...';\n      return clean || 'Explore this exciting STEM activity.';\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) {\n          const endMsg = document.querySelector('.end-feed-msg-merged');\n          if (!endMsg && 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 (!reset && feedContainer.children.length === 0) {\n              feedContainer.innerHTML = '<div class=\"info-message\">\u2728 No more posts. Check back later for new science content!<\/div>';\n            }\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 && !reset) {\n            feedContainer.innerHTML = '<div class=\"info-message\">\ud83d\udced No articles match this category \u2014 try another filter!<\/div>';\n          }\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) {\n            loadBtn.disabled = false;\n            loadBtn.textContent = 'Load more \u2192';\n          }\n          currentPage++;\n          return;\n        }\n\n        let html = '';\n        for (let post of filteredPosts) {\n          let img = post._embedded?.['wp:featuredmedia']?.[0]?.source_url || 'https:\/\/placehold.co\/600x400\/eef2ff\/1976d2?text=STEM+Activity';\n          let title = post.title.rendered;\n          let link = post.link;\n          let date = new Date(post.date).toLocaleDateString('en-PK', { year: 'numeric', month: 'short', day: 'numeric' });\n          let categoryLabel = detectPostCategory(post);\n          let catIcon = categoryLabel === 'electronics' ? '\u26a1' : (categoryLabel === 'project' ? '\ud83d\udee0\ufe0f' : '\ud83d\udd2c');\n          let excerptText = getExcerpt(post, 95);\n          \n          html += `\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\">\n                  <span>\ud83d\udcc5 ${date}<\/span>\n                  <span>${catIcon} ${categoryLabel.charAt(0).toUpperCase() + categoryLabel.slice(1)}<\/span>\n                <\/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', html);\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.error(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 latest content. <button id=\"refreshFeedMergedBtn\" style=\"background:#1976d2; border:none; color:white; border-radius:40px; padding:6px 16px; 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        } else {\n          const toast = document.createElement('div');\n          toast.className = 'error-message';\n          toast.style.marginTop = '16px';\n          toast.textContent = '\u26a0\ufe0f Network error \u2014 click \"Retry\" to load more.';\n          feedContainer.appendChild(toast);\n          setTimeout(() => toast.remove(), 4000);\n        }\n      } finally {\n        if (loadBtn && !noMorePosts) {\n          loadBtn.disabled = false;\n        }\n      }\n    }\n\n    function resetAndFetchMerged(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    document.querySelectorAll('#filterContainerMerged .filter-btn').forEach(btn => {\n      btn.addEventListener('click', (e) => {\n        const cat = btn.getAttribute('data-cat');\n        if (!cat) return;\n        document.querySelectorAll('#filterContainerMerged .filter-btn').forEach(b => b.classList.remove('active'));\n        btn.classList.add('active');\n        resetAndFetchMerged(cat);\n      });\n    });\n\n    if (loadBtn) {\n      loadBtn.addEventListener('click', () => {\n        if (!isLoading && !noMorePosts) {\n          fetchPostsMerged(false);\n        } else if (noMorePosts) {\n          loadBtn.style.display = 'none';\n        }\n      });\n    }\n\n    fetchPostsMerged(true);\n  })();\n<\/script>\n<\/body>\n<\/html>\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>What do you want to learn today? Search \ud83d\udd2c STEM Projects \u2699\ufe0f DIY Projects \ud83e\udd16 Electronics \ud83c\udfc6 Science Fair \ud83d\udcda Articles DoScience | Free STEM Learning for Everyone \u2013 Pakistan Science Club Free STEM Learning for Everyone Explore science experiments, build DIY electronics, and discover project guides \u2014 in English &#038; Urdu. Trusted by 1000+&#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.3 - 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-12T06:52:57+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-12T06:52:57+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":94,"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/pages\/4472\/revisions"}],"predecessor-version":[{"id":7114,"href":"https:\/\/paksc.org\/pk\/wp-json\/wp\/v2\/pages\/4472\/revisions\/7114"}],"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}]}}