← ProjectsWEBSITE · 2026-05-27

delok

  • vite
  • react
  • metamask
  • ethereum
  • solidity
  • ipfs
  • docker
delok

A blockchain-based certification system that connects Learning Management Systems (LMS) with verifiable NFT certificates through oracle integration

README · hilmoo/delok

delok logo

Decentralized Certificate Verification Platform

A blockchain-based certification system that connects Learning Management Systems (LMS) with verifiable NFT certificates through oracle integration

Overview

DELOK is a comprehensive dApp that bridges traditional Learning Management Systems with blockchain technology. It enables students to obtain verifiable NFT certificates for completed courses, with grades and certificates stored on IPFS and validated through smart contracts.

Key Features

  • 🎓 LMS Integration: Connect with existing learning platforms like Elemes
  • 🔐 SIWE Authentication: Sign-In with Ethereum for secure wallet-based login
  • 📜 NFT Certificates: Mint verifiable certificates as ERC-721 tokens
  • 🌐 IPFS Storage: Decentralized storage for certificates and metadata
  • 🤖 Oracle System: Automated verification and certificate issuance
  • ⚡ Local Development: Complete local blockchain environment (100% self-hostable)

🌐 Live Demo

[!IMPORTANT]
This app was built solely for my course project and is not intended for production use. I developed it in about two weeks, so it may contain some bugs and has not been fully tested.

Visit https://github.com/hilmoo/delok/wiki/Elemes-LMS to learn how to use Elemes LMS with DELOK

🚀 Quick Start

Prerequisites

1. Clone and Setup

git clone <repository-url>
cd delok
npm install

2. Open in DevContainer:

  • Press Ctrl+Shift+P (or Cmd+Shift+P on Mac)
  • Select “Dev Containers: Clone Repository in Container Volume”
  • Wait for the container to build and start

3. Start development:

npm run dev

4. Access the Application

🛠️ Development

Project Structure

delok/
├── app                   # React frontend application
├── _hardhat              # Smart contract development
└── _oracle               # Oracle service

Smart Contracts

LMS_Elemes Contract

  • Address: 0x5FbDB2315678afecb367f032d93F642f64180aa3

DelokCertificate Contract

  • Address: 0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0

📦 Tech Stack

Frontend

  • React Router v7: Client-side routing
  • Mantine: UI component library
  • TanStack Query: Server state management
  • wagmi: Ethereum interaction hooks
  • viem: TypeScript Ethereum library

Blockchain

  • Hardhat: Development environment
  • Solidity 0.8.22: Smart contract language
  • OpenZeppelin: Security-audited contract libraries
  • UUPS Proxy: Upgradeable contract pattern

📝 License

This project is open-sourced software licensed under the MIT License.

🙏 Acknowledgments

  • OpenZeppelin: For battle-tested smart contract libraries
  • wagmi Team: For excellent Ethereum React hooks
  • Hardhat: For the comprehensive development environment
  • IPFS: For decentralized storage infrastructure
  • Mantine: For the beautiful UI component library
esc