# HoloLearning
## Phase 1 - User Stories (devcamp)
- A user should be able to create/edit/delete a course -> then I become teacher of the course
- The teacher for a course should be able to create/edit/delete a module in the course
- The teacher for a course should be able to create/edit/delete contents for each module
- A student should be able to enrol in a course
### Homework
- Add ordering to the relationship between module and content
- A teacher should be able to track progress of students
- Admins of a course should be able to add teachers to the course
- A students progress should show
### Dna - hUdemy
#### Zome1 -> courses
##### Entries
- Course
- Module
- Content
##### Links
- Course_Teacher: Course → User
- Course_Student: Course → User
- Teacher_Course: User → Course
- Student_Course: User → Course
- Course_Module: Course → Module
- Module_Content: Module → Content
##### Anchor
- Courses
##### Use Cases
## Teacher Use Cases
- User Join DNA
- User Create Course Enty and become a Teacher
-- User Create Course_Teacher link
-- User Create Teacher_Course link
- Teacher select one of his courses
-- Teacher create a Module for selected course
-- Teacher Create Course_Module link
- Teacher select one of his Courses
-- Teacher select one of the module of course
--- Teacher create Module_Content link
## Student Use Cases
- User Join DNA
- Search all courses; Using Anchor
- User select a course
- User Join the course and become Student
-- User Create Student_Course Link
-- User Create Course_Student Link
#### Zome2 -> Coupon
- List of valid users
- Bridge from zome 1 to get the list of valid users
#### Example
- Course: DevCam6
-- Module: Intro of Holochain
--- Content: Url to youtube
-- Module: Design of Entry
--- Content: Url of PDF
--- Content: Url of Youtube
## Phase 2 (extended)
- Bridging to personas
- Teachers can group activities in module
- Teachers should have a way to see student's progress
- Teachers should be able to import modules of other courses
- Admins of courses should be able to add more admins
- At the end of the course, students should get a certificate if they passed
- Teachers should be able to define different types of activities
## Phase 3 (running the DevCamp with this hApp)
- Students should be able to pay for a course (subscription)
- Students can become teachers and be payed
- Only students with the course's certificate can become teachers of a course
- Reputation?
- Rating of teachers/courses - reviews?
- Implement groupon functionality