Skip to content

Latest commit

 

History

History
72 lines (52 loc) · 2.42 KB

README.md

File metadata and controls

72 lines (52 loc) · 2.42 KB

NostrLearn: A Nostr-integrated Learning Management System

NostrLearn is an innovative Learning Management System (LMS) that leverages the power of Nostr (Notes and Other Stuff Transmitted by Relays) to create a decentralized, privacy-focused educational platform.

Features

  • Decentralized User Accounts: Utilize Nostr keys for user authentication and profile management.
  • Course Management: Create, update, and manage courses using Nostr events.
  • Content Delivery: Distribute course materials through Nostr relays.
  • Discussion Forums: Engage in course discussions using Nostr's decentralized messaging.
  • Assignment Submission: Submit and grade assignments with verifiable timestamps.
  • Progress Tracking: Monitor student progress with Nostr-based activity logs.
  • Certifications: Issue tamper-proof certifications as Nostr events.

Getting Started

Prerequisites

  • Node.js (v14 or later)
  • npm (v6 or later)
  • A Nostr client or SDK

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/nostrlearn.git
    cd nostrlearn
    
  2. Install dependencies:

    npm install
    
  3. Configure your Nostr relays in config.js:

    export const RELAYS = [
      'wss://relay.nostr.info',
      'wss://nostr-pub.wellorder.net'
    ];
  4. Start the application:

    npm start
    

Usage

  1. User Registration: Users register using their Nostr public key.
  2. Course Creation: Instructors create courses by publishing Nostr events.
  3. Enrollment: Students enroll in courses by interacting with specific Nostr events.
  4. Content Access: Course materials are fetched from Nostr relays.
  5. Discussions: Users participate in discussions by publishing and subscribing to course-specific Nostr events.
  6. Assignments: Submit assignments as encrypted Nostr events.
  7. Certification: Completed courses result in a certification event published to the Nostr network.

Contributing

We welcome contributions! Please see our CONTRIBUTING.md for details on how to submit pull requests, report issues, or request features.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Acknowledgments

  • The Nostr protocol developers and community
  • All contributors and testers of NostrLearn

For more information on Nostr, visit nostr.com.