Skip to content

Chemotion/ChemLocalLink

Repository files navigation

ChemLocalLink

GitHub all releases License Maintenance GitHub issues Continuous Integration Latest Release

ChemLocalLink is a cross-platform application designed to manage and process Chemotion Files.

Key Features

  • URL Handling: Handles chemotion-specific URLs to react with Chemotion.
  • Structured Download Storage: Persistent per‑origin folder layout: <DownloadRoot>/<origin-host>/<optional/deep/link/path>/file.ext.
  • Download & Edit Tracking: Checksums detect local edits; edited items flagged automatically (periodic scan).
  • Folder Scan / Link External Files: Scan action links any new, untracked files placed manually inside the download tree.
  • Upload Workflow (Keep or Delete): Upload edited files then either mark them as kept (retain on disk) or delete them (with recursive cleanup of now-empty folders).
  • Session Export / Import: Portable .chemlocallink archive bundles transfer to another machine.
  • Desktop Notifications: Progress + status notifications (download / upload / errors).
  • History & State Persistence: downloads.json stored under application data, re‑hydrated on startup.

Installation

Windows

Prerequisites

  • Windows 10 or later
  • .NET 8.0 Desktop Runtime

Download and Install

  1. Download the latest installer from the Releases page

    • Look for ChemLocalLink_x.x.x.exe
  2. Install .NET 8.0 Desktop Runtime (if not already installed)

    • The installer will check and prompt you to install it if needed
    • Or download directly from Microsoft
  3. Run the installer

    • Double-click the downloaded .exe file
    • Follow the installation wizard
    • A desktop shortcut and start menu entry will be created

Linux (Debian-based)

Prerequisites

  • Debian-based System
  • No additional runtime installation required (self-contained package)

Download and Install

  1. Download the latest .deb package from the Releases page

    • For x64 systems: ChemLocalLink_x.x.x_amd64.deb
    • For ARM64 systems: ChemLocalLink_x.x.x_arm64.deb
  2. Install the package

    Using apt (recommended)

    sudo apt update
    sudo apt install ./ChemLocalLink_x.x.x_amd64.deb
  • The application will be available in your applications menu
  • You can launch from terminal: chemlocallink

System Integration

The Debian package automatically:

  • Installs the application to /usr/lib/ChemLocalLink/
  • Creates a launcher script in /usr/bin/ChemLocalLink
  • Registers the chemotion:// URL protocol handler
  • Adds application icon to system icon themes
  • Updates desktop database and MIME associations

Uninstallation

Windows

  • Open Control Panel
  • Go to Programs > Programs and Features
  • Find "ChemLocalLink" in the list
  • Right-click and select "Uninstall"

Linux (Debian-based)

sudo apt remove chemlocallink

Directory & Data Layout

Application data base path: (OS ApplicationData)/ChemLocalLink

Files created:

  • downloads.json – persisted list of tracked downloads.
  • config.json – app config.
  • theme.json – theme config.

Default persistent download directory:

  • Windows: %USERPROFILE%/Documents/ChemLocalLink
  • macOS: ~/Documents/ChemLocalLink
  • Linux: ~/Documents/ChemLocalLink if it exists, else ~/ChemLocalLink

Structure after processing a deep link (example):

ChemLocalLink/
  Origin/
    project/123/reactions/
      reaction_456.json

Session Export / Import

Archive extension: .chemlocallink

Contents:

manifest.json         // schemaVersion, appVersion, exportedAtUtc, fileCount
downloads.json        // portable metadata (relative file names)
files/                // actual files, preserving subfolder structure

Import rules:

  • Skips entries whose checksum already exists.
  • Recreates needed subdirectories relative to current download root.
  • Adds non‑duplicate files to the top of history and rebuilds groups.

Typical Workflow

  1. User clicks chemotion://... link (or pastes URL) in the app.
  2. App resolves token + deep link path, downloads file to structured directory.
  3. User edits file externally (double‑click to open).
  4. App detects modification (checksum delta → IsEdited = true).
  5. User uploads (single or bulk)
  6. Optionally export session for transfer or backup.

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Commit: git commit -m "feat: add your feature"
  4. Push: git push origin feature/your-feature
  5. Open a Pull Request

Please open issues for bugs, feature requests, or clarifications.

License

MIT License – see LICENSE for full text.

Contact

Chemotion

About

Desktop-based cross-platform application to handle Chemotion ELN files

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •