Knyaz.Optimus.Scripting.Jurassic 3.0.0

There is a newer version of this package available.
See the version list below for details.
Install-Package Knyaz.Optimus.Scripting.Jurassic -Version 3.0.0
dotnet add package Knyaz.Optimus.Scripting.Jurassic --version 3.0.0
<PackageReference Include="Knyaz.Optimus.Scripting.Jurassic" Version="3.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Knyaz.Optimus.Scripting.Jurassic --version 3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Knyaz.Optimus.Scripting.Jurassic, 3.0.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Knyaz.Optimus.Scripting.Jurassic as a Cake Addin
#addin nuget:?package=Knyaz.Optimus.Scripting.Jurassic&version=3.0.0

// Install Knyaz.Optimus.Scripting.Jurassic as a Cake Tool
#tool nuget:?package=Knyaz.Optimus.Scripting.Jurassic&version=3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.


Optimus is headless Web Browser fully implemented on .net.

Release notes



  • Quick start

Create console application and paste the code:

using System.Linq;
using Knyaz.Optimus;
using Knyaz.Optimus.Dom.Elements;
using Console = System.Console;

namespace ConsoleApplication1
	class Program
		static async void Main(string[] args)
			var engine = EngineBuilder.New()
			    .UseJint()// Enable JavaScripts execution.
			    .Build(); // Builds the Optimus engine.
			//Request the web page.
			var page = await engine.OpenUrl("");
			//Get the document
			var document = page.Document;
			//Get DOM items
			Console.WriteLine("The first document child node is: " + document.FirstChild);
			Console.WriteLine("The first document body child node is: " + document.Body.FirstChild);
			Console.WriteLine("The first element tag name is: " + document.ChildNodes.OfType<HtmlElement>().First().TagName);
			Console.WriteLine("Whole document innerHTML length is: " + document.DocumentElement.InnerHTML.Length);

Projects structure

  • Knyaz.Optimus - The main assembly with implementation of web browser (without GUI and rendering).
  • Knyaz.Optimus.Tests - Acceptance tests library.
  • Knyaz.Optimus.JsTests - Simple Js tests.
  • Knyaz.Optimus.UnitTests - Pure unit tests.
  • Knyaz.Optimus.WfApp - Simple test application with DOM explorer and Log window.


Optimus is released under the MIT license.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.1 128 10/31/2021
3.0.0 81 10/8/2021
3.0.0-beta-320 83 9/11/2021
3.0.0-beta-305 172 4/4/2021
3.0.0-beta-30 98 1/7/2021
3.0.0-alpha-27 206 7/5/2020
2.3.3 332 3/12/2020
2.3.2 279 12/7/2019
2.3.1 230 11/24/2019