Documentation
Welcome to the Notebook Automation documentation! This site provides comprehensive guides for using and contributing to the Notebook Automation toolkit.
Quick Navigation
For Users
- Getting Started - Installation and setup
- User Guide - File processing and workflows
- Configuration - Settings and customization
- Tutorials - Step-by-step examples
- Troubleshooting - Common issues and solutions
Developer Resources
- Developer Guide - Development setup and contributing
- API Reference - Complete API documentation
What is Notebook Automation?
Notebook Automation is a powerful C# toolkit that transforms educational content from various sources (PDFs, videos, OneDrive) into structured, AI-enhanced Obsidian notes. It's designed for students, educators, and knowledge workers who want to streamline their note-taking workflow.
Key Features
- Multi-format processing - PDFs, videos, and OneDrive content
- AI-powered enhancement - Smart summarization and metadata extraction
- Obsidian integration - Generate properly formatted notes with frontmatter
- Batch processing - Handle multiple documents efficiently
- Flexible configuration - JSON-based settings with environment variable support
Getting Help
- Check the Troubleshooting Guide for common issues
- Visit our GitHub Issues for bug reports
- Join the discussion at GitHub Discussions
🌟 What is Notebook Automation?
Notebook Automation transforms the way you manage course materials, whether for MBA programs, online courses, or any structured educational content. It automates the tedious tasks of organizing files, extracting metadata, generating summaries, and maintaining consistency across your knowledge base.
Key Capabilities
- 🤖 Intelligent Content Processing - Automatically converts PDFs, videos, HTML, and other formats to structured Markdown notes
- 📊 Metadata Extraction - Smart detection of course hierarchy, programs, modules, and lessons
- 🏷️ Advanced Tag Management - Hierarchical tag generation and consolidation for enhanced content discovery
- ☁️ OneDrive Integration - Seamless file access, sharing, and synchronization via Microsoft Graph API
- 🧠 AI-Powered Summaries - OpenAI and Azure AI integration for generating content summaries and insights
- ❓ AI Question Generation - Automatically creates questions and answers for spaced repetition systems
- 📚 Index Generation - Automated creation of navigation structures and dashboards
- 🔄 Cross-Platform Support - Modern C# CLI application with .NET 9.0 runtime
📸 Screenshots & Features
AI-Generated Page Summaries
Each processed document receives an intelligent summary that captures key points, main themes, and actionable insights. These summaries help you quickly review and recall important content.
AI-Powered Question Generation
The system automatically generates intelligent questions and answers from your course content, perfect for creating study materials and spaced repetition systems. This feature leverages AI to identify key concepts and create meaningful assessment questions.
Anki Integration for Spaced Repetition
These Questions and Answers can be used to seamlessly export the generated questions to Anki for optimized learning through spaced repetition. The tool creates properly formatted flashcards that integrate with your existing study workflow.
Obsidian Class Overview with Hierarchical Structure
View your course content in a beautifully organized hierarchical structure within Obsidian. The base template system provides a clear overview of programs, modules, and lessons for easy navigation.
Case Study Analysis Views
Detailed case study notes with structured analysis, key insights, and cross-references. The system automatically formats complex business cases into digestible, searchable content.
PDF Annotation Processing
Automatically extract and process annotations from PDF documents, preserving highlights, comments, and notes in your knowledge base while maintaining proper attribution and context.
Rich YAML Frontmatter
Comprehensive metadata extraction creates rich YAML frontmatter with course information, tags, relationships, and custom properties that enhance searchability and organization.
Vocabulary and Definition Management
Automatically identify and extract key terms and definitions from course materials, creating a searchable vocabulary database with contextual usage examples that can also imported into Anki.
🏗️ Architecture
The project uses a hybrid storage approach that separates content types for optimal performance:
- Obsidian Vault - Lightweight Markdown files with metadata and references
- OneDrive - Large media files (videos, PDFs, audio) with automatic linking
This ensures your knowledge base remains fast and navigable while keeping all related media easily accessible.
📖 Documentation Sections
Section | Description |
---|---|
Getting Started | Installation, initial setup, and first steps |
User Guide | Complete usage documentation and examples |
Configuration | System configuration, AI services, and integrations |
Migration Guide | NEW: Upgrade from legacy metadata.yaml to new schema |
Metadata Schema | NEW: Complete metadata-schema.yml configuration reference |
Plugin Development | NEW: Extensible resolver development and registry usage |
Developer Guide | Building from source, contributing, and architecture |
API Reference | Complete C# API documentation |
Troubleshooting | Common issues, solutions, and debugging |
🤝 Community
- GitHub Repository - Source code and issue tracking
- GitHub Discussions - Community support and feature discussions
- GitHub Issues - Bug reports and feature requests
Made with ❤️ for the education and knowledge management community