Skip to main content

Offline OneNote engine

OfficeIMO.OneNote

Read, create, edit, and write native OneNote sections, notebooks, tables of contents, and packages offline.

MIT licensed No Office required Cross-platform .NET
Install dotnet add package OfficeIMO.OneNote
Generated output ยท OfficeIMO.OneNote
GENERATED OUTPUT

Ready for your workflow

Build, inspect, and transform documents through a focused API.

C#using var document = CreateDocument();
document.Save();

Native OneNote files without Graph or OneNote

OfficeIMO.OneNote works with desktop and FSSHTTP .one files, .onetoc2 notebook tables of contents, .onepkg exports, and notebook directories. Both OneNote encodings project into the same typed model.

using OfficeIMO.OneNote;

OneNoteSection section = OneNoteSectionReader.Read("Projects.one");
OneNotePage page = section.Pages[0];
var paragraph = new OneNoteParagraph();
paragraph.Runs.Add(new OneNoteTextRun { Text = "Validated offline" });
page.DirectContent.Add(paragraph);
section.Save("Projects-updated.one");

From notebook storage to useful output

PackageRole
OfficeIMO.OneNoteNative storage, revisions, pages, content, notebook structure, and writing
OfficeIMO.OneNote.MarkdownShared semantic projection for text, lists, tables, links, assets, math, and conflicts
OfficeIMO.OneNote.HtmlResponsive semantic HTML and position-preserving visual HTML
OfficeIMO.OneNote.PdfSemantic or position-preserving PDF output
OfficeIMO.Reader.OneNoteNormalized extraction and chunking through OfficeIMO.Reader

File-format operations remain local and managed. Microsoft Graph, a OneNote installation, COM automation, and commercial SDKs are not required.

Next step

Turn the package into a working document.

Follow a focused guide, inspect the generated API reference, or try a browser-safe conversion.