SkillAgentSearch skills...

ChemSharp

Library for processing of chemistry related files (aiming at spectroscopy and structural files)

Install / Use

/learn @JensKrumsieck/ChemSharp

README

<p align="center"> <img src="https://raw.githubusercontent.com/JensKrumsieck/ChemSharp/master/icon.png" height="125px" /></p> <h1 align="center" >ChemSharp</h1> <h3 align="center">.NET Library for processing of chemistry related files. Powers <a href="https://github.com/JensKrumsieck/PorphyStruct">PorphyStruct</a>!</h3>

Maintainability .NET GitHub issues GitHub commit activity GitHub license GitHub tag (latest by date)

<hr/>

NuGet Packages

| | | |-|-| | ChemSharp | NuGet Badge | | ChemSharp.Molecules | NuGet Badge | | ChemSharp.Molecules.Blazor | NuGet Badge | | ChemSharp.Molecules.HelixToolkit | NuGet Badge | | ChemSharp.Spectroscopy | NuGet Badge | |ChemSharp.UnitConversion | NuGet Badge |

<sup>CI Releases at: <a href="https://github.com/JensKrumsieck/ChemSharp/packages/">GitHub Packages</a> </sup>

Features

  • Open and process Molecular files (see Supported Filetypes)
  • Sum formula operations and elemental analysis calculation
  • Using Elemental Data from https://github.com/JensKrumsieck/periodic-table
  • Blazor view for molecules using three.js
  • Open and process Spectroscopy related files (see Supported Filetypes)
  • Unit Conversion for (Energy, Magnetic Units, Mass)

Basic Usage

Create Molecules

Molecules can be created in a lot of ways. The easiest way is to use MoleculeFactory.Create, which accepts a string path.

//Creates a molecule from cif file
const string path = "files/cif.cif";
var mol = Molecule.FromFile(path);

Create Spectra

Spectra can be created by using the Spectrum.FromFile Method.

//Creates an UV/Vis Spectrum
const string path = "files/uvvis.dsw";
var uvvis = Spectrum.FromFile(path);

Supported Filetypes

  • Molecule

    • Import (XYZ, CIF (crystallographic information file, CCDC), MOL2 (TRIPOS Mol2), PDB (Protein Data Bank file), MOL (MDL MOL, ChemSpider), CDXML (Single Molecule only, 2D))
    • Export (XYZ, MOL2)
  • Spectroscopy

    • Import (Varian/Agilient DSW, Bruker EMX SPC/PAR, Bruker TopSpin (fid, (1r/1i processed spectra), JCAMP-DX ( acqus, procs, ...)), CSV)
    • Export (CSV)

Used Libraries:

Compatibility

  • .NET Standard 2.0, .NET Standard 2.1, .NET 5, .NET 6
  • Blazor (see ChemSharp.Molecules.Blazor)
  • <a href="https://github.com/JensKrumsieck/ChemSharp/wiki/Use-with-HelixToolkit-(WPF)">HelixToolkit</a> via ChemSharp.Molecules.HelixToolkit
  • Unity (see https://github.com/JensKrumsieck/ChemSharpUnityExample)

Used by (Highlights):

  • <img src="https://github.com/JensKrumsieck/PorphyStruct/blob/master/PorphyStruct.WPF/Resources/porphystruct.png" alt="logo" height="16"/> PorphyStruct
  • <img src="https://raw.githubusercontent.com/JensKrumsieck/CHN-Tool/master/.github/chn.png" alt="logo" height="16"/> CHN-Tool

Stats

Alt

Related Skills

View on GitHub
GitHub Stars17
CategoryProduct
Updated2mo ago
Forks6

Languages

C#

Security Score

95/100

Audited on Jan 21, 2026

No findings