{
  "format": "dataset-manifest/1",
  "slug": "interactive-learning-platforms",
  "version": 1,
  "seed": "interactive-learning-platforms:1",
  "spec": {
    "format": "dataset/1",
    "slug": "interactive-learning-platforms",
    "name": "Interactive Learning Insights",
    "tagline": "Users, courses, lessons, quizzes, certifications, and badges from an interactive online learning ecosystem.",
    "description": "Users engage dynamically with a diverse array of interactive learning materials, immersing themselves in courses designed to enhance their educational journey. They traverse through carefully structured lessons, take quizzes to test their knowledge, and push towards achieving certifications that validate their skills. As learners progress, they earn badges, signifying their accomplishments and motivating them to reach their educational goals. The ecosystem thrives on tracking user engagement and progress, painting a vivid picture of individual learning journeys.\n\nIn this dataset, the 'users' table represents each learner's unique profile, detailing their personal information and engagement metrics. The 'courses' table outlines the various offerings available, each associated with multiple lessons. The 'lessons' table breaks down the content delivered within each course, while the 'quizzes' table contains assessments correlated with the lessons to evaluate user understanding. 'Certifications' indicate the advanced levels users can achieve, while 'badges' reward them for their milestones along the way. Users link to courses, which in turn link to lessons and quizzes, illustrating a clear path of progression throughout the educational experience.\n\nThis dataset is beneficial for analyzing learner engagement, understanding course effectiveness, and identifying areas for improvement in educational content. You can explore questions such as: What percentage of users complete their courses? Which quizzes are the most challenging? Are there correlations between lesson completion and certification achievement? This synthetic data allows for a safe and effective practice environment, enabling developers to hone their skills in data analysis, visualization, and relational database management.",
    "domain": "education",
    "shape": "hierarchical",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "education",
      "interactive learning",
      "user engagement",
      "quizzes",
      "certifications",
      "badges",
      "courses",
      "lessons"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains information about the users participating in the learning platform. Each user can engage with multiple courses and achieve various certifications.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "The full name of the user.",
            "nullable": true
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "The email address of the user.",
            "nullable": true
          },
          "registration_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the user registered on the platform.",
            "trend": "growing"
          }
        }
      },
      "courses": {
        "description": "This table lists the various courses available on the platform. Each course can encompass multiple lessons and quizzes.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each course."
          },
          "title": {
            "kind": "words",
            "min": 3,
            "max": 10,
            "description": "The title of the course."
          },
          "description": {
            "kind": "sentence",
            "description": "A brief description of what the course covers.",
            "nullable": true
          },
          "creation_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the course was created.",
            "trend": "growing"
          }
        }
      },
      "lessons": {
        "description": "This table captures the lessons that are part of each course. Users can complete multiple lessons as part of their learning journey.",
        "rows": {
          "per": "courses",
          "via": "course_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each lesson."
          },
          "course_id": {
            "kind": "fk",
            "ref": "courses.id",
            "description": "The ID of the course that this lesson belongs to."
          },
          "title": {
            "kind": "words",
            "min": 2,
            "max": 8,
            "description": "The title of the lesson.",
            "nullable": true
          },
          "content": {
            "kind": "paragraph",
            "description": "The content of the lesson.",
            "nullable": true
          },
          "order": {
            "kind": "int",
            "min": 1,
            "max": 10,
            "description": "The order of the lesson within the course."
          }
        }
      },
      "quizzes": {
        "description": "This table tracks quizzes associated with each course, allowing users to test their knowledge on lessons learned.",
        "rows": {
          "per": "courses",
          "via": "course_id",
          "min": 1,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each quiz."
          },
          "course_id": {
            "kind": "fk",
            "ref": "courses.id",
            "description": "The ID of the course that this quiz belongs to."
          },
          "title": {
            "kind": "words",
            "min": 2,
            "max": 5,
            "description": "The title of the quiz.",
            "nullable": true
          },
          "total_questions": {
            "kind": "int",
            "min": 5,
            "max": 20,
            "description": "The total number of questions in the quiz."
          }
        }
      },
      "certifications": {
        "description": "This table records the certifications that users can achieve after completing specific courses or quizzes.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 0,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each certification."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The ID of the user who achieved this certification."
          },
          "course_id": {
            "kind": "fk",
            "ref": "courses.id",
            "description": "The ID of the course for which the certification was earned."
          },
          "issue_date": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the certification was issued.",
            "nullable": true,
            "trend": "growing"
          }
        }
      },
      "badges": {
        "description": "This table tracks the badges earned by users as they progress through the platform, signifying achievements.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 0,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each badge."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "The ID of the user who earned this badge."
          },
          "title": {
            "kind": "words",
            "min": 2,
            "max": 6,
            "description": "The title of the badge.",
            "nullable": true
          },
          "date_earned": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-12-31",
            "description": "The date the badge was earned.",
            "nullable": true,
            "trend": "seasonal"
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "nullable",
      "timestamped"
    ],
    "analysisQuestions": [
      "What percentage of users achieve certifications after completing courses?",
      "How does quiz performance correlate with lesson completion rates?",
      "Which courses have the highest number of badges earned by users?",
      "What trends can be observed in user registrations over time?",
      "Which lessons are most frequently associated with users earning certifications?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users with Certifications",
        "sql": "SELECT u.full_name, c.title FROM users u JOIN certifications cert ON u.id = cert.user_id JOIN courses c ON cert.course_id = c.id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Badges Earned by Each User",
        "sql": "SELECT u.full_name, COUNT(b.id) AS badge_count FROM users u LEFT JOIN badges b ON u.id = b.user_id GROUP BY u.full_name;",
        "dialect": "postgres"
      },
      {
        "title": "Average Quiz Questions by Course",
        "sql": "SELECT c.title, AVG(q.total_questions) AS avg_questions FROM courses c JOIN quizzes q ON c.id = q.course_id GROUP BY c.title;",
        "dialect": "postgres"
      },
      {
        "title": "User Engagement Over Time",
        "sql": "SELECT DATE_TRUNC('month', registration_date) AS month, COUNT(*) AS user_count FROM users GROUP BY month ORDER BY month;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Educators Exploring User Engagement",
        "body": "Educators can utilize this dataset to analyze how their students engage with various interactive learning materials. By examining completion rates for lessons and quizzes, they can identify which content resonates most with students and tailor their teaching strategies accordingly."
      },
      {
        "title": "Data Analysts Monitoring User Progress",
        "body": "Data analysts can leverage this dataset to monitor user progress across different courses and certifications. They can create dashboards to visualize trends, such as the percentage of users achieving certifications over time, providing insights into the effectiveness of the educational content offered."
      },
      {
        "title": "Developers Testing Learning Platform Features",
        "body": "Developers working on interactive learning platforms can use this dataset to test new features. They can simulate user engagement scenarios, ensuring that new functionalities effectively enhance the learning experience without disrupting existing user interactions."
      },
      {
        "title": "Researchers Investigating Learning Outcomes",
        "body": "Researchers can analyze this dataset to investigate learning outcomes and the impact of interactive materials on student success. By correlating quiz performance with certification rates, they can draw conclusions about the effectiveness of various teaching methodologies."
      }
    ]
  },
  "counts": {
    "courses": 50,
    "lessons": 111,
    "quizzes": 82,
    "users": 200,
    "badges": 309,
    "certifications": 189
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 19,
          "distinct": 178,
          "min": "Alice Torres",
          "max": "Zoe Meyer"
        },
        "email": {
          "nulls": 37,
          "distinct": 162
        },
        "registration_date": {
          "nulls": 0,
          "distinct": 185,
          "min": "2020-01-06",
          "max": "2023-12-29"
        }
      }
    },
    "courses": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "title": {
          "nulls": 0,
          "distinct": 50
        },
        "description": {
          "nulls": 4,
          "distinct": 46
        },
        "creation_date": {
          "nulls": 0,
          "distinct": 49,
          "min": "2020-05-16",
          "max": "2023-12-08"
        }
      }
    },
    "lessons": {
      "rows": 111,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 111,
          "min": 1,
          "max": 111
        },
        "course_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "title": {
          "nulls": 13,
          "distinct": 98
        },
        "content": {
          "nulls": 9,
          "distinct": 102
        },
        "order": {
          "nulls": 0,
          "distinct": 10,
          "min": 1,
          "max": 10
        }
      }
    },
    "quizzes": {
      "rows": 82,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 82,
          "min": 1,
          "max": 82
        },
        "course_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "title": {
          "nulls": 7,
          "distinct": 75
        },
        "total_questions": {
          "nulls": 0,
          "distinct": 16,
          "min": 5,
          "max": 20
        }
      }
    },
    "certifications": {
      "rows": 189,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 189,
          "min": 1,
          "max": 189
        },
        "user_id": {
          "nulls": 0,
          "distinct": 104,
          "min": 1,
          "max": 196
        },
        "course_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "issue_date": {
          "nulls": 15,
          "distinct": 162,
          "min": "2020-01-17",
          "max": "2023-12-31"
        }
      }
    },
    "badges": {
      "rows": 309,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 309,
          "min": 1,
          "max": 309
        },
        "user_id": {
          "nulls": 0,
          "distinct": 115,
          "min": 5,
          "max": 199
        },
        "title": {
          "nulls": 30,
          "distinct": 279
        },
        "date_earned": {
          "nulls": 39,
          "distinct": 242,
          "min": "2020-01-04",
          "max": "2023-12-24"
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/courses.csv",
      "format": "csv",
      "table": "courses",
      "key": "datasets/interactive-learning-platforms/v1/csv/courses.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/csv/courses.csv",
      "bytes": 5701,
      "sha256": "a4f42e2619b7ee05933ec7b507c393055a8939dbcd0db77aa3a4666f6067f7cf",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/lessons.csv",
      "format": "csv",
      "table": "lessons",
      "key": "datasets/interactive-learning-platforms/v1/csv/lessons.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/csv/lessons.csv",
      "bytes": 21929,
      "sha256": "9f74224183e297e267888c07c08bb1e8de69a5d7205490691e09433c667a6c03",
      "rows": 111,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/quizzes.csv",
      "format": "csv",
      "table": "quizzes",
      "key": "datasets/interactive-learning-platforms/v1/csv/quizzes.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/csv/quizzes.csv",
      "bytes": 2573,
      "sha256": "4c163bec371ac65cc0c99e1f9a76f94c9b601d30ff5407ef341816b746fbc112",
      "rows": 82,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/interactive-learning-platforms/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/csv/users.csv",
      "bytes": 9244,
      "sha256": "a08d87dee4a21c5bf02fca5a1d3fd57a623106f40bf1e2edfeac747df287c162",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/badges.csv",
      "format": "csv",
      "table": "badges",
      "key": "datasets/interactive-learning-platforms/v1/csv/badges.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/csv/badges.csv",
      "bytes": 12969,
      "sha256": "97b4480fb96d7015a2a0779d8bc35526896f577103b6629084aa9079c49a69b6",
      "rows": 309,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/certifications.csv",
      "format": "csv",
      "table": "certifications",
      "key": "datasets/interactive-learning-platforms/v1/csv/certifications.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/csv/certifications.csv",
      "bytes": 3987,
      "sha256": "b7495854bdc23510c7f47b44548cfbb394b22ca7f16978d390a1622d9d29dc83",
      "rows": 189,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "interactive-learning-platforms.json",
      "format": "json",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/interactive-learning-platforms.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/interactive-learning-platforms.json",
      "bytes": 140052,
      "sha256": "808edace4dd5dd8937b91a843c14498688ac75466ed9b67c2baa3e19dc341da2",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/sql/postgres.sql",
      "bytes": 71839,
      "sha256": "6e4de2e794403e9d77b5a5b41618d4f635c7aeff4497cee3dc3759269804abd1",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/sql/mysql.sql",
      "bytes": 71176,
      "sha256": "54673ac71d4be5d39e9ceddfa9e77b158e1dbe181549136532d60abc85556b3c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/sql/mssql.sql",
      "bytes": 73250,
      "sha256": "c293e40c83fbd2333df66e06b66dbb935d3c0bf2c3ef39f6a668b43254a00b5e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/sql/sqlite.sql",
      "bytes": 70959,
      "sha256": "b07a4a14f1521e7966197720d0f65934910bd2aa7426fd84075c78a65c65bbc8",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/prisma/seed.ts",
      "bytes": 113813,
      "sha256": "b43bc4871e9f08a7fb102c17e03cdbbf8d8cacb137b1f9ad0ca0cb6d3dea953b",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/interactive-learning-platforms/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/interactive-learning-platforms/v1/django/fixtures.json",
      "bytes": 178239,
      "sha256": "6e64a297085362870831126f73eced2216f0399b922bc9e405e0bea522916ecb",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766189000,
  "updatedAt": 1788766189000
}
