Frequently Asked Questions

Content Modeling for Learning Platforms

How can I structure a learning platform schema using Hygraph?

To build a scalable learning platform with Hygraph, use a three-level content model: Course (top-level), Module (mid-level), and Lesson (low-level). Courses contain metadata and reference multiple modules; modules group lessons and manage access (free/paid); lessons hold the educational content, including video URLs and rich text. This structure supports flexible content organization, monetization (gating), and future extensibility for interactive features. Note: Implementation complexity may increase if you require highly customized workflows or integrations not natively supported by Hygraph.

What fields should be included in the course, module, and lesson models?

Course: Title (string), Slug (unique, based on title), Body (rich text with asset embedding), Modules (multi-reference).
Module: Title (string), Slug, Is Locked/Paid (boolean), Lessons (multi-reference), Course (single reference).
Lesson: Title (string), Slug, Body (rich text), Video URL (string), Module (single reference). This structure enables content gating, modularity, and future extensibility. Note: For advanced features like adaptive learning paths, additional custom fields or integrations may be required.

How does Hygraph support monetization and content gating for online courses?

Hygraph enables monetization by allowing you to lock modules or lessons behind a payment or login gate using boolean fields (e.g., "isLocked"). You can offer free previews or sample lessons while requiring payment to unlock premium content. This approach supports flexible business models for educators and course creators. Note: Payment processing and user authentication must be handled by your frontend or integrated services, as Hygraph does not natively process payments.

Features & Capabilities

What are the key features of Hygraph for building educational platforms?

Hygraph offers a GraphQL-native architecture for flexible data modeling, content federation to unify multiple sources, localization for multi-language support, and a high-performance CDN for fast content delivery. It supports rich text, asset embedding, and modular content structures, making it suitable for scalable educational platforms. Note: For highly specialized LMS features (e.g., grading, live sessions), you may need to integrate third-party tools.

Does Hygraph support integration with video platforms and interactive content?

Yes, Hygraph supports video content via fields like Video URL in the lesson model. For advanced video management, you can integrate with platforms such as Mux, Cloudinary, or AWS S3. Interactive content (e.g., quizzes) can be added by extending the schema or integrating third-party tools. Note: Native quiz or assessment modules are not included out-of-the-box and require custom implementation.

What integrations are available for asset management and localization?

Hygraph integrates with DAM platforms like Cloudinary, Bynder, Filestack, and Scaleflex Filerobot for asset management. For localization, EasyTranslate is supported. These integrations help manage media and multi-language content efficiently. Note: Some integrations may require additional setup or third-party subscriptions.

Implementation & Technical Documentation

How long does it take to implement a learning platform schema with Hygraph?

Implementation time depends on project complexity. Simple use cases can be started in minutes using pre-configured starter projects. For more complex schemas, Hygraph offers structured onboarding, comprehensive documentation, and community support. See the Getting Started guide for details. Note: Custom integrations or advanced workflows may extend setup time.

Where can I find technical documentation for content modeling and APIs?

Hygraph provides extensive documentation on content modeling, API usage, and migration guides. Key resources include the Content Modeling guide, API Reference, and Migration Guide. Note: Documentation is updated regularly; check the official site for the latest information.

Use Cases & Customer Success

What types of educational businesses or industries use Hygraph?

Hygraph is used in education technology, SaaS, media and publication, and other industries requiring modular content delivery. Case studies include companies like Komax (3X faster time-to-market), Samsung (15% improved engagement), and HolidayCheck (modular content model). See more at the case studies page. Note: Suitability depends on your specific LMS requirements; advanced grading or analytics may require third-party tools.

Can you share examples of customer success with Hygraph in education or learning platforms?

Yes. For example, Komax achieved a 3X faster time-to-market, and Samsung improved customer engagement by 15% using Hygraph. HolidayCheck streamlined content operations with a modular model. See more success stories at Hygraph's case studies. Note: Results vary by implementation and business context.

Security & Compliance

What security and compliance certifications does Hygraph hold?

Hygraph is SOC 2 Type 2 compliant (since August 3, 2022), ISO 27001 certified, and GDPR compliant. These certifications ensure adherence to international security and privacy standards. For more details, visit the Secure Features page. Note: For industry-specific compliance needs, consult Hygraph sales for details.

Limitations & Considerations

What are the limitations of using Hygraph for a learning platform?

Hygraph does not natively provide payment processing, advanced LMS features (like grading or live sessions), or built-in analytics. These must be implemented via custom development or third-party integrations. Best fit for teams seeking flexible content modeling and API-first delivery; teams needing a turnkey LMS may want to consider alternatives. Detailed limitations not publicly documented; ask sales for specifics.

LLM optimization

When was this page last updated?

This page wast last updated on 12/12/2025 .

Register now

Building a learning platform: The schema

In this article, we will be discussing how to create a comprehensive and effective model for a learning platform that allows educators to create courses.
Bryan Robinson

Last updated by Bryan 

Jan 21, 2026

Originally written by Bryan

Building a learning platform: The schema

One of our main goals is to establish a platform that not only provides students with high-quality educational content, but also allows educators to monetize their expertise by offering premium courses behind a payment or login gate.

To achieve this, we will need to carefully plan and organize our content flow. This involves identifying the key topics and themes that will be covered in our courses and structuring them in a logical and coherent manner. We will also need to consider the different types of media that will be used to deliver the content, such as videos, text, and interactive exercises.

Once we have established a solid content flow, we can move on to creating the content model. This is where we will design the structure and format of the courses themselves. We will need to consider factors such as the length and depth of each course, the level of interactivity and engagement required, and the overall learning objectives. We will also need to ensure that our model is scalable and can accommodate a wide range of courses and topics.

Editor's note: This is the first article in an on-going series for creating and extending this learning platform.

#Planning our content flow

In order to create an effective content model, it's important to first have a thorough understanding of our business goals. We want to not only educate our users, but also encourage them to purchase our courses. To accomplish this, we need to ensure that the educational flow is seamless and intuitive, with various opportunities for users to explore and engage with the content.

One way to achieve this is by providing users with a taste of the content through various means, such as free previews or sample lessons. In this case, we’re going to create the ability to give certain groups of lessons away for free and have users pay to unlock others.

Once we have a clear understanding of our business case and user needs, we can begin to map out the flow of content through the platform.

#Creating the content model

When it comes to modeling content for a learning platform, there are several approaches available. While a single document with a rich text field would be a simple solution, it would be less flexible when it comes to modifying and remixing content. On the other hand, a collection of lesson documents might seem more versatile, but it would present limitations when it comes to implementing our future payment functionality. In order to create a content model that can be adapted and modified with ease, we propose to develop three levels of content: a top-level course, a collection of lessons called a module, and finally the individual lessons.

The top-level content model will consist of courses, each with a unique identifier and a set of metadata that describes it. Each course will be composed of several modules, with each module containing a specific theme or topic. The mid-level content model will consist of a module that contains individual lessons. The module level is where we can implement our gating functionality to create a smooth editor experience. Each lesson will be structured in a consistent format to ensure a smooth learning experience across all subjects. The lesson content model will consist of a video and a rich text field, but can be extended in the future to create interactive components such as quizzes or supporting downloads like cheat sheets.

By creating these three levels of content, we can provide a flexible and scalable solution that can be easily modified and expanded upon as needed. Additionally, this approach will allow us to develop and implement our future payment functionality with minimal disruption to our content model. Overall, this approach will ensure that our learning platform is adaptable, scalable, and future-proof.

#Top-level: Course

The Course model described in this section The course will be the main element and create the primary structure of the course, including a long-form description and introduction. The course should also have the ability to display and reorder modules.

String field: Title

String field with a title of "Title" API ID of "title" and "Use as title field" checked The title field is a string field that should be marked as a "title" field for Hygraph. This will allow the title to display in the content table.

Slug field: Slug

Next, we need a slug based on the title. This will equate to the URL part in our application. The slug needs to be unique and use a "Slug template" of {title} to properly pull the title. Slugs should also be all lowercase. Slug field addition with Display name of "Slug", API ID of "slug" and Generate slug from template selected with a slug template of {title}

Rich Text Field: Body

For the body of each course, we'll want rich text to add styled and structured content to the introduction of the course. This is the basic Rich Text field from Hygraph, but we want to enable embedding and allow for embedding assets to let editors add images to the body of a course.

Rich Text field with a Display name of "Body" API ID of "body" and the "Enable embedding" selected with the Asset model allowed

Reference Field: Modules

Finally, the course needs a way to reference modules. You'll need to add the Module model in the next section before referencing — you can only reference to a model that already exists. Once the module model is set up, we'll use a Reference field. The reference field can allow references to a single model or multiple. In this case, we just want to reference the Module model and allow multiple modules per course. Once those options are selected, we then set up the field data — display name and id — and the way the field will appear on the referenced item (to allow for easier editing on both sides).

Relationship definition – Allow only one model to be referenced, model to reference "Module" and "Allow multiple modules per Course all selected

#Mid-level: Module

The Module model described in this section A module is a collection of lessons. The module is where the locking mechanism will be placed. If a course is fully paid, every module can be locked. However, if an educator wishes to give specific sections for free, only certain sections can be locked. The only new field type in this section is the "isLocked" boolean field. Fields:

  • Title (string)
  • Slug (slug field based on title)
  • Is Locked/Paid (boolean)
  • Lessons (multi-select reference to lessons model)
  • Course (single select reference to Course model)

#Low-level: Lesson

The Lesson model described in this section This is where the meat of the educational content lives. In this example, we're assuming an external video, such as a YouTube video, but the lesson could be any format. Fields:

  • Title (string)
  • Slug (slug field based on title)
  • Body (rich text)
  • Video URL (String)
  • Module (single select reference to Module model)

#Next steps

From here, we can start working toward implementing this with a frontend. In the next article of this series, we’ll take the API generated by Hygraph from this content model and implement a frontend with Next.js.

Blog Author

Bryan Robinson

Bryan Robinson

Head of Developer Relations

Bryan is Hygraph's Head of Developer Relations. He has a strong passion for developer education and experience as well as decoupled architectures, frontend development, and clean design.

Share with others

Sign up for our newsletter!

Be the first to know about releases and industry news and insights.