Skip to main content

A Python library for parsing XRD pattern files

Project description

Geddes

Crates.io PyPI npm

A Rust XRD pattern parser with Python and Node.js bindings. Supports:

  • .raw (GSAS text or Bruker binary)
  • .rasx (Rigaku Zip archive)
  • .xrdml (Panalytical XML)
  • .xy / .xye (Space-separated ASCII)
  • .csv (Comma-separated values)

Rust Usage

Load from a file path:

use geddes::read;

fn main() {
    let pattern = read("tests/data/xy/sample.xy").unwrap();
    println!("{} {}", pattern.x.len(), pattern.y.len());
}

Load from in-memory bytes (filename is used to infer the format):

use std::fs;

use geddes::read_bytes;

fn main() {
    let data = fs::read("tests/data/xy/sample.xy").unwrap();
    let pattern = read_bytes(&data, "sample.xy").unwrap();
    println!("{} {}", pattern.x.len(), pattern.y.len());
}

Python Usage

Load from a file path:

import geddes

pattern = geddes.read("tests/data/xy/sample.xy")
print(len(pattern.x), len(pattern.y))

Load from in-memory bytes (filename is used to infer the format):

import geddes

with open("tests/data/xy/sample.xy", "rb") as f:
    data = f.read()

pattern = geddes.read_bytes(data, "sample.xy")
print(len(pattern.x), len(pattern.y))

Node.js Usage

Load from a file path:

const geddes = require('@jcwang587/geddes')

const pattern = geddes.read('tests/data/xy/sample.xy')
console.log(pattern.x.length, pattern.y.length)

Load from in-memory bytes (filename is used to infer the format):

const fs = require('node:fs')
const geddes = require('@jcwang587/geddes')

const bytes = fs.readFileSync('tests/data/xy/sample.xy')
const pattern = geddes.readBytes(bytes, 'sample.xy')
console.log(pattern.x.length, pattern.y.length)

License

MIT

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

geddes-0.3.0a1.tar.gz (214.5 kB view details)

Uploaded Source

Built Distributions

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

geddes-0.3.0a1-cp314-cp314-win_amd64.whl (314.2 kB view details)

Uploaded CPython 3.14Windows x86-64

geddes-0.3.0a1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (464.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

geddes-0.3.0a1-cp314-cp314-macosx_11_0_arm64.whl (413.4 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

geddes-0.3.0a1-cp313-cp313-win_amd64.whl (314.2 kB view details)

Uploaded CPython 3.13Windows x86-64

geddes-0.3.0a1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (463.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

geddes-0.3.0a1-cp313-cp313-macosx_11_0_arm64.whl (413.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

geddes-0.3.0a1-cp312-cp312-win_amd64.whl (314.1 kB view details)

Uploaded CPython 3.12Windows x86-64

geddes-0.3.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (464.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

geddes-0.3.0a1-cp312-cp312-macosx_11_0_arm64.whl (413.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

geddes-0.3.0a1-cp311-cp311-win_amd64.whl (316.1 kB view details)

Uploaded CPython 3.11Windows x86-64

geddes-0.3.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (467.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

geddes-0.3.0a1-cp311-cp311-macosx_11_0_arm64.whl (415.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

geddes-0.3.0a1-cp310-cp310-win_amd64.whl (316.0 kB view details)

Uploaded CPython 3.10Windows x86-64

geddes-0.3.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (467.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

geddes-0.3.0a1-cp310-cp310-macosx_11_0_arm64.whl (415.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file geddes-0.3.0a1.tar.gz.

File metadata

  • Download URL: geddes-0.3.0a1.tar.gz
  • Upload date:
  • Size: 214.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for geddes-0.3.0a1.tar.gz
Algorithm Hash digest
SHA256 bedd5ab3b3d7702d5619d5da70751a5aec5ae9bae973cc69db807988624305a0
MD5 2a2aa6786b35d057e64a8135dbccaf2b
BLAKE2b-256 0e36eac197cf893cd23de4c5b900f202f41fba17c661175f6c2a8b4ebcca3b73

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1.tar.gz:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: geddes-0.3.0a1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 314.2 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for geddes-0.3.0a1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 601d7fe160da014132ca6f2d038febfc3deb9ab1e60f277a1308d4fb9b5de9a1
MD5 74ac2c5bf5456ae1ce1cc917d2d11fc8
BLAKE2b-256 b33ad7100d2e74917d6d7b486bab9e1e550dceec4baec1f9f04a2a830702730b

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp314-cp314-win_amd64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 981ed74c0165f63e62acbbb94e201ea053877bac81180f628d9530bbbb45fff6
MD5 bd9a26cec771ef962100cbd49077c8f1
BLAKE2b-256 d2d5a4a22462fcf0fcd6a458eb57999aae5793243b7cccdb9d0cd51d0f473196

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab391f9650db4b1c79df07fdcaf9b885c55bf0f9c21255da1d89a30f5d406a14
MD5 0c156142de12bc301cac308251ec1a96
BLAKE2b-256 4acf685f93f4cf28ab134e4623f1780d76201065afa93a55bda4b2b512722e3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: geddes-0.3.0a1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 314.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for geddes-0.3.0a1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e5863beaa58f4cbeae0313c787fe821177c487a058a55baf199687af23319790
MD5 54a975bbfee6b6fdee7855a949773eb7
BLAKE2b-256 03b0fba060638a40052a191c62cb564f6978aa0d28eae07bf79ec05aadc0cce5

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp313-cp313-win_amd64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2eb3d2bb0648bbaeae27224d3735e2db72fa1f0529707c070855e4f0d216dffd
MD5 850e61220785991419ff2a2678842c3a
BLAKE2b-256 4812b8fe426a6b3800cde6af8f72c20dc4ebc73b474b0d582198cd6afebdd33e

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1021a24a3d3e231bff480397a294969a5656dcd43cd725e5e730735873e1f782
MD5 d8cf92256027cc6ed638ab407b941074
BLAKE2b-256 094f9b3c9cd5d620b525e71976b644a9b7856cebe928d6885df80a5c424184f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: geddes-0.3.0a1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 314.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for geddes-0.3.0a1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d31422b953c0686e40d3bc5a420bc099a70ff9f6efba6af04ffbfbf869e51d57
MD5 57c8ba03ce0cdc9bbf619275cb1029c2
BLAKE2b-256 e77dcd47edce553bc461f09e877afe005190e5c9a3ec01f4b229f07fe249d765

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp312-cp312-win_amd64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 28d4e5f520166287bfefdcf6813b4734fce4b7f23a690c7aee31f58c277368c6
MD5 4c832ce6b3ff4b737c22ef4793f25973
BLAKE2b-256 05e1f5f56680e0b1701635306879c4a508a189c9dea0d0f776602fdf52504e9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a9d26cc5e5bee07b8967705c7eff816282cc24aec2c3eb4939ff1237a21a99f9
MD5 fd0bf4ef3bf383e002e1065555d1f690
BLAKE2b-256 3351e8d4640d28fb17b984486ce046d39bc24ece572db92475d3e73ad1c9b9af

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: geddes-0.3.0a1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 316.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for geddes-0.3.0a1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e73ceff55e5094777b84f473c466728a7180f7adc6f3577d1302d28e8bd664fc
MD5 5855894b3b1effce7bff26912402f1c8
BLAKE2b-256 312c32d0c3e9a238c17367fff5c4a5d74e2f1d800ac3303c5a886f262bc61635

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp311-cp311-win_amd64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 69e5c1446bde5d01a4bf0d5e8bcad70a9084c2d0bec0b51e6ef1c27f14b91fa0
MD5 8c72275a2074cbd161b03bdf814bbe68
BLAKE2b-256 4cf28eaf3c64099938bc346c3ed588abe0700b2fdfe8c26bd175155a031a16b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc3ae63005cfcca5eb1bb786cddcf885c5ad0f17721c144c373d593d3d5fcee3
MD5 ab6349459951675e72b6ba6236fe809a
BLAKE2b-256 aca1861fba4a3c1ef987151d3f88146a128cb45f45dd48188653836c5ddc3b54

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: geddes-0.3.0a1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 316.0 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for geddes-0.3.0a1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 febb4611967d8c423b11a640e9e0a3d2ed78ceedccd49bf7cb0b1ee47c8a3e83
MD5 30afc42e1785fe3ddf904a165659b712
BLAKE2b-256 025c44ae9fb11fd74ba8083c21ffcec92b53ea8ff0a3f7e2f49cf45d51d5c309

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp310-cp310-win_amd64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 60bc0ed834780c78f01d51ec232f0e04e330a46b29c77142dc1f2339595e872b
MD5 4a3057b5b21845930b52b8bac1b21566
BLAKE2b-256 76a8cbb37553aee383b73154f44ea0f9e7b180fbd3eefe0ccb50eae46fc5e0ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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

File details

Details for the file geddes-0.3.0a1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for geddes-0.3.0a1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7813d43d1fd2fe8587dbc52ec420e939272cd122f6d0cbdda4c7a1adcf899313
MD5 9799b07f4e86c5792ef783cf433852fb
BLAKE2b-256 718ccacb9be4b569d445123036519f1da05326415a18e59143036816a4b27d03

See more details on using hashes here.

Provenance

The following attestation bundles were made for geddes-0.3.0a1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on jcwang587/geddes

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