Skip to content

Repository files navigation

StatsLab Logo

StatsLab

Media Pembelajaran Dasbor Statistik Interaktif & EdTech R&D Ecosystem Terintegrasi Nilai Keislaman
Learning Analytics Infrastructure & Data Literacy Research Platform (Watson-Callingham Hierarchy Level 1–6)

⚡ Jelajahi Live Demo💖 Sponsored by Institut Al-Bahjah🐛 Laporkan Bug✨ Usulkan Fitur🎓 Sitasi Penelitian

Contributors Forks Stargazers Issues Vercel Live License GitHub Release NPM Datasets NPM Analysis

ORCID Google Scholar Academia.edu

StatsLab Advanced Interactive Dashboard Banner


📌 Daftar Isi (Table of Contents)
  1. Tentang Proyek
  2. Fitur Utama (Feature Grid)
  3. Arsitektur Sistem (Mermaid.js)
  4. Repository Pulse & Statistics
  5. Struktur Folder Monorepo
  6. Panduan Instalasi & Pengembangan Lokal
  7. Publikasi & Karya Ilmiah Terbaru
  8. 🎓 Sitasi Akademik (Citation)📄 CITATION.cff
  9. 📦 Releases & Packages
  10. Kontributor Repositori
  11. Kontribusi & Kode Etik
  12. Lisensi
  13. Peneliti Utama

📖 Tentang Proyek

StatsLab adalah repositori R&D (Research & Development) EdTech open source berbasis keislaman pertama di Indonesia. Proyek ini dirancang dan dikembangkan oleh Muhammad Khoiruzzadittaqwa (muhzadit) dari Program Studi Pendidikan Matematika, Institut Al-Bahjah Cirebon.

StatsLab menggabungkan visualisasi data interaktif Next.js 15 dengan integrasi nilai-nilai etika Keislaman (Amanah, Tabayyun, Tawazun), asesmen literasi data Watson-Callingham (Level 1–6), instrumen kepraktisan adaptif System Usability Scale (SUS 14-butir), serta pustaka analisis psikometri terbuka (Rasch PCM & CFA R scripts).

(back to top)


✨ Fitur Utama (Feature Grid)

🤝 Pilar Amanah (QS. Al-Mutaffifin: 1-3)

Sakelar audit visual skala sumbu Y (Zero-Based vs Truncated Y-Axis) untuk melatih ketelitian dan kejujuran membaca grafik data.

🔍 Pilar Tabayyun (QS. Al-Hujurat: 6)

Deteksi pencilan data/outlier otomatis (>20% dari median) dilengkapi modal verifikasi data untuk melatih kritis membaca data.

⚖️ Pilar Tawazun (QS. Al-Infitar: 7)

Indikator keseimbangan distribusi data kuantitatif perbandingan Mean vs Median untuk menganalisis simetri data.

📊 8 Embedded Tasks Watson-Callingham

Asesmen literasi data berjenjang dari Level 4 (Reading Data), Level 5 (Reading Between), hingga Level 6 (Data-Driven Decision Making).

🧪 Psikometri Open Science (Rasch & CFA)

Infrastruktur ekspor data matriks .csv dan file kontrol Winsteps (.ctl) dengan R scripts (eRm, TAM, lavaan).

🏆 Sertifikat Digital & Evaluasi SUS 14

Penilaian politomi otomatis (0, 1, 2), kuesioner SUS 14-butir adaptif, dan penerbitan sertifikat digital otomatis ber-confetti.

(back to top)


🏛 Arsitektur Sistem (Mermaid.js)

graph TD
    subgraph Client_Layer["🖥 Client Layer (Browser)"]
        User["Siswa / Guru / Peneliti"]
        UI["React 19 Components (App Router)"]
        State["Zustand Client State Manager"]
        Charts["Recharts 2 Dynamic Data Viz"]
    end

    subgraph Server_Layer["⚡ Next.js 15 Serverless Runtime (Vercel)"]
        API_Sessions["/api/sessions Handler"]
        API_TaskResp["/api/task-responses Handler"]
        API_Export["/api/export (Rasch/CFA/Winsteps)"]
        ZodVal["Zod Schema Validator"]
    end

    subgraph Database_Layer["🗄 Database & Persistence"]
        Prisma["Prisma ORM v7"]
        NeonDB[(Neon Serverless PostgreSQL)]
    end

    subgraph Open_Science_Layer["🔬 Pilar 3: Psychometrics & R Analytics"]
        R_Rasch["rasch-pcm.r (eRm / TAM / Winsteps .ctl)"]
        R_CFA["cfa-lavaan.r (lavaan)"]
        Aiken["Aikens V Expert Validity"]
    end

    User --> UI
    UI --> State
    UI --> Charts
    State --> API_Sessions
    State --> API_TaskResp
    API_TaskResp --> ZodVal
    ZodVal --> Prisma
    API_Export --> Prisma
    Prisma --> NeonDB
    NeonDB --> API_Export
    API_Export --> R_Rasch
    API_Export --> R_CFA
    R_Rasch --> Aiken
Loading

(back to top)


📈 Repository Pulse & Statistics

Last Commit Monthly Commits Repo Size Top Language

(back to top)


📂 Struktur Folder Monorepo

STATSLAB/
├── apps/
│   └── web/                         # Next.js 15 Web Application Core
│       ├── prisma/                  # Schema Prisma v7 & Script Seed DB
│       ├── public/                  # Asset Statis (social-preview.png, llms.txt, robots.txt, sitemap.xml)
│       └── src/
│           ├── app/                 # Next.js App Router (Pages & API Routes)
│           ├── components/          # Reusable UI & Chart Components
│           └── lib/                 # Utilities, Zod Schemas, & Prisma Client
├── packages/
│   ├── analysis/                    # Skrip R Psikometri & Open Science
│   │   └── scripts/
│   │       ├── cfa-lavaan.r         # Analisis Faktor Konfirmatori (lavaan)
│   │       └── rasch-pcm.r          # Model Rasch Partial Credit (eRm & TAM)
│   ├── datasets/                    # Datasets JSON Mentah (Zakat, Wakaf, Tajwid, Perpus)
│   └── rubrics/                     # Rubrik Penilaian Politomi & Kuesioner SUS
├── .github/                         # Workflows GitHub Actions, SECURITY.md
├── CITATION.cff                     # Citation File Format v1.2.0 (ORCID & Google Scholar)
├── .zenodo.json                     # Metadata DOI Otomatis Zenodo
├── codemeta.json                    # Schema Software Science Metadata
├── llms.txt                         # Directive AI Agents & LLM Search Engines
├── vercel.json                      # Konfigurasi Deployment Vercel Monorepo
├── package.json                     # Root NPM Workspaces Configuration
└── README.md                        # Dokumen Utama Repositori

(back to top)


🚀 Panduan Instalasi & Pengembangan Lokal

💻 Klik untuk Membuka Panduan Setup & Instalasi Langkah Demi Langkah

Prasyarat

  • Node.js: v24.x atau lebih baru
  • NPM: v10.8.2 atau lebih baru
  • Database: PostgreSQL (direkomendasikan Neon PostgreSQL Serverless)
  • R Environment (Opsional, untuk Psikometri Pilar 3): R v4.x + paket eRm, TAM, lavaan.

Langkah-Langkah

  1. Clone Repositori:

    git clone https://github.com/zaditprodakwah/statslab.git
    cd statslab
  2. Instal Dependensi Monorepo:

    npm install
  3. Konfigurasi Environment Variables: Buat file .env pada apps/web/.env (atau salin dari apps/web/.env.example):

    DATABASE_URL="postgresql://neondb_owner:YOUR_POOLER_URL/neondb?sslmode=require"
    DATABASE_URL_UNPOOLED="postgresql://neondb_owner:YOUR_DIRECT_URL/neondb?sslmode=require"
    ADMIN_TOKEN="GANTI_DENGAN_TOKEN_ACAK_ANDA"
  4. Generate Prisma Client & Seed Database:

    npm run postinstall --workspace=apps/web
    cd apps/web && npx tsx prisma/seed.ts && cd ../..
  5. Jalankan Development Server:

    npm run dev

    Akses aplikasi web di http://localhost:3000.

(back to top)


📚 Publikasi & Karya Ilmiah Terbaru

(back to top)


🌍 Jurnal & Riset Pendidikan Matematika Terkini

Daftar artikel akademik terbaru yang ditarik secara otomatis dari jurnal OJS, Repositori DSpace, dan portal edukasi matematika global.

(back to top)


📦 Releases & Packages

Repositori ini memanfaatkan ekosistem rilis standar industri dan akademik untuk mendistribusikan kode, dataset, dan skrip secara terbuka:

  1. GitHub Releases: Versi stabil (stable versions) dari keseluruhan repositori dipublikasikan melalui tab Releases. Anda dapat mengunduh source code (ZIP/Tarball) untuk dipelajari atau digunakan ulang secara luring.
  2. Zenodo DOI: Setiap rilis besar yang kami publikasikan di GitHub akan secara otomatis diarsipkan ke Zenodo via GitHub Actions workflow (release-zenodo.yml) untuk menjamin preservasi data akademik jangka panjang (berstatus DOI permanen).
  3. NPM Packages: Komponen arsitektur riset dipublikasikan secara publik di direktori NPM. Anda dapat memasangnya pada proyek riset atau aplikasi Node.js Anda dengan perintah berikut:
    npm install @zaditprodakwah/datasets @zaditprodakwah/analysis
    • @zaditprodakwah/datasets: Kumpulan raw data, validator, dan skema konten edukasi Islami.
    • @zaditprodakwah/analysis: Skrip dan abstraksi psikometri (Winsteps export, Rasch PCM, CFA).

🎓 Sitasi Akademik (Citation)

Jika Anda menggunakan perangkat lunak, dataset, atau skrip psikometri StatsLab dalam penelitian Anda, mohon sitasi repositori ini melalui tombol "Cite this repository" di bagian samping kanan repositori GitHub ini, atau gunakan format BibTeX berikut:

@software{Khoiruzzadittaqwa_StatsLab_2026,
  author = {Khoiruzzadittaqwa, Muhammad},
  title = {{StatsLab: Dasbor Statistika Interaktif \& EdTech R\&D Ecosystem Terintegrasi Nilai Keislaman}},
  url = {https://github.com/zaditprodakwah/statslab},
  institution = {Institut Al-Bahjah Cirebon},
  department = {Pendidikan Matematika},
  year = {2026}
}

(back to top)


👥 Kontributor Repositori

Terima kasih kepada seluruh kontributor yang telah membantu membangun ekosistem ini:

Contributors

(back to top)


🤝 Kontribusi & Kode Etik

Kami menyambut kontribusi dari peneliti, pendidik, dan pengembang perangkat lunak!

(back to top)


📜 Lisensi

Proyek ini dilindungi oleh Model Lisensi Ganda:

  1. MIT License: Seluruh source code aplikasi web (apps/web/).
  2. Creative Commons Attribution 4.0 International (CC-BY 4.0): Dataset (packages/datasets/), rubrik asesmen, dan skrip psikometri (packages/analysis/).

Informasi selengkapnya dapat dibaca pada berkas LICENSE.

(back to top)


📬 Peneliti Utama

Muhammad Khoiruzzadittaqwa (muhzadit)
Program Studi Pendidikan Matematika — Institut Al-Bahjah Cirebon

StatsLab R&D Ecosystem • Institut Al-Bahjah Cirebon

(back to top)

About

StatsLab — Dasbor Statistika Interaktif & Literasi Data berlandaskan nilai Islam (Tabayyun, Amanah, Tawazun) untuk siswa. Next.js, React, Recharts, Prisma/Neon, Rasch PCM, CFA, Aiken's V.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages