Skip to main content

goldilocks-core

Goldilocks recommends settings for density functional theory (DFT) calculations and generates Quantum ESPRESSO input files (SCF, DOS, band structure, relaxation, variable-cell relaxation, and phonons with their density of states and dispersion) from a crystal structure.

Installation

Goldilocks needs Python 3.12 or newer. The documentation is at https://stfc.github.io/goldilocks-core/.

Docker

Each release publishes an image that serves the Workbench, the browser interface, with the prediction models and pseudopotential tables already installed:

docker run --rm --publish 127.0.0.1:8000:8000 ghcr.io/stfc/goldilocks-core

Open http://127.0.0.1:8000, upload a CIF or POSCAR, review the recommended settings, and download the generated inputs. Pin a release with its version as the tag, such as ghcr.io/stfc/goldilocks-core:0.3.0. The image is built for x86-64; Docker on Apple silicon runs it under emulation. See HTTP security before exposing it beyond localhost.

pip

For the goldilocks command line:

pip install goldilocks-core
goldilocks assets install default

For the Workbench as well:

pip install "goldilocks-core[http]"
goldilocks assets install all
goldilocks serve http

Then open http://127.0.0.1:8000. The asset step downloads the prediction models and pseudopotential tables; without it, Goldilocks refuses to generate an input until the table it needs is installed.

Goldilocks runs its models on the CPU, but on Linux pip installs PyTorch's CUDA build. Add --extra-index-url https://download.pytorch.org/whl/cpu to pip install for the much smaller CPU-only build.

From source

To work on Goldilocks itself, install uv and, for the Workbench, Node.js 24 or newer. Then run:

git clone https://github.com/stfc/goldilocks-core.git
cd goldilocks-core
uv sync --extra http
npm --prefix web ci
uv run goldilocks assets install all
uv run --extra http poe workbench

Open http://127.0.0.1:5173 for the development servers, or run uv run --extra http poe stage for the built frontend on http://127.0.0.1:8000. The Workbench guide covers the development checks.

Try it from the command line

Generate inputs for the bundled silicon structure (prefix each command with uv run in a clone):

goldilocks run "$(goldilocks examples path)/Si.cif" --out si-run

si-run/ holds scf.in, the pseudopotential and its table's licence, a submission script, goldilocks.json (every setting with what decided it), CITATIONS.md and a README.md on running the bundle on a cluster. Treat the recommended settings as a starting point: review the warnings and check convergence for your calculation. The quickstart explains each file and how to run it.

Guides and reference

Licence

Code: BSD 3-Clause. Documentation under docs/ and example structures: CC BY 4.0. Downloaded pseudopotentials retain their upstream licences.

Metadata

Release files for goldilocks-core 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for goldilocks-core 0.3.1
File Size Uploaded Provenance Actions
goldilocks_core-0.3.1.tar.gz 761.5 kB Without provenance Details for goldilocks_core-0.3.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for goldilocks-core 0.3.1
File Interpreter ABI Platform Actions
goldilocks_core-0.3.1-py3-none-any.whl Python 3 none any Details for goldilocks_core-0.3.1-py3-none-any.whl

Total release size: 1.6 MB

Release files / goldilocks_core-0.3.1.tar.gz

Download URL goldilocks_core-0.3.1.tar.gz
Size 761.5 kB
Tags Source
SHA-256 checksum
How to use checksums
3825d48842981a0314c38a50cfad90adc1ba887eb2987f2d457602e8322a398c
BLAKE2b-256 checksum
How to use checksums
8a00bd6387bb2744f72fa904dd5e37691b2d132b6ddfcee53ffe95c1efadb7bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / goldilocks_core-0.3.1-py3-none-any.whl

Download URL goldilocks_core-0.3.1-py3-none-any.whl
Size 831.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
78fec61ae8e81f2b5ca3d1c2489ef545a4953bf85ba011fa08299459eaa7ec74
BLAKE2b-256 checksum
How to use checksums
3969d8900bcd420c022f0b3a769a421df21172deaa7de3519a3dc60d8a5e1d57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for goldilocks-core 0.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page