Skip to main content

Claude Code plugin for coloured gemstone expertise and crystal visualization

Project description

Gemmology Plugin

A Claude Code plugin for coloured gemstone expertise and crystal visualization.

Part of the Gemmology Project.

Features

  • Crystal Visualization: Generate SVG, STL, and glTF visualizations of crystal structures
  • Mineral Database: Access FGA-curriculum aligned gemstone data for 50+ minerals
  • CDL Parser: Parse and validate Crystal Description Language notation
  • Gem Identification: Interactive workflow for systematic gemstone identification

Installation

pip install gemmology-plugin

This installs the core plugin along with all component packages:

  • cdl-parser - Crystal Description Language parser
  • mineral-database - Gemstone property database
  • crystal-geometry - 3D crystal geometry engine
  • crystal-renderer - SVG/STL/glTF visualization

Optional: Language Server

For editor integration with CDL syntax highlighting and completion:

pip install gemmology-plugin[lsp]

Quick Start

Command Line

# Generate crystal visualization
gemmology crystal-svg --preset diamond -o diamond.svg

# List available presets
gemmology list-presets

# Get mineral information
gemmology info ruby

Python API

from gemmology_plugin import generate_crystal_svg, get_preset

# Generate from CDL notation
svg = generate_crystal_svg("cubic[m3m]:{111}@1.0 + {100}@1.3")

# Generate from preset
ruby = get_preset("ruby")
svg = generate_crystal_svg(ruby['cdl'], info_properties={'name': ruby['name']})

Claude Code Plugin

When used as a Claude Code plugin, this package provides:

Commands

  • /crystal-svg - Generate crystal structure visualizations
  • /identify-gem - Interactive gemstone identification workflow

Agents

Expert agents for domain-specific tasks:

  • crystallography-expert - Crystal systems, symmetry, Miller indices
  • gemmology-expert - Gemstone properties, FGA data
  • cdl-expert - CDL syntax and parsing

Skills

Reference skills covering FGA curriculum topics:

  • Physical properties (hardness, SG, cleavage)
  • Optical properties (RI, birefringence, dispersion)
  • Inclusions and fingerprints
  • Treatments and enhancements
  • Synthetics and simulants
  • Origin determination

CDL Syntax Overview

Crystal Description Language (CDL) provides precise control over crystal morphology:

system[point_group]:{form}@distance + {form}@distance

Examples:

cubic[m3m]:{111}                    # Octahedron
cubic[m3m]:{111}@1.0 + {100}@1.3    # Truncated octahedron
trigonal[-3m]:{10-10}@1.0 + {0001}@0.5  # Quartz prism

Component Packages

This plugin integrates:

Package Description
cdl-parser CDL parsing and validation
mineral-database Gemstone property database
crystal-geometry 3D geometry generation
crystal-renderer Visualization and export
cdl-lsp Language server (optional)

Development

git clone https://github.com/gemmology-dev/gemmology-plugin
cd gemmology-plugin
pip install -e ".[dev]"
pytest tests/ -v

License

MIT License - see LICENSE for details.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gemmology_plugin-1.0.1.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gemmology_plugin-1.0.1-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file gemmology_plugin-1.0.1.tar.gz.

File metadata

  • Download URL: gemmology_plugin-1.0.1.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gemmology_plugin-1.0.1.tar.gz
Algorithm Hash digest
SHA256 27748d2cd444c64998ea1ebc6eb2c728726f02ec7ba576f1c244d884feee56e7
MD5 43e1cbf97b8574d36fab50d6777a54c0
BLAKE2b-256 72c6fe988c5fc3431e8b08c9d5a4caee7d2306d688b07b8b462cd2279367c3d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for gemmology_plugin-1.0.1.tar.gz:

Publisher: pypi-publish.yml on gemmology-dev/gemmology-plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gemmology_plugin-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for gemmology_plugin-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 917fe87c07e242058aa6665432ea231a98b9a127d9e919a6498a9f683ccc30ee
MD5 1b710b33504f4e4366de40392ab15487
BLAKE2b-256 6976df45859b875769bedd74828fb6d462d887fa68e10b0c4b9e4f0e9c9b843c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gemmology_plugin-1.0.1-py3-none-any.whl:

Publisher: pypi-publish.yml on gemmology-dev/gemmology-plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page