# Build an advanced to-do application with OSDK The **advanced to-do application**, available in [VS Code workspaces](../../vs-code/overview/index.md), 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: * [Ontology interfaces](../../interfaces/interface-overview/index.md) * [Media content handling with media sets](../../data-integration/media-sets/index.md) * [Runtime-derived properties](../../ontology/derived-properties/index.md) * [Platform SDKs](../../dev-toolchain/overview/index.md#platform-sdks) ![An example of the advanced to-do application, with annotations where advanced features are used.](../../../assets/bd7b61e6df0c1771c09ce554b93a6874cf5047c03deb5dc7185a2a18d56195ae.webp) The application reference documentation is divided into the following sections: **[Architecture and configuration](../advanced-todo-application-architecture/index.md):** The architecture and configuration overview provides a summary of the configurations, required installations, and application architecture of the advanced to-do application. **[`useProjects`](../useprojects-hook/index.md):** 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 projects along with real-time statistics about the tasks within each project. **[useTasks](../usetasks-hook/index.md):** 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](../usecodingtask-hook/index.md):** 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](../uselearningtask-hook/index.md):** 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`](../useadmin-hook/index.md):** The `useAdmin` hook is a custom React hook that provides functionality for fetching user data from the Foundry Admin API. It leverages the SWR (stale-while-revalidate) library for efficient data fetching and caching.