I often find myself reaching for C# when using other technologies, especially Delphi. C# and Delphi complement each other very well. Hub is a simple content creation tool designed for Delphi consumers:

Content Tool Image 1

It was built with C# 12 (PolySharp), WinForms, WeiFen Luo's DockPanel Suite, and .NET Framework 4.8.1.


Managing Content

The Monaco Editor is used for HTML and CSS editing. Microsoft's WebView2 is used for displaying media. CEFSharp is used for web browsing, bookmarks, content preview, and displaying other files such as PDF documents. The Chrome DevTools are used for diagnostics. A bunch of list views are used for managing document content, images, as well as other media and files necessary for research.

Content Tool Image 2

Other hosted and integrated tools included Microsoft Word, Excel, and Sublime Text with the HTML Tidy linter for verifying structure. Views are docked into the single visible MainForm, which uses the fantastic WeifenLuo package to provide Visual Studio like docking capabilities:

DockView<MonacoView>(MainPanel); 
DockView<BrowserView>(RightPanel);

After docking the views, a startup message is sent:

Send<StartupMessage>();

And each view initializes itself, for example, the view that manages Microsoft Word:

private void OnStartup(StartupMessage msg)
{
    _app = new Word.Application { Visible = true };

    _handle = (IntPtr) Win32Api.FindWindow("Opusapp", null);
    
    Win32Api.SetParent(_handle, panel1.Handle);
    ResizeDockedApplication();

    SizeChanged += (_, _) => ResizeDockedApplication();
}

And the same for Excel, with minor differences:

_app = new Excel.Application { Visible = true };
    
_handle = (IntPtr) Win32Api.FindWindow("XLMAIN", null);

Mobile Consumer

The first consumer is a mobile application I had been working in Delphi FireMonkey.

The content tool exports the data in a format that the FMX application can load and present, with a functional table of contents for chapter navigation:

Client Image 1

Desktop Consumer

The second consumer was a Delphi FMX documentation tool I had created to assist with workflow procedures at work, and I later used for personal study:

Client Image 2

HtPanel

The Delphi applications are leveraging HtPanel from the HCL available here. This is one the best components I've used across any mobile platform, including Flutter.