markitecture 0.2.3__tar.gz → 0.2.32__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. {markitecture-0.2.3 → markitecture-0.2.32}/.gitignore +3 -5
  2. {markitecture-0.2.3 → markitecture-0.2.32}/Makefile +46 -42
  3. {markitecture-0.2.3 → markitecture-0.2.32}/PKG-INFO +43 -25
  4. {markitecture-0.2.3 → markitecture-0.2.32}/README.md +41 -23
  5. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/line.svg +4 -4
  6. markitecture-0.2.32/docs/assets/logo.svg +40 -0
  7. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/shield.svg +4 -4
  8. {markitecture-0.2.3 → markitecture-0.2.32}/pyproject.toml +5 -9
  9. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/__init__.py +1 -4
  10. markitecture-0.2.32/src/markitecture/version.py +1 -0
  11. {markitecture-0.2.3 → markitecture-0.2.32}/.ruff.toml +0 -0
  12. {markitecture-0.2.3 → markitecture-0.2.32}/CONTRIBUTING.md +0 -0
  13. {markitecture-0.2.3 → markitecture-0.2.32}/LICENSE +0 -0
  14. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/badges/compact.svg +0 -0
  15. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/badges/detailed.svg +0 -0
  16. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/badges/minimal.svg +0 -0
  17. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/badges/modern.svg +0 -0
  18. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/badges/retro.svg +0 -0
  19. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/badges/shields.svg +0 -0
  20. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/buttons/rectangle.svg +0 -0
  21. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/buttons/vesica-piscis.svg +0 -0
  22. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/callouts/designs.svg +0 -0
  23. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/callouts/info.svg +0 -0
  24. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/cookbooks/examples.mdx +0 -0
  25. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/favicon.svg +0 -0
  26. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/logos/circle-dark.svg +0 -0
  27. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/logos/circle-light.svg +0 -0
  28. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/logos/logo-box.svg +0 -0
  29. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/logos/logo-rectangle.svg +0 -0
  30. {markitecture-0.2.3 → markitecture-0.2.32}/docs/assets/logos/logo.svg +0 -0
  31. {markitecture-0.2.3 → markitecture-0.2.32}/docs/community.mdx +0 -0
  32. {markitecture-0.2.3 → markitecture-0.2.32}/docs/features/content-analysis.mdx +0 -0
  33. {markitecture-0.2.3 → markitecture-0.2.32}/docs/features/health-score.mdx +0 -0
  34. {markitecture-0.2.3 → markitecture-0.2.32}/docs/features/link-management.mdx +0 -0
  35. {markitecture-0.2.3 → markitecture-0.2.32}/docs/features/static-site-generation.mdx +0 -0
  36. {markitecture-0.2.3 → markitecture-0.2.32}/docs/features/text-splitting.mdx +0 -0
  37. {markitecture-0.2.3 → markitecture-0.2.32}/docs/guides/api-reference.mdx +0 -0
  38. {markitecture-0.2.3 → markitecture-0.2.32}/docs/guides/cli-reference.mdx +0 -0
  39. {markitecture-0.2.3 → markitecture-0.2.32}/docs/guides/configuration.mdx +0 -0
  40. {markitecture-0.2.3 → markitecture-0.2.32}/docs/guides/installation.mdx +0 -0
  41. {markitecture-0.2.3 → markitecture-0.2.32}/docs/guides/quickstart.mdx +0 -0
  42. {markitecture-0.2.3 → markitecture-0.2.32}/docs/index.mdx +0 -0
  43. {markitecture-0.2.3 → markitecture-0.2.32}/docs/mint.json +0 -0
  44. {markitecture-0.2.3 → markitecture-0.2.32}/docs/philosophy.mdx +0 -0
  45. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/__main__.py +0 -0
  46. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/__init__.py +0 -0
  47. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/app.py +0 -0
  48. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/commands/__init__.py +0 -0
  49. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/commands/config.py +0 -0
  50. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/commands/links.py +0 -0
  51. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/commands/metrics.py +0 -0
  52. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/commands/mkdocs.py +0 -0
  53. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/cli/commands/split.py +0 -0
  54. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/errors.py +0 -0
  55. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/generators/__init__.py +0 -0
  56. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/generators/configs/__init__.py +0 -0
  57. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/generators/configs/mintlify_json.py +0 -0
  58. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/generators/configs/mkdocs_yaml.py +0 -0
  59. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/__init__.py +0 -0
  60. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/analyzer.py +0 -0
  61. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/__init__.py +0 -0
  62. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/base.py +0 -0
  63. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/compact.py +0 -0
  64. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/detailed.py +0 -0
  65. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/minimal.py +0 -0
  66. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/modern.py +0 -0
  67. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/retro.py +0 -0
  68. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/badges/shields.py +0 -0
  69. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/metrics/svg_generator.py +0 -0
  70. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/processing/__init__.py +0 -0
  71. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/processing/link_validator.py +0 -0
  72. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/processing/reflink_converter.py +0 -0
  73. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/processing/reflink_extractor.py +0 -0
  74. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/processing/text_splitter.py +0 -0
  75. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/settings/__init__.py +0 -0
  76. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/settings/config.py +0 -0
  77. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/settings/validators.py +0 -0
  78. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/utils/__init__.py +0 -0
  79. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/utils/file_handler.py +0 -0
  80. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/utils/printer.py +0 -0
  81. {markitecture-0.2.3 → markitecture-0.2.32}/src/markitecture/utils/sanitizer.py +0 -0
  82. {markitecture-0.2.3 → markitecture-0.2.32}/tests/__init__.py +0 -0
  83. {markitecture-0.2.3 → markitecture-0.2.32}/tests/cli/__init__.py +0 -0
  84. {markitecture-0.2.3 → markitecture-0.2.32}/tests/cli/commands/__init__.py +0 -0
  85. {markitecture-0.2.3 → markitecture-0.2.32}/tests/cli/test_app.py +0 -0
  86. {markitecture-0.2.3 → markitecture-0.2.32}/tests/conftest.py +0 -0
  87. {markitecture-0.2.3 → markitecture-0.2.32}/tests/data/mistletoe.md +0 -0
  88. {markitecture-0.2.3 → markitecture-0.2.32}/tests/data/pydantic.md +0 -0
  89. {markitecture-0.2.3 → markitecture-0.2.32}/tests/data/readme-ai.html +0 -0
  90. {markitecture-0.2.3 → markitecture-0.2.32}/tests/data/readme-ai.md +0 -0
  91. {markitecture-0.2.3 → markitecture-0.2.32}/tests/generators/__init__.py +0 -0
  92. {markitecture-0.2.3 → markitecture-0.2.32}/tests/metrics/__init__.py +0 -0
  93. {markitecture-0.2.3 → markitecture-0.2.32}/tests/metrics/test_analyzer.py +0 -0
  94. {markitecture-0.2.3 → markitecture-0.2.32}/tests/metrics/test_svg_generator.py +0 -0
  95. {markitecture-0.2.3 → markitecture-0.2.32}/tests/processing/__init__.py +0 -0
  96. {markitecture-0.2.3 → markitecture-0.2.32}/tests/processing/test_link_validator.py +0 -0
  97. {markitecture-0.2.3 → markitecture-0.2.32}/tests/processing/test_reflink_converter.py +0 -0
  98. {markitecture-0.2.3 → markitecture-0.2.32}/tests/settings/__init__.py +0 -0
  99. {markitecture-0.2.3 → markitecture-0.2.32}/tests/settings/test_validators.py +0 -0
  100. {markitecture-0.2.3 → markitecture-0.2.32}/tests/test_validators.py +0 -0
  101. {markitecture-0.2.3 → markitecture-0.2.32}/tests/utils/__init__.py +0 -0
  102. {markitecture-0.2.3 → markitecture-0.2.32}/tests/utils/test_sanitizer.py +0 -0
  103. {markitecture-0.2.3 → markitecture-0.2.32}/uv.lock +0 -0
@@ -33,10 +33,8 @@ ENV/
33
33
  .ruff_cache/
34
34
  .reports/
35
35
  site/
36
- .continuerules
37
36
 
38
- # -- Markitect ---------
37
+ # Markitecture
38
+ .continuerules
39
39
  markitect.yml
40
- .markitecture/
41
- notebooks/
42
- .github/workflows/tag-version.yml
40
+ docs/mkdocs/
@@ -7,17 +7,40 @@ MAKEFLAGS += --no-builtin-rules
7
7
 
8
8
  DOCS_DIR := docs
9
9
  PYPROJECT_TOML := pyproject.toml
10
- PYPI_VERSION := 0.2.3
10
+ PYPI_VERSION := 0.2.31
11
11
  PYTHON_VERSION := 3.11
12
12
  TARGET := src/markitecture
13
13
  TARGET_TEST := tests
14
- TEST_DATA := tests/data/readme-ai.md
15
14
 
15
+ # -------------------------
16
+ # Repository Cleanup
17
+ # -------------------------
18
+
19
+ clean: clean-build clean-pyc clean-test ## Remove all build, test, coverage, and Python artifacts
20
+
21
+ clean-build: ## Remove build artifacts
22
+ rm -fr build/
23
+ rm -fr dist/
24
+ rm -fr .eggs/
25
+ find . -name '*.egg-info' -exec rm -fr {} +
26
+ find . -name '*.egg' -exec rm -f {} +
27
+
28
+ clean-pyc: ## Remove Python file artifacts
29
+ find . -name '*.pyc' -exec rm -f {} +
30
+ find . -name '*.pyo' -exec rm -f {} +
31
+ find . -name '*~' -exec rm -f {} +
32
+ find . -name '__pycache__' -exec rm -fr {} +
33
+
34
+ clean-test: ## Remove test and coverage artifacts
35
+ rm -fr .tox/
36
+ rm -f .coverage
37
+ rm -fr htmlcov/
38
+ rm -fr .pytest_cache
16
39
 
17
- # -------------------------------------------------------------------
18
- # Build: Build the distribution package using uv
19
- # -------------------------------------------------------------------
20
40
 
41
+ # -------------------------
42
+ # Development Environment
43
+ # -------------------------
21
44
 
22
45
  .PHONY: build
23
46
  build: ## Build the distribution package using uv
@@ -50,18 +73,18 @@ venv: ## Create a virtual environment
50
73
  uv venv --python $(PYTHON_VERSION)
51
74
 
52
75
 
53
- # -------------------------------------------------------------------
54
- # Documenation: Build and serve static site using MkDocs
55
- # -------------------------------------------------------------------
76
+ # -------------------------
77
+ # Documentation
78
+ # -------------------------
56
79
 
57
80
  .PHONY: docs
58
81
  docs: ## Serve mintlify documentation locally
59
82
  cd $(DOCS_DIR) && npx mintlify dev --verbose
60
83
 
61
84
 
62
- # -------------------------------------------------------------------
63
- # Format & Lint: Format and lint Python files using Ruff and MyPy
64
- # -------------------------------------------------------------------
85
+ # -------------------------
86
+ # Format & Lint
87
+ # -------------------------
65
88
 
66
89
 
67
90
  .PHONY: format-toml
@@ -90,20 +113,20 @@ typecheck-pyright: ## Type-check Python files using Pyright
90
113
  uv run pyright $(TARGET)
91
114
 
92
115
 
93
- # -------------------------------------------------------------------
94
- # Tests: Run test suite using Pytest
95
- # -------------------------------------------------------------------
96
-
116
+ # -------------------------
117
+ # Tests
118
+ # -------------------------
97
119
 
98
120
  .PHONY: test
99
121
  test: ## Run test suite using Pytest
100
122
  uv run pytest $(TARGET_TEST) --config-file $(PYPROJECT_TOML)
101
123
 
102
124
 
103
- # -------------------------------------------------------------------
104
- # Examples: Batch run CLI examples for documentation and testing
105
- # -------------------------------------------------------------------
125
+ # -------------------------
126
+ # CLI Batch Testing
127
+ # -------------------------
106
128
 
129
+ TEST_DATA := tests/data/readme-ai.md
107
130
 
108
131
  .PHONY: run-examples
109
132
  run-examples: ## Run examples for documentation and testing
@@ -134,32 +157,13 @@ run-pypi: ## Run examples for documentation
134
157
  uvx --from markitecture --isolated markitect --metrics.input $HOME/Projects/GitHub/readme-ai/README.md --metrics.style all --metrics.output-dir markitet_badges
135
158
 
136
159
 
137
- # -------------------------------------------------------------------
138
- # Utils: Commands for cleaning up and managing the project
139
- # -------------------------------------------------------------------
140
-
141
-
142
- clean: clean-build clean-pyc clean-test ## remove all build, test, coverage and Python artifacts
143
-
144
- clean-build: ## remove build artifacts
145
- rm -fr build/
146
- rm -fr dist/
147
- rm -fr .eggs/
148
- rm -fr .venv/
149
- find . -name '*.egg-info' -exec rm -fr {} +
150
- find . -name '*.egg' -exec rm -f {} +
160
+ # -------------------------
161
+ # Utils
162
+ # -------------------------
151
163
 
152
- clean-pyc: ## remove Python file artifacts
153
- find . -name '*.pyc' -exec rm -f {} +
154
- find . -name '*.pyo' -exec rm -f {} +
155
- find . -name '*~' -exec rm -f {} +
156
- find . -name '__pycache__' -exec rm -fr {} +
164
+ bump-version:
165
+ python scripts/bump_version.py src/markitecture/version.py patch
157
166
 
158
- clean-test: ## remove test and coverage artifacts
159
- rm -fr .tox/
160
- rm -f .coverage
161
- rm -fr htmlcov/
162
- rm -fr .pytest_cache
163
167
 
164
168
  .PHONY: help
165
169
  help: ## Display this help
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: markitecture
3
- Version: 0.2.3
4
- Summary: Markdown tools for modular and flexible docs: link validation, reference link conversion, text splitting, & more.
3
+ Version: 0.2.32
4
+ Summary: Markdown tools for modular workflows and content management.
5
5
  Project-URL: documentation, https://github.com/eli64s/markitecture/blob/main/README.md
6
6
  Project-URL: homepage, https://github.com/eli64s/markitecture
7
7
  Project-URL: repository, https://github.com/eli64s/markitecture
@@ -33,49 +33,64 @@ Requires-Dist: rich
33
33
  Requires-Dist: toml; python_full_version < '3.11'
34
34
  Description-Content-Type: text/markdown
35
35
 
36
- <div id="top" align="center">
36
+ <div align="center" id="top">
37
37
 
38
- <!-- HEADER -->
39
38
  <picture>
40
- <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/eli64s/markitecture/13c4b28213fb8e8c75299ef5c905ce1d195a6988/docs/assets/logos/circle-dark.svg">
41
- <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/eli64s/markitecture/13c4b28213fb8e8c75299ef5c905ce1d195a6988/docs/assets/logos/circle-light.svg">
42
- <img alt="markitecture Logo" src="https://raw.githubusercontent.com/eli64s/markitecture/13c4b28213fb8e8c75299ef5c905ce1d195a6988/docs/assets/logos/circle-light.svg" width="900" style="max-width: 100%;">
39
+ <source media="(prefers-color-scheme: dark)" srcset="/assets/logo.svg">
40
+ <source media="(prefers-color-scheme: light)" srcset="/assets/logo.svg">
41
+ <img alt="Markitecture Logo" src="/assets/logo.svg" width="900" style="max-width: 100%;">
43
42
  </picture>
44
43
 
45
- <h3 align="center">
46
- The Architecture of Better Documentation.
47
- </h3>
44
+ <h1>Markitecture</h1>
45
+
46
+ The Architecture of Better Documentation.
47
+
48
48
  <p align="center">
49
- <em>Markitecture: The Python toolkit that empowers modular Markdown workflows.</em>
49
+ <em>Tools for modular Markdown workflows and content management.</em>
50
50
  </p>
51
51
 
52
- <!-- BADGES -->
52
+ <!-- SHIELD GROUP -->
53
53
  <div align="center">
54
54
  <p align="center" style="margin-bottom: 20px;">
55
55
  <a href="https://github.com/eli64s/markitecture/actions">
56
56
  <img src="https://img.shields.io/github/actions/workflow/status/eli64s/markitecture/ci.yml?label=CI&style=flat&logo=githubactions&logoColor=white&labelColor=2A2A2A&color=FFD700" alt="GitHub Actions" />
57
57
  </a>
58
58
  <a href="https://app.codecov.io/gh/eli64s/markitecture">
59
- <img src="https://img.shields.io/codecov/c/github/eli64s/markitecture?label=Coverage&style=flat&logo=codecov&logoColor=white&labelColor=2A2A2A&color=3fe1c0" alt="Coverage" />
59
+ <img src="https://img.shields.io/codecov/c/github/eli64s/markitecture?label=Coverage&style=flat&logo=codecov&logoColor=white&labelColor=2A2A2A&color=00E5FF" alt="Coverage" />
60
60
  </a>
61
61
  <a href="https://pypi.org/project/markitecture/">
62
- <img src="https://img.shields.io/pypi/v/markitecture?label=PyPI&style=flat&logo=pypi&logoColor=white&labelColor=2A2A2A&color=00E5FF" alt="PyPI Version" />
62
+ <img src="https://img.shields.io/pypi/v/markitecture?label=PyPI&style=flat&logo=pypi&logoColor=white&labelColor=2A2A2A&color=7934C5" alt="PyPI Version" />
63
63
  </a>
64
+ <!--
64
65
  <a href="https://github.com/eli64s/markitecture">
65
66
  <img src="https://img.shields.io/pypi/pyversions/markitecture?label=Python&style=flat&logo=python&logoColor=white&labelColor=2A2A2A&color=7934C5" alt="Python Version" />
66
67
  </a>
68
+ -->
67
69
  <a href="https://opensource.org/license/mit/">
68
70
  <img src="https://img.shields.io/github/license/eli64s/markitecture?label=License&style=flat&logo=opensourceinitiative&logoColor=white&labelColor=2A2A2A&color=FF00FF" alt="MIT License">
69
71
  </a>
70
72
  </p>
71
73
  </div>
72
74
 
75
+ [Documentation][markitecture] · [Contribute][markitecture] · [Report Bug][github-issues] · [Request Feature][github-issues]
76
+
77
+ <!--
78
+ <details>
79
+ <summary><kbd>Table of contents</kbd></summary>
80
+
81
+ - [Installation](https://github.com/eli64s/markitecture/tree/main/#installation)
82
+ - [Usage](https://github.com/eli64s/markitecture/tree/main/#using-the-cli)
83
+ - [Contributing](https://github.com/eli64s/markitecture/tree/main/#contributing)
84
+ - [License](https://github.com/eli64s/markitecture/tree/main/#license)
85
+
86
+ </details>
87
+ -->
88
+
73
89
  <div align="center">
74
90
  <img src="https://raw.githubusercontent.com/eli64s/markitecture/216a92894e6f30c707a214fad5a5fba417e3bc39/docs/assets/line.svg" alt="separator" width="100%" height="2px" style="margin: 20px 0;">
75
91
  </div>
76
92
 
77
93
  </div>
78
- <!-- HEADER END -->
79
94
 
80
95
  ## What is Markitecture?
81
96
 
@@ -236,36 +251,39 @@ Contributions are welcome! Whether it's bug reports, feature requests, or code c
236
251
 
237
252
  ## License
238
253
 
254
+ Copyright &copy; 2024 - 2025 <a href="https://eli64s/markitecture" target="_blank">Markitecture</a> All rights reserved. <br />
255
+ Released under the [MIT][mit-license] license.
256
+
239
257
  Copyright © 2024-2025 [Markitecture][markitecture]. <br />
240
258
  Released under the [MIT][mit-license] license.
241
259
 
242
260
  <div align="right">
243
261
 
244
- [![][back-to-top]](https://github.com/eli64s/markitecture/tree/main/#top)
262
+ [![][return-to-top]](https://github.com/eli64s/markitecture/tree/main/#top)
245
263
 
246
264
  </div>
247
265
 
248
- <!-- <div align="left">
249
- <a href="#top">
250
- <img src="https://raw.githubusercontent.com/eli64s/markitecture/77bec69129dd3a075d7d0816c7bd826da131ccc7/docs/assets/buttons/rectangle.svg" width="100px" height="100px" alt="Return to Top">
251
- </a>
252
- </div> -->
253
-
254
266
  <div align="center">
255
- <img src="https://raw.githubusercontent.com/eli64s/markitecture/216a92894e6f30c707a214fad5a5fba417e3bc39/docs/assets/line.svg" alt="separator" width="100%" height="2px" style="margin: 20px 0;">
267
+ <img
268
+ src="https://raw.githubusercontent.com/eli64s/markitecture/216a92894e6f30c707a214fad5a5fba417e3bc39/docs/assets/line.svg"
269
+ alt="Thematic Break"
270
+ width="100%"
271
+ height="2px"
272
+ style="margin: 20px 0;"
273
+ >
256
274
  </div>
257
275
 
258
-
259
276
  <!-- REFERENCE LINKS -->
260
277
 
261
278
  <!-- BADGES -->
262
- [back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-7934C5?style=flat-square
279
+ [return-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-7934C5?style=flat-square
263
280
 
264
281
  <!-- PROJECT RESOURCES -->
265
282
  [pypi]: https://pypi.org/project/markitecture/
266
283
  [markitecture]: https://github.com/eli64s/markitecture
267
284
  [github-issues]: https://github.com/eli64s/markitecture/issues
268
285
  [github-pulls]: https://github.com/eli64s/markitecture/pulls
286
+ [contributing]: https://github.com/eli64s/markitecture/blob/main/CONTRIBUTING.md
269
287
  [mit-license]: https://github.com/eli64s/markitecture/blob/main/LICENSE
270
288
  [examples]: https://github.com/eli64s/markitecture/tree/main/examples
271
289
 
@@ -1,46 +1,61 @@
1
- <div id="top" align="center">
1
+ <div align="center" id="top">
2
2
 
3
- <!-- HEADER -->
4
3
  <picture>
5
- <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/eli64s/markitecture/13c4b28213fb8e8c75299ef5c905ce1d195a6988/docs/assets/logos/circle-dark.svg">
6
- <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/eli64s/markitecture/13c4b28213fb8e8c75299ef5c905ce1d195a6988/docs/assets/logos/circle-light.svg">
7
- <img alt="markitecture Logo" src="https://raw.githubusercontent.com/eli64s/markitecture/13c4b28213fb8e8c75299ef5c905ce1d195a6988/docs/assets/logos/circle-light.svg" width="900" style="max-width: 100%;">
4
+ <source media="(prefers-color-scheme: dark)" srcset="/assets/logo.svg">
5
+ <source media="(prefers-color-scheme: light)" srcset="/assets/logo.svg">
6
+ <img alt="Markitecture Logo" src="/assets/logo.svg" width="900" style="max-width: 100%;">
8
7
  </picture>
9
8
 
10
- <h3 align="center">
11
- The Architecture of Better Documentation.
12
- </h3>
9
+ <h1>Markitecture</h1>
10
+
11
+ The Architecture of Better Documentation.
12
+
13
13
  <p align="center">
14
- <em>Markitecture: The Python toolkit that empowers modular Markdown workflows.</em>
14
+ <em>Tools for modular Markdown workflows and content management.</em>
15
15
  </p>
16
16
 
17
- <!-- BADGES -->
17
+ <!-- SHIELD GROUP -->
18
18
  <div align="center">
19
19
  <p align="center" style="margin-bottom: 20px;">
20
20
  <a href="https://github.com/eli64s/markitecture/actions">
21
21
  <img src="https://img.shields.io/github/actions/workflow/status/eli64s/markitecture/ci.yml?label=CI&style=flat&logo=githubactions&logoColor=white&labelColor=2A2A2A&color=FFD700" alt="GitHub Actions" />
22
22
  </a>
23
23
  <a href="https://app.codecov.io/gh/eli64s/markitecture">
24
- <img src="https://img.shields.io/codecov/c/github/eli64s/markitecture?label=Coverage&style=flat&logo=codecov&logoColor=white&labelColor=2A2A2A&color=3fe1c0" alt="Coverage" />
24
+ <img src="https://img.shields.io/codecov/c/github/eli64s/markitecture?label=Coverage&style=flat&logo=codecov&logoColor=white&labelColor=2A2A2A&color=00E5FF" alt="Coverage" />
25
25
  </a>
26
26
  <a href="https://pypi.org/project/markitecture/">
27
- <img src="https://img.shields.io/pypi/v/markitecture?label=PyPI&style=flat&logo=pypi&logoColor=white&labelColor=2A2A2A&color=00E5FF" alt="PyPI Version" />
27
+ <img src="https://img.shields.io/pypi/v/markitecture?label=PyPI&style=flat&logo=pypi&logoColor=white&labelColor=2A2A2A&color=7934C5" alt="PyPI Version" />
28
28
  </a>
29
+ <!--
29
30
  <a href="https://github.com/eli64s/markitecture">
30
31
  <img src="https://img.shields.io/pypi/pyversions/markitecture?label=Python&style=flat&logo=python&logoColor=white&labelColor=2A2A2A&color=7934C5" alt="Python Version" />
31
32
  </a>
33
+ -->
32
34
  <a href="https://opensource.org/license/mit/">
33
35
  <img src="https://img.shields.io/github/license/eli64s/markitecture?label=License&style=flat&logo=opensourceinitiative&logoColor=white&labelColor=2A2A2A&color=FF00FF" alt="MIT License">
34
36
  </a>
35
37
  </p>
36
38
  </div>
37
39
 
40
+ [Documentation][markitecture] · [Contribute][markitecture] · [Report Bug][github-issues] · [Request Feature][github-issues]
41
+
42
+ <!--
43
+ <details>
44
+ <summary><kbd>Table of contents</kbd></summary>
45
+
46
+ - [Installation](#installation)
47
+ - [Usage](#using-the-cli)
48
+ - [Contributing](#contributing)
49
+ - [License](#license)
50
+
51
+ </details>
52
+ -->
53
+
38
54
  <div align="center">
39
55
  <img src="https://raw.githubusercontent.com/eli64s/markitecture/216a92894e6f30c707a214fad5a5fba417e3bc39/docs/assets/line.svg" alt="separator" width="100%" height="2px" style="margin: 20px 0;">
40
56
  </div>
41
57
 
42
58
  </div>
43
- <!-- HEADER END -->
44
59
 
45
60
  ## What is Markitecture?
46
61
 
@@ -201,36 +216,39 @@ Contributions are welcome! Whether it's bug reports, feature requests, or code c
201
216
 
202
217
  ## License
203
218
 
219
+ Copyright &copy; 2024 - 2025 <a href="https://eli64s/markitecture" target="_blank">Markitecture</a> All rights reserved. <br />
220
+ Released under the [MIT][mit-license] license.
221
+
204
222
  Copyright © 2024-2025 [Markitecture][markitecture]. <br />
205
223
  Released under the [MIT][mit-license] license.
206
224
 
207
225
  <div align="right">
208
226
 
209
- [![][back-to-top]](#top)
227
+ [![][return-to-top]](#top)
210
228
 
211
229
  </div>
212
230
 
213
- <!-- <div align="left">
214
- <a href="#top">
215
- <img src="https://raw.githubusercontent.com/eli64s/markitecture/77bec69129dd3a075d7d0816c7bd826da131ccc7/docs/assets/buttons/rectangle.svg" width="100px" height="100px" alt="Return to Top">
216
- </a>
217
- </div> -->
218
-
219
231
  <div align="center">
220
- <img src="https://raw.githubusercontent.com/eli64s/markitecture/216a92894e6f30c707a214fad5a5fba417e3bc39/docs/assets/line.svg" alt="separator" width="100%" height="2px" style="margin: 20px 0;">
232
+ <img
233
+ src="https://raw.githubusercontent.com/eli64s/markitecture/216a92894e6f30c707a214fad5a5fba417e3bc39/docs/assets/line.svg"
234
+ alt="Thematic Break"
235
+ width="100%"
236
+ height="2px"
237
+ style="margin: 20px 0;"
238
+ >
221
239
  </div>
222
240
 
223
-
224
241
  <!-- REFERENCE LINKS -->
225
242
 
226
243
  <!-- BADGES -->
227
- [back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-7934C5?style=flat-square
244
+ [return-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-7934C5?style=flat-square
228
245
 
229
246
  <!-- PROJECT RESOURCES -->
230
247
  [pypi]: https://pypi.org/project/markitecture/
231
248
  [markitecture]: https://github.com/eli64s/markitecture
232
249
  [github-issues]: https://github.com/eli64s/markitecture/issues
233
250
  [github-pulls]: https://github.com/eli64s/markitecture/pulls
251
+ [contributing]: https://github.com/eli64s/markitecture/blob/main/CONTRIBUTING.md
234
252
  [mit-license]: https://github.com/eli64s/markitecture/blob/main/LICENSE
235
253
  [examples]: https://github.com/eli64s/markitecture/tree/main/examples
236
254
 
@@ -1,10 +1,10 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="4">
2
2
  <defs>
3
3
  <linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
4
- <stop offset="25%" style="stop-color:#FFD700" />
5
- <stop offset="50%" style="stop-color:#00E5FF" />
6
- <stop offset="75%" style="stop-color:#7934C5" />
7
- <stop offset="100%" style="stop-color:#FF00FF" />
4
+ <stop offset="20%" style="stop-color:#FFD700" />
5
+ <stop offset="40%" style="stop-color:#00E5FF" />
6
+ <stop offset="60%" style="stop-color:#7934C5" />
7
+ <stop offset="80%" style="stop-color:#FF00FF" />
8
8
  </linearGradient>
9
9
  </defs>
10
10
  <rect width="100%" height="4" fill="url(#grad1)" />
@@ -0,0 +1,40 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 204.8 204.8" width="160" height="160">
2
+ <defs>
3
+ <linearGradient id="mainGradient" x1="0%" y1="0%" x2="100%" y2="100%">
4
+ <stop offset="20%" style="stop-color:#FFD700" />
5
+ <stop offset="40%" style="stop-color:#00E5FF" />
6
+ <stop offset="60%" style="stop-color:#7934C5" />
7
+ <stop offset="80%" style="stop-color:#FF00FF" />
8
+ </linearGradient>
9
+ <pattern id="gridPattern" x="0" y="0" width="6.4" height="6.4" patternUnits="userSpaceOnUse">
10
+ <path d="M 6.4 0 L 0 0 0 6.4" fill="none" stroke="#FFFFFF" stroke-width="0.1" stroke-opacity="0.05" />
11
+ </pattern>
12
+ <filter id="glow" x="-20%" y="-20%" width="140%" height="140%">
13
+ <feGaussianBlur stdDeviation="0.4" result="blur" />
14
+ <feComposite in="SourceGraphic" in2="blur" operator="over" />
15
+ </filter>
16
+ </defs>
17
+ <!-- Background -->
18
+ <rect width="204.8" height="204.8" rx="36" fill="#0A0218" />
19
+ <rect width="204.8" height="204.8" rx="36" fill="url(#gridPattern)" />
20
+ <!-- Main Logo Group -->
21
+ <g transform="translate(102.4, 102.4) scale(4.6)">
22
+ <!-- Main M outline -->
23
+ <path d="M-18,-11 L-11,-11 L-11,6 L-6,-7 L0,6 L6,-7 L11,6 L11,-11 L18,-11 L18,11 L11,11 L0,-6 L-11,11 L-18,11 Z" fill="none" stroke="url(#mainGradient)" stroke-width="0.7" stroke-linejoin="round">
24
+ <animate attributeName="d" values="M-18,-11 L-11,-11 L-11,6 L-6,-7 L0,6 L6,-7 L11,6 L11,-11 L18,-11 L18,11 L11,11 L0,-6 L-11,11 L-18,11 Z;
25
+ M-19,-12 L-12,-12 L-12,7 L-7,-8 L0,7 L7,-8 L12,7 L12,-12 L19,-12 L19,12 L12,12 L0,-7 L-12,12 L-19,12 Z;
26
+ M-18,-11 L-11,-11 L-11,6 L-6,-7 L0,6 L6,-7 L11,6 L11,-11 L18,-11 L18,11 L11,11 L0,-6 L-11,11 L-18,11 Z" dur="10s" repeatCount="indefinite" calcMode="spline" keySplines="0.4 0 0.2 1; 0.4 0 0.2 1" />
27
+ </path>
28
+ <!-- Inner M -->
29
+ <path d="M-15,-8 L-9,-8 L-9,4 L-5,-5 L0,4 L5,-5 L9,4 L9,-8 L15,-8 L15,8 L9,8 L0,-4 L-9,8 L-15,8 Z" fill="none" stroke="url(#mainGradient)" stroke-width="0.5" stroke-linejoin="round" opacity="0.7" />
30
+ <!-- Core M -->
31
+ <path d="M-12,-5 L-7,-5 L-7,3 L-4,-4 L0,3 L4,-4 L7,3 L7,-5 L12,-5 L12,5 L7,5 L0,-3 L-7,5 L-12,5 Z" fill="none" stroke="url(#mainGradient)" stroke-width="0.3" stroke-linejoin="round" opacity="0.5" />
32
+ <!-- Key Points -->
33
+ <g>
34
+ <circle cx="-18" cy="-11" r="0.3" fill="url(#mainGradient)" opacity="0.8" />
35
+ <circle cx="18" cy="-11" r="0.3" fill="url(#mainGradient)" opacity="0.8" />
36
+ <circle cx="-18" cy="11" r="0.3" fill="url(#mainGradient)" opacity="0.8" />
37
+ <circle cx="18" cy="11" r="0.3" fill="url(#mainGradient)" opacity="0.8" />
38
+ </g>
39
+ </g>
40
+ </svg>
@@ -2,10 +2,10 @@
2
2
  <defs>
3
3
  <!-- Updated Linear Gradient with specified colors -->
4
4
  <linearGradient id="neonGradient" x1="0%" y1="0%" x2="100%" y2="0%">
5
- <stop offset="25%" style="stop-color:#FFD700" />
6
- <stop offset="50%" style="stop-color:#00E5FF" />
7
- <stop offset="75%" style="stop-color:#7934C5" />
8
- <stop offset="100%" style="stop-color:#FF00FF" />
5
+ <stop offset="20%" style="stop-color:#FFD700" />
6
+ <stop offset="40%" style="stop-color:#00E5FF" />
7
+ <stop offset="60%" style="stop-color:#7934C5" />
8
+ <stop offset="80%" style="stop-color:#FF00FF" />
9
9
  </linearGradient>
10
10
  <!-- Neon Glow Filter -->
11
11
  <filter id="neonGlow" x="-50%" y="-50%" width="200%" height="200%">
@@ -4,9 +4,8 @@ requires = [ "hatch-fancy-pypi-readme", "hatchling" ]
4
4
 
5
5
  [project]
6
6
  name = "markitecture"
7
- version = "0.2.3"
8
- description = "❂ Markdown tools for modular and flexible docs: link validation, reference link conversion, text splitting, & more."
9
- dynamic = ["readme"]
7
+ description = "Markdown tools for modular workflows and content management."
8
+ dynamic = ["readme", "version"]
10
9
  keywords = [
11
10
  "automated-markdown",
12
11
  "content-management",
@@ -107,7 +106,7 @@ include = [
107
106
  ]
108
107
 
109
108
  [tool.hatch.version]
110
- path = 'src/markitecture/__init__.py'
109
+ path = 'src/markitecture/version.py'
111
110
 
112
111
  [tool.hatch.metadata]
113
112
  allow-direct-references = true
@@ -127,16 +126,13 @@ path = "README.md"
127
126
  [tool.pytest.ini_options]
128
127
  addopts = [
129
128
  "-vv",
130
- "-rfEsxX",
131
- "--tb=short",
129
+ "-n=auto",
132
130
  "--durations=5",
133
131
  "--cov=src/",
134
132
  "--cov-branch",
135
- "--cov-fail-under=1",
133
+ "--cov-fail-under=0",
136
134
  "--cov-report=term-missing:skip-covered",
137
135
  "--cov-report=json:tests/.reports/coverage.json",
138
- "--asyncio-mode=auto",
139
- "--numprocesses=auto",
140
136
  ]
141
137
  asyncio_default_fixture_loop_scope = "function"
142
138
  asyncio_mode = "auto"
@@ -1,5 +1,3 @@
1
- from importlib.metadata import version
2
-
3
1
  from markitecture import metrics
4
2
 
5
3
  from .errors import (
@@ -19,8 +17,7 @@ from .processing.reflink_converter import (
19
17
  from .processing.text_splitter import MarkdownTextSplitter
20
18
  from .utils.file_handler import FileHandler
21
19
  from .utils.printer import RichPrinter
22
-
23
- __version__ = version("markitecture")
20
+ from .version import __version__
24
21
 
25
22
  __all__: list[str] = [
26
23
  "FileHandler",
@@ -0,0 +1 @@
1
+ __version__ = "0.2.32"
File without changes
File without changes
File without changes