66![ Lint] ( https://img.shields.io/badge/lint-ruff-D7FF64 )
77![ Typing] ( https://img.shields.io/badge/typing-pyright-2C6BED )
88
9- [ 中文 README] ( ./ README_cn.md) · [ About] ( ./ ABOUT.md) · [ Architecture] ( ./ docs/architecture.md) · [ Locale Policy] ( ./ docs/locale.md) · [ Changelog] ( ./ CHANGELOG.md) · [ Migration Notes] ( . /MIGRATIONS.md)
9+ [ 中文 README] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main/ README_cn.md) · [ About] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main/ ABOUT.md) · [ Architecture] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main/ docs/architecture.md) · [ Locale Policy] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main/ docs/locale.md) · [ Changelog] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main/ CHANGELOG.md) · [ Migration Notes] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /MIGRATIONS.md)
1010
1111ExcelAlchemy is a schema-driven Python library for Excel import and export workflows.
1212It turns Pydantic models into typed workbook contracts: generate templates, validate uploads, map failures back to rows
@@ -16,7 +16,7 @@ This repository is also a design artifact.
1616It documents a series of deliberate engineering choices: ` src/ ` layout, Pydantic v2 migration, pandas removal,
1717pluggable storage, ` uv ` -based workflows, and locale-aware workbook output.
1818
19- The current stable release line is ` 2.0.0 ` , the first public stable release of ExcelAlchemy 2.0.
19+ The current stable release line is ` 2.0.0.post1 ` , the first post-release update to the stable ExcelAlchemy 2.0 line .
2020
2121## At a Glance
2222
@@ -31,7 +31,7 @@ The current stable release line is `2.0.0`, the first public stable release of E
3131
3232| Template | Import Result |
3333| --- | --- |
34- | ![ Excel template screenshot] ( ./ images/portfolio-template-en.png) | ![ Excel import result screenshot] ( . /images/portfolio-import-result-en.png) |
34+ | ![ Excel template screenshot] ( https://raw.githubusercontent.com/RayCarterLab/ExcelAlchemy/main/ images/portfolio-template-en.png) | ![ Excel import result screenshot] ( https://raw.githubusercontent.com/RayCarterLab/ExcelAlchemy/main /images/portfolio-import-result-en.png) |
3535
3636## Minimal Example
3737
@@ -126,7 +126,7 @@ flowchart TD
126126 E --> M[Runtime Error Messages]
127127```
128128
129- See the full breakdown in [ docs/architecture.md] ( . /docs/architecture.md) .
129+ See the full breakdown in [ docs/architecture.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /docs/architecture.md) .
130130
131131## Workflow
132132
@@ -146,7 +146,7 @@ flowchart LR
146146## Design Principles
147147
148148This repository is guided by explicit design principles rather than accidental convenience.
149- The full mapping is in [ ABOUT.md] ( . /ABOUT.md) ; the short version is:
149+ The full mapping is in [ ABOUT.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /ABOUT.md) ; the short version is:
150150
1511511 . Schema first.
1521522 . Explicit metadata over implicit conventions.
@@ -182,7 +182,7 @@ pip install "ExcelAlchemy[minio]"
182182- result workbook column titles
183183- row validation status labels
184184
185- The public locale policy is documented in [ docs/locale.md] ( . /docs/locale.md) .
185+ The public locale policy is documented in [ docs/locale.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /docs/locale.md) .
186186In short:
187187
188188- runtime exceptions are standardized in English
@@ -293,7 +293,7 @@ This repository intentionally records its evolution:
293293- i18n foundation and locale-aware workbook text
294294
295295These are not incidental refactors; they are the story of the codebase.
296- See [ ABOUT.md] ( . /ABOUT.md) for the migration rationale behind each step.
296+ See [ ABOUT.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /ABOUT.md) for the migration rationale behind each step.
297297
298298## Pydantic v1 vs v2
299299
@@ -306,14 +306,14 @@ The short version:
306306| Validation integration | Deep reliance on internals | Adapter + explicit runtime validation |
307307| Upgrade path | Brittle | Layered |
308308
309- More detail is documented in [ ABOUT.md] ( . /ABOUT.md) .
309+ More detail is documented in [ ABOUT.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /ABOUT.md) .
310310
311311## Docs Map
312312
313- - [ README.md] ( . /README.md) : product + design overview
314- - [ README_cn.md] ( . /README_cn.md) : Chinese usage-oriented guide
315- - [ ABOUT.md] ( . /ABOUT.md) : engineering rationale and evolution notes
316- - [ docs/architecture.md] ( . /docs/architecture.md) : component map and boundaries
313+ - [ README.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /README.md) : product + design overview
314+ - [ README_cn.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /README_cn.md) : Chinese usage-oriented guide
315+ - [ ABOUT.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /ABOUT.md) : engineering rationale and evolution notes
316+ - [ docs/architecture.md] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /docs/architecture.md) : component map and boundaries
317317
318318## Development
319319
@@ -330,4 +330,4 @@ uv build
330330
331331## License
332332
333- MIT. See [ LICENSE] ( . /LICENSE) .
333+ MIT. See [ LICENSE] ( https://github.com/RayCarterLab/ExcelAlchemy/blob/main /LICENSE) .
0 commit comments