EduHub is an educational decentralized application (dApp) built with Next.js, designed to help users learn blockchain technology, Web3 development, and integrate Open Campus ID (OCID) and Open Campus Achievements (OCA). The platform provides interactive workshops and tutorials to guide developers from beginner to advanced levels in blockchain development.
- Interactive Workshops: Comprehensive bootcamps introducing blockchain and Web3 fundamentals
- In-depth Tutorials: Step-by-step guides for OCID and OCA integration
- User Authentication: Secure authentication using Open Campus ID
- Achievement Tracking: Progress tracking through the Open Campus Achievement system
- Responsive Design: Mobile-friendly UI built with Tailwind CSS
- Modern Stack: Next.js, TypeScript, and Tailwind CSS for a robust frontend experience
- Frontend: Next.js 14.2, React 18, TypeScript
- Styling: Tailwind CSS, shadcn UI components
- Authentication: Open Campus ID (@opencampus/ocid-connect-js)
- Blockchain Interaction: Web3.js
- Build Tools: Turbo
- Node.js (v18.0 or higher)
- npm or yarn
- Git
-
Clone the repository:
git clone https://github.com/asharibali/eduhub-dapp.git cd eduhub-dapp
-
Install dependencies:
npm install # or yarn install
-
Set up environment variables:
# Copy the example env file cp env.example .env.local # Edit .env.local and add your values # Replace 'your_api_key_here' with your actual OCA API key
-
Start the development server:
npm run dev # or yarn dev
-
Open http://localhost:3000 in your browser to view the application.
app/
: Contains all the page components and routingworkshop/
: Workshop content for blockchain bootcamptutorial/
: Tutorial content for OCID and OCA integrationuser/
: User authentication and profile pages
components/
: Reusable UI componentslib/
: Utility functions and shared logicpublic/
: Static assetstypes/
: TypeScript type definitions
The dApp includes two main educational paths:
A three-day comprehensive introduction to blockchain concepts, designed for beginners who want to understand the fundamentals of blockchain technology and Web3 development.
A detailed guide on integrating Open Campus ID and Achievements into dApps, covering:
- OCID Authentication
- Smart Contract Integration
- Open Campus Achievement Implementation
- Best Practices for Web3 Development
The application can be deployed to platforms like Vercel or Netlify:
# Build the application
npm run build
# Start the production server
npm start
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Open Campus SDK
- EduHub Founder & CTO Asharib Ali
- EduHub Co-Builder Khizar Bakhtiar
This application uses the following environment variables:
Variable | Description | Default |
---|---|---|
OCA_API_KEY |
API key for Open Campus Achievements | - |
OCA_ENVIRONMENT |
Environment for OCA API (sandbox or production) | sandbox |
You must set the OCA_API_KEY
value in your .env.local
file for credential issuance to work.