sciforge 0.0.2

A comprehensive scientific computing library in pure Rust with zero dependencies
Documentation
# Changelog

All notable changes to SciForge are documented in this file.

## [0.0.2] - 2026-03-24

### Documentation

- Consolidated and normalized documentation under `docs/`
- Structured the documentation into paired guides:
  - `docs/modules/` for scientific model explanations
  - `docs/code/` for source and API explanations
- Updated `docs/Summary.md` to serve as the documentation entry point

### Testing

- Added dedicated scientific validation and scientific property-based suites
- Expanded integration coverage across constants, maths, physics, chemistry, biology, geology, astronomy, meteorology, and Hub workflows
- Added validation artifacts under `output/validation/`

### Astronomy and Hub

- Extended cosmology coverage with direct `E(z)` parameterizations and `H(z)` helpers
- Expanded redshift-distance cosmology utilities and Hub astronomy dispatch integration

### Project Metadata

- Bumped crate version to `0.0.2`
- Updated top-level project documentation to reflect the current version and test architecture

## [0.0.1] - 2026-03-23

### Project Foundation

- Initialized `sciforge` crate (Rust edition 2024, zero external dependencies)
- Established 11-module architecture: `constants`, `maths`, `physics`, `chemistry`, `biology`, `geology`, `astronomy`, `meteorology`, `benchmark`, `parser`, `hub`
- 575 source files, 48 600+ lines of Rust across all modules

### Constants

- Fundamental physical constants (CODATA values)
- Astrophysical constants
- Atomic constants
- Unit conversion factors
- Full periodic table element data (118 elements)

### Mathematics (17 submodules)

- Complex number arithmetic
- Tensor, vector, polynomial types
- Linear algebra and sparse matrix operations
- Non-Euclidean geometry
- Graph theory
- Interpolation and numerical integration
- ODE and PDE solvers
- FFT (Fast Fourier Transform)
- Optimization algorithms
- Statistics and probability distributions
- Signal processing

### Physics (11 submodules)

- Special and general relativity
- Quantum mechanics
- Thermodynamics
- Classical electrodynamics
- Fluid and solid mechanics
- Optics and acoustics
- Nucleosynthesis
- Electronics
- Materials science

### Chemistry (26 submodules)

- Reaction kinetics and chemical equilibrium
- Electrochemistry and thermochemistry
- Molecular and organic/inorganic chemistry
- Analytical and quantum chemistry
- Solutions, gas laws, acid-base equilibria
- Nuclear chemistry and photochemistry
- Polymers, spectroscopy, surface chemistry
- Crystallography and stoichiometry
- Colloids, solid-state, computational chemistry
- Reaction engineering and transport phenomena
- Environmental and green chemistry

### Biology (44 submodules)

- Population dynamics, genetics, genomics, proteomics
- Enzyme kinetics, cell biology, developmental biology
- Neuroscience, pharmacology, immunology
- Ecology, evolution, phylogenetics, ethology
- Biomechanics, biophysics, bioenergetics, biostatistics
- Structural biology, systems biology, synthetic biology
- Epigenetics, bioinformatics, biogeography
- Microbiology, virology, parasitology, mycology
- Endocrinology, physiology, plant biology, chronobiology
- Toxicology, radiobiology, cryobiology, nutrition
- Cancer biology, marine biology, aging, reproduction
- Stem cell biology, bioelectricity, tissue engineering, paleobiology

### Geology (4 submodules)

- Seismology
- Radiometric dating
- Petrology
- Plate tectonics

### Astronomy (4 submodules)

- Orbital mechanics
- Stellar astrophysics
- Cosmology
- Celestial mechanics

### Meteorology (4 submodules)

- Atmospheric modeling
- Radiation transfer
- Atmospheric dynamics
- Precipitation

### Hub

- Central dispatch API with `api`, `domain`, `engine`, `tools` submodules
- Prelude module for ergonomic imports

### Benchmark (6 submodules)

- `engine` — benchmark runner with `BenchmarkMetrics` (iterations, timing, throughput)
- `encode` / `decode` — compact binary `.bmk` format for benchmark results
- `simulation` — deterministic benchmark simulation for all 118 elements
- `report` — JSON, YAML, TOML report generation with tagged metadata
- `export` — multi-format export pipeline:
  - Per-element and aggregate CSV, JSON, YAML, TOML, BMK files
  - Per-category grouped exports
  - Interactive HTML dashboard:
    - IUPAC 2024 periodic table grid (La/Ac in main body, groups 1-18)
    - Dark gradient theme with category-colored element cells
    - Hover zoom, click-to-detail card with full metrics
    - CSV displayed as interactive HTML table
    - SVG chart visualizations (category distribution, timing, top 10 fastest/slowest, statistics)
    - Tabbed file browser for all export formats
    - Legend with gradient swatches
  - Markdown summary report
- 28 tests covering engine, encode/decode roundtrip, simulation, report, and export

### Parser (5 submodules)

- `csv` — CSV reader/writer with configurable delimiters and quoting
- `json` — JSON parser and validator
- `yaml` — YAML parser and validator
- `markdown` — Markdown parser and validator
- `html` — HTML parser and validator
- 66 tests covering parsing, validation, edge cases, and file generation
- Generated sample files: CSV (20 elements), JSON, YAML, Markdown, HTML (dark gradient theme)

### Periodic Table Data

- 118 element data files organized by category under `tableau-periodique/`:
  - Non-metals, noble gases, halogens, metalloids
  - Alkali metals, alkaline earth metals
  - Transition metals, post-transition metals
  - Lanthanides, actinides, superheavy elements

### Testing

- 94 total tests (28 benchmark + 66 parser), all passing
- Zero clippy warnings
- Zero `#[allow]` directives