windows-swca

JavaScript bindings for the undocumented SetWindowCompositionAttribute API

Usage no npm install needed!

<script type="module">
  import windowsSwca from 'https://cdn.skypack.dev/windows-swca';
</script>

README

windows-swca

Wraps Windows 10's undocumented SetWindowCompositionAttribute API, which allows to render a window with a blurry, acrylic or transparent background effect.

Dependencies

This module only depends on a properly set up Windows build environment.

Screenshots

Note: all the applications showed above except Terminus do not use this module, they have been personally modified by me

Documentation

There's no fancy docs website for now, but every publically facing API component is documented using JSDoc, so a quick look in the source or your IDE's autocomplete and info tips should give you all need.

Tips for usage on Electron

Don't forget to install electron-rebuild from NPM if not already done and to run npx electron-rebuild after installing to avoid ABI version mismatch issues.

For best user and developer experience, do not set transparent to true in your browser create options. It has many shortcomings, such as no support for maximised window state and shadows. Instead set backgroundColor to #00000000.

Setting frame to false and creating custom window decorations is also recommended, the selected transparency effect will bleed over native window decorations if not.