Build an advanced to-do application with OSDK

The advanced to-do application, available in VS Code workspaces, demonstrates how to use advanced features of the Ontology SDK (OSDK) by building a to-do application as a practical example. You will learn about many OSDK features, including those discussed in the following documentation sections:

An example of the advanced to-do application, with annotations where advanced features are used.

The application reference documentation is divided into the following sections:

Architecture and configuration: The architecture and configuration overview provides a summary of the configurations, required installations, and application architecture of the advanced to-do application.

useProjects: The useProjects hook provides a comprehensive interface for managing to-do projects within a React application. This hook leverages the Ontology SDK (OSDK) to interact with a backend service, offering functionality to fetch, create, and delete projects along with real-time statistics about the tasks within each project.

useTasks: The useTasks hook is a custom React hook that manages tasks associated with a specific project in the to-do application. It leverages the OSDK to fetch task data, associate it with user information, and provide real-time updates through subscriptions. The hook is designed to work with the SWR (stale-while-revalidate) strategy for efficient data fetching, caching, and state management.

useCodingTask: The useCodingTask hook is a custom React hook that provides functionality for fetching and managing coding task data in the to-do application. The hook enriches the basic task data with user information and metadata.

useLearningTask: The useLearningTask hook is a custom React hook that provides functionality for fetching and managing learning task data in the to-do application. The hook enriches basic task data with user information, media content, and metadata.

useAdmin: The useAdmin hook is a custom React hook that provides functionality for fetching and managing user data from the Foundry Admin API. It leverages the SWR (stale-while-revalidate) library for efficient data fetching and caching.