# weolar/miniblink49

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/weolar-miniblink49).**

7,820 stars · 1,164 forks · C++ · Apache-2.0

## Links

- GitHub: https://github.com/weolar/miniblink49
- awesome-repositories: https://awesome-repositories.com/repository/weolar-miniblink49.md

## Topics

`blink` `chromium` `electron` `nodejs`

## Description

miniblink49 is a stripped-down Blink browser kernel and embedded web UI framework used to integrate HTML user interfaces into native C++ applications. It functions as a C++ JavaScript interop bridge that maps high-level script calls to low-level native logic and provides a resource-optimized headless browser engine for processing web content without a graphical interface.

The project enables custom browser environment control by bypassing cross-origin security policies to allow requests across different domains. It further allows for the interception of network resources to replace remote assets with local files and integrates a minimized Node.js runtime to execute server-side scripts within the application footprint.

The toolkit covers a broad range of capabilities including native application web rendering, automated headless browser execution, and the synchronization of C++ object lifecycles with the JavaScript garbage collector. It also handles data type conversion between languages and manages script dependencies using an asynchronous module definition standard.

## Tags

### Programming Languages & Runtimes

- [JavaScript Interoperability](https://awesome-repositories.com/f/programming-languages-runtimes/javascript-interoperability.md) — Maps high-level JavaScript function calls to low-level C++ logic through member pointers and internal callbacks.
- [C++ Language Bridges](https://awesome-repositories.com/f/programming-languages-runtimes/c-language-bridges.md) — Provides a bridge that maps high-level JavaScript function calls to low-level C++ logic.
- [JavaScript Engine Embedding](https://awesome-repositories.com/f/programming-languages-runtimes/c-library-embedding/runtime-embedding/webassembly-engine-embedding/javascript-engine-embedding.md) — Embeds a high-performance JavaScript engine within a C++ application to process script logic. ([source](https://github.com/weolar/miniblink49/tree/master/v8_5_1))
- [C++ Callback Bindings](https://awesome-repositories.com/f/programming-languages-runtimes/language-interoperability/interoperability/javascript-to-native-bridges/c-callback-bindings.md) — Binds JavaScript functions to C++ callbacks for bidirectional communication between the script environment and native logic.
- [Garbage-Collector Bound Lifecycles](https://awesome-repositories.com/f/programming-languages-runtimes/object-lifecycle-managers/garbage-collector-bound-lifecycles.md) — Binds the memory management of native C++ objects to the JavaScript engine garbage collector.
- [Node.js Runtime Integration](https://awesome-repositories.com/f/programming-languages-runtimes/node-js-runtime-integration.md) — Integrates a minimized Node.js runtime to execute server-side scripts within the application footprint. ([source](https://github.com/weolar/miniblink49#readme))
- [JavaScript Environments](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments/language-runtimes/javascript-environments.md) — Integrates a minimized Node.js runtime to execute server-side JavaScript environments within the application footprint. ([source](https://github.com/weolar/miniblink49/blob/master/README.md))

### User Interface & Experience

- [Native HTML Rendering Engines](https://awesome-repositories.com/f/user-interface-experience/native-html-rendering-engines.md) — Integrates a stripped-down Blink engine to render HTML and CSS directly within native application interfaces.
- [Integrated Web Browsers](https://awesome-repositories.com/f/user-interface-experience/embedded-browser-components/integrated-web-browsers.md) — Integrates a lightweight web browser widget into the native application interface for fast deployment of HTML UIs. ([source](https://github.com/weolar/miniblink49/blob/master/README.md))
- [Embedded Web UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/embedded-web-ui-frameworks.md) — Provides a framework for rendering modern HTML5 web content as the primary user interface for native applications. ([source](https://github.com/weolar/miniblink49#readme))
- [Embedded Web Views](https://awesome-repositories.com/f/user-interface-experience/embedded-web-views.md) — Provides a toolkit for rendering modern web content within desktop applications using integrated browser components.
- [JavaScript Execution Bridges](https://awesome-repositories.com/f/user-interface-experience/javascript-execution-bridges.md) — Provides a bridge for executing scripts and invoking functions within the embedded browser from a native C++ host. ([source](https://github.com/weolar/miniblink49/tree/master/gin))
- [Blink Kernel Integration](https://awesome-repositories.com/f/user-interface-experience/native-html-rendering-engines/hybrid-native-html-ui-rendering/blink-kernel-integration.md) — Integrates a stripped-down Blink browser kernel into a native application to render web-based user interfaces.
- [Embedded Web Renderers](https://awesome-repositories.com/f/user-interface-experience/web-based-rendering-engines/embedded-web-renderers.md) — Displays modern HTML5 content and web pages within a desktop application using an embedded browser engine.

### Data & Databases

- [Data Format Converters](https://awesome-repositories.com/f/data-databases/data-format-converters.md) — Provides bidirectional data type conversion between low-level C++ and high-level JavaScript. ([source](https://github.com/weolar/miniblink49/tree/master/gin))
- [Script-to-Native Type Mappings](https://awesome-repositories.com/f/data-databases/type-mapping-frameworks/script-to-native-type-mappings.md) — Uses template-based routines to translate data formats between native C++ memory and JavaScript environments.
- [Browser Resource Interceptions](https://awesome-repositories.com/f/data-databases/data-loading-optimizations/loading-interception/browser-resource-interceptions.md) — Intercepts and customizes how the browser kernel loads resources and handles domain restrictions.

### Development Tools & Productivity

- [Headless Browser Automation](https://awesome-repositories.com/f/development-tools-productivity/headless-browser-automation.md) — Operates a resource-optimized browser without a graphical interface to automate web tasks with low overhead.

### Mobile Development

- [Embedded Browser Kernels](https://awesome-repositories.com/f/mobile-development/browser-kernel-management/embedded-browser-kernels.md) — Integrates a stripped-down browser kernel as a widget to render HTML user interfaces in native apps. ([source](https://github.com/weolar/miniblink49#readme))

### Software Engineering & Architecture

- [Native-Backed JavaScript Functions](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/design-patterns/functional-design-patterns/functional-programming/closures/function-to-closure-coercions/native-function-closures/native-backed-javascript-functions.md) — Creates JavaScript functions backed by native C++ logic through member pointers and callbacks. ([source](https://github.com/weolar/miniblink49/tree/master/gin))

### Web Development

- [Embedded Browser Engines](https://awesome-repositories.com/f/web-development/browser-integration-utilities/browser-extension-development/browser-extensions/embedded-browser-engines.md) — Integrates a stripped-down Blink rendering engine and networking capabilities directly into a host C++ application.
- [Headless Browsers](https://awesome-repositories.com/f/web-development/headless-browsers.md) — Provides a resource-optimized headless browser engine to process web content without a graphical interface. ([source](https://github.com/weolar/miniblink49#readme))
- [Resource Interception](https://awesome-repositories.com/f/web-development/browser-integration-utilities/browser-extension-development/browser-extensions/resource-interception.md) — Captures outgoing network requests to replace remote assets with local files for customization and testing. ([source](https://github.com/weolar/miniblink49#readme))
- [Headless Rendering Engines](https://awesome-repositories.com/f/web-development/headless-browsers/headless-rendering-engines.md) — Employs a headless rendering engine to process web content and automate tasks with low resource overhead. ([source](https://github.com/weolar/miniblink49/blob/master/README.md))
- [Request Interception Middleware](https://awesome-repositories.com/f/web-development/request-interception-middleware.md) — Intercepts outgoing network requests to replace remote assets with local file system paths.

### DevOps & Infrastructure

- [Headless Execution Modes](https://awesome-repositories.com/f/devops-infrastructure/headless-execution-modes.md) — Provides a headless execution mode to process web content without a graphical interface.

### Networking & Communication

- [WebView Cross-Origin Bypasses](https://awesome-repositories.com/f/networking-communication/cross-origin-networking/webview-cross-origin-bypasses.md) — Disables cross-origin security policies within the browser kernel to allow network requests across different domains. ([source](https://github.com/weolar/miniblink49#readme))

### Security & Cryptography

- [Browser Environment Bypasses](https://awesome-repositories.com/f/security-cryptography/browser-environment-bypasses.md) — Bypasses browser-level security restrictions to allow requests across different domains. ([source](https://github.com/weolar/miniblink49/blob/master/README.md))
- [Cross-Origin Security Policies](https://awesome-repositories.com/f/security-cryptography/cross-origin-security-policies.md) — Allows bypassing standard cross-origin security policies to enable network requests across different web domains.
