<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Mol* Linker on Mol* Linker Wiki</title><link>https://MartinBaGar.github.io/Molstar_Linker/</link><description>Recent content in Mol* Linker on Mol* Linker Wiki</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://MartinBaGar.github.io/Molstar_Linker/index.xml" rel="self" type="application/rss+xml"/><item><title>Scene Settings</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/configuration/scene/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/configuration/scene/</guid><description>&lt;p&gt;The &lt;strong&gt;Global Scene Settings&lt;/strong&gt; panel controls the overall look of the Mol* viewer, independent of any particular molecule.&lt;/p&gt;
&lt;h2 id="canvas-background-color"&gt;Canvas Background Color&lt;a class="anchor" href="#canvas-background-color"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Sets the viewer background. Click the color swatch to open a color picker, or type a hex value directly (e.g. &lt;code&gt;#111111&lt;/code&gt; for dark mode).&lt;/p&gt;
&lt;p&gt;The default is white (&lt;code&gt;#ffffff&lt;/code&gt;). If you want a dark background without changing anything else, use the built-in &lt;strong&gt;Dark Mode Canvas&lt;/strong&gt; preset from the popup.&lt;/p&gt;</description></item><item><title>Molecular Targets</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/configuration/targets/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/configuration/targets/</guid><description>&lt;p&gt;The &lt;strong&gt;Global Target Configurations&lt;/strong&gt; panel lets you set the default visual style for each class of molecule. Each target is a collapsible card.&lt;/p&gt;
&lt;h2 id="available-targets"&gt;Available Targets&lt;a class="anchor" href="#available-targets"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Target&lt;/th&gt;
 &lt;th&gt;Selector&lt;/th&gt;
 &lt;th&gt;Default Representation&lt;/th&gt;
 &lt;th&gt;Default Color&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Proteins&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;protein&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Cartoon&lt;/td&gt;
 &lt;td&gt;Chain ID&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Nucleic Acids (DNA/RNA)&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;nucleic&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Cartoon&lt;/td&gt;
 &lt;td&gt;Chain ID&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ligands &amp;amp; Small Molecules&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;ligand&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ball &amp;amp; Stick&lt;/td&gt;
 &lt;td&gt;Element symbol&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Carbohydrates &amp;amp; Glycans&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;branched&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ball &amp;amp; Stick&lt;/td&gt;
 &lt;td&gt;Element symbol&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Lipids&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;lipid&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ball &amp;amp; Stick&lt;/td&gt;
 &lt;td&gt;Element symbol&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Single Ions&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;ion&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ball &amp;amp; Stick&lt;/td&gt;
 &lt;td&gt;Element symbol&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Water / Solvent&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;water&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Hidden (Off)&lt;/td&gt;
 &lt;td&gt;—&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;All Atoms&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;all&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;Ball &amp;amp; Stick&lt;/td&gt;
 &lt;td&gt;Element symbol&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The &lt;code&gt;all&lt;/code&gt; target is a catch-all that applies to every atom in the structure. It is useful as a fallback representation but is hidden by default. Enable it only when you want a uniform style applied across the entire structure regardless of molecule type.&lt;/p&gt;</description></item><item><title>Custom Rules</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/configuration/custom-rules/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/configuration/custom-rules/</guid><description>&lt;p&gt;Custom rules let you target specific chains, residues, or atoms and apply a color override or a completely separate representation on top of (or instead of) the global target settings.&lt;/p&gt;
&lt;p&gt;Click &lt;strong&gt;+ Add New Rule&lt;/strong&gt; at the bottom of the Custom Highlighting Rules panel to create one.&lt;/p&gt;
&lt;h2 id="rule-types"&gt;Rule Types&lt;a class="anchor" href="#rule-types"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="highlight--color-overlay"&gt;Highlight (color overlay)&lt;a class="anchor" href="#highlight--color-overlay"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Overlays a color on the existing representation without adding new geometry. Use this to call attention to a residue range or chain while keeping the surrounding context intact.&lt;/p&gt;</description></item><item><title>Architecture &amp; Execution Flow</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/architecture/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/architecture/</guid><description>&lt;h2 id="core-philosophy"&gt;Core Philosophy&lt;a class="anchor" href="#core-philosophy"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Mol* Linker operates across several strict security boundaries imposed by the browser. Modern browsers enforce Content Security Policies (CSP) that block &lt;code&gt;unsafe-eval&lt;/code&gt; in Manifest V3 extension pages, and restrict cross-origin requests (CORS) between websites and external servers.&lt;/p&gt;
&lt;p&gt;To load multi-megabyte structural files from dynamic Single Page Applications (GitHub, GitLab, RCSB) into a high-performance WebGL visualizer (Mol*), the extension uses a &lt;strong&gt;4-Layer Architecture&lt;/strong&gt; where each layer has one clearly defined responsibility.&lt;/p&gt;</description></item><item><title>Contributing &amp; Build System</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/contributing/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/contributing/</guid><description>&lt;h2 id="development-workflow"&gt;Development Workflow&lt;a class="anchor" href="#development-workflow"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Mol* Linker is written in TypeScript and uses a two-stage build pipeline:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Type checking&lt;/strong&gt; — &lt;code&gt;tsc --noEmit&lt;/code&gt; validates the entire codebase against strict TypeScript rules without producing any output files.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bundling&lt;/strong&gt; — &lt;code&gt;esbuild&lt;/code&gt; takes each entry-point module and bundles it with all its dependencies into a single, self-contained JavaScript file per page.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Assembly&lt;/strong&gt; — &lt;code&gt;assemble.js&lt;/code&gt; copies the bundled JS, static HTML/CSS, icons, and the correct browser manifest into a browser-specific output folder.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This separation means the TypeScript compiler is a pure quality gate, and esbuild handles the actual output — giving you both type safety and fast, modern output with zero runtime overhead.&lt;/p&gt;</description></item><item><title>Frequently Asked Questions</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/faq/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/faq/</guid><description>&lt;h2 id="general-questions"&gt;General Questions&lt;a class="anchor" href="#general-questions"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="where-did-my-data-go-does-this-extension-upload-my-proprietary-files"&gt;Where did my data go? Does this extension upload my proprietary files?&lt;a class="anchor" href="#where-did-my-data-go-does-this-extension-upload-my-proprietary-files"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Absolutely not.&lt;/strong&gt; This is one of the biggest upgrades in Mol* Linker v2.0.
Older versions of this tool (and many other visualizers) had to redirect you to external servers. Mol* Linker now opens a &lt;strong&gt;dedicated, local workspace&lt;/strong&gt; directly inside your browser.&lt;/p&gt;
&lt;p&gt;When you click a badge, the extension securely downloads the file straight into your browser&amp;rsquo;s active, temporary memory (RAM). It never touches your hard drive, and it is &lt;strong&gt;never&lt;/strong&gt; uploaded or sent to any external visualization servers. The moment you close the tab, the data ceases to exist. It is 100% private.&lt;/p&gt;</description></item><item><title>Installation</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/getting-started/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/getting-started/installation/</guid><description>&lt;h2 id="official-web-stores"&gt;Official Web Stores&lt;a class="anchor" href="#official-web-stores"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The easiest and safest way to install Mol* Linker is through the official browser extension stores. These versions update automatically and have passed rigorous security reviews.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore"&gt;Install for Google Chrome / Edge / Brave&lt;/a&gt; (Coming Soon)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://addons.mozilla.org/"&gt;Install for Mozilla Firefox&lt;/a&gt; (Coming Soon)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="manual-installation--developers-and-advanced-users"&gt;Manual Installation (Developers &amp;amp; Advanced Users)&lt;a class="anchor" href="#manual-installation--developers-and-advanced-users"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;If you want to test the latest features before they hit the web store, or if you want to modify the source code, you can install the extension manually.&lt;/p&gt;</description></item><item><title>Module Reference</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/module-reference/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/module-reference/</guid><description>&lt;p&gt;All source files live in &lt;code&gt;src/&lt;/code&gt; and are written in TypeScript. Each entry-point module is compiled by esbuild into a single self-contained &lt;code&gt;.js&lt;/code&gt; file in &lt;code&gt;dist/&lt;/code&gt;. Shared modules (&lt;code&gt;types&lt;/code&gt;, &lt;code&gt;config&lt;/code&gt;, &lt;code&gt;permissions&lt;/code&gt;, &lt;code&gt;mvs-builder&lt;/code&gt;) are not separate output files — they are bundled into whichever entry points import them.&lt;/p&gt;
&lt;h2 id="shared-modules"&gt;Shared Modules&lt;a class="anchor" href="#shared-modules"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="src-types-dot-ts"&gt;&lt;code&gt;src/types.ts&lt;/code&gt;&lt;a class="anchor" href="#src-types-dot-ts"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Defines all shared TypeScript interfaces and the inter-context message protocol. This is the single source of truth for data shapes across the entire codebase.&lt;/p&gt;</description></item><item><title>Quickstart</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/getting-started/quickstart/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/getting-started/quickstart/</guid><description>&lt;p&gt;Once the extension is installed, no configuration is needed to get started.&lt;/p&gt;
&lt;h2 id="see-your-first-structure"&gt;See Your First Structure&lt;a class="anchor" href="#see-your-first-structure"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Navigate to any GitHub or GitLab repository that contains a &lt;code&gt;.pdb&lt;/code&gt;, &lt;code&gt;.cif&lt;/code&gt;, or other &lt;a href="../../#supported-formats"&gt;supported file&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Look for a green &lt;strong&gt;Mol&lt;/strong&gt; (MVS)* badge next to file names in the file browser, or next to links in README files&lt;/li&gt;
&lt;li&gt;Click the badge — the structure opens in the Mol* viewer in a new tab, rendered with your current settings&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="view-local-files--drag-and-drop"&gt;View Local Files (Drag &amp;amp; Drop)&lt;a class="anchor" href="#view-local-files--drag-and-drop"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Mol* Linker doubles as a lightning-fast offline desktop viewer! If you have a structure on your computer (e.g., from AlphaFold or PyMOL):&lt;/p&gt;</description></item><item><title>Security</title><link>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/security/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://MartinBaGar.github.io/Molstar_Linker/docs/developer/security/</guid><description>&lt;h2 id="security-and-threat-mitigation"&gt;Security &amp;amp; Threat Mitigation&lt;a class="anchor" href="#security-and-threat-mitigation"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Browser extensions that handle cross-origin data and execute complex rendering engines are frequent targets for security audits. Mol* Linker employs a strict &lt;strong&gt;Defense-in-Depth&lt;/strong&gt; strategy to protect user privacy, prevent malicious payload execution, and secure local networks.&lt;/p&gt;
&lt;p&gt;Here is a breakdown of the active security layers within the extension.&lt;/p&gt;
&lt;h3 id="1-dot-zero-upload-data-privacy"&gt;1. Zero-Upload Data Privacy&lt;a class="anchor" href="#1-dot-zero-upload-data-privacy"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;The most significant security feature of Mol* Linker is its local-only architecture.
When a user visualizes a proprietary, unreleased structure from a private GitLab or ElabFTW instance, &lt;strong&gt;the file is never uploaded to an external server.&lt;/strong&gt; - Data is fetched directly from the authenticated host server into the browser&amp;rsquo;s volatile memory (RAM).&lt;/p&gt;</description></item></channel></rss>