Sunbird: Digital Resources for Learning
Education is not encumbered by age, date, or region. Effecting change in education and learning is a crying need to develop and enable young people to achieve their full potential.
Sunbird is a searchable, discoverable repository of resources contributed by educators, engineers, pedagogues, teachers, learning scientists, data scientists, and many others. Search the repository using keywords, look through the cards, or browse the resource and collaborator lists to discover resources that help save time, money, and effort.
The repository connects the expertise of people, organizations, domains, missions, and processes. The digital resources available in Sunbird are common building blocks that can be repurposed to suit specific use cases.
Sunbird is not only about using the resources offered. It is also about contributing back in whatever capacity to expand and extend it. It is about collectively building and nurturing an ecosystem that builds capacity for those focussed on finding learning solutions.
Join us and be a part of a community of social innovators steeped in the domain of learning.
Architecture
Sunbird is a next-generation, societal learning platform built for cloud/mobile native environments and meant to address teaching and learning use cases. It is architected to enhance scalability and extensibility. Multiple organizations can exist independently as tenants on the platform and users of these organizations can access the platform via mobile devices, tablets, laptops, and desktops.
The platform is developed based on specific architectural design principles that ensure openness, interoperability, and plug and play options. In addition, the architecture allows for contributions and shared access to common components such as frameworks, models, and content.
Developer Documentation
Sunbird’s developer documentation is meant for its adopters, developers, and contributors.
The developer documentation helps you to get familiar with the bare necessities, giving you a quick and clean approach to get you up and running. If you are looking for ways to customize the workflow, or just breaking things down to build them back up, head to the reference section to dig into the mechanics of Sunbird APIs.
Sunbird is based on an open platform, you are free to use any programming language to extend or customize it. To try the Sunbird APIs, a basic understanding of REST APIs and a knowledge of object-oriented design principles is a plus, though not necessary.
The Developer documentation provides you with a complete set of guidelines which you need to:
- Install Sunbird
- Configure Sunbird
- Customize Sunbird
- Extend Sunbird
- Contribute to Sunbird
Product Features
Sunbird is an open-source platform that is robust, scalable, extensible, flexible, and easily configurable. The ease to use Sunbird platform offers extensive functions and features to its users:
- Easy onboarding and sign in
- Secure user management
- Smoothens content creation, review procedures, publishing content, and consumption
- Extensive resource library
- Facilitates collaboration and partnership
- Create communities for discussions
API Reference Documentation
Sunbird APIs are:
- REST-based (JSON over HTTPS)
- Stateless
- Versioned
The API endpoints follow a common URL structure, viz; https://{host:port}/{module}/{version}/{api_name}.
They are categorized by resource type. Each resource type has one or more data representations and associated methods.
User Taskflows
Sunbird is a next-generation, societal learning platform built for cloud/mobile native environments and meant to address teaching and learning use cases. It is an open-source platform that is robust, scalable, extensible, flexible, and easily configurable.
The User flows guide you to complete a task easily and efficiently.
For each user flow, the questions that we have addressed here:
- What is the user trying to achieve?
- What are the important points that the user should keep in mind while performing a task?
- What additional information or note does the user need to know to complete a task?