wingtip 0.4.2__tar.gz → 0.6.0__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 (48) hide show
  1. {wingtip-0.4.2 → wingtip-0.6.0}/PKG-INFO +10 -10
  2. {wingtip-0.4.2 → wingtip-0.6.0}/README.md +3 -3
  3. {wingtip-0.4.2 → wingtip-0.6.0}/pyproject.toml +17 -3
  4. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/main.py +284 -105
  5. wingtip-0.6.0/wingtip/migrate.py +824 -0
  6. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/js/search.js +4 -1
  7. wingtip-0.6.0/wingtip/static/vendor/fonts/material-icons.woff2 +0 -0
  8. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/material-icons.css +1 -1
  9. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/template.html +13 -0
  10. wingtip-0.4.2/wingtip/fonts/fira_sans.ttf +0 -0
  11. wingtip-0.4.2/wingtip/static/vendor/fonts/material-icons.ttf +0 -0
  12. {wingtip-0.4.2 → wingtip-0.6.0}/.gitignore +0 -0
  13. {wingtip-0.4.2 → wingtip-0.6.0}/config.sample.json +0 -0
  14. {wingtip-0.4.2 → wingtip-0.6.0}/theme.json +0 -0
  15. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/__init__.py +0 -0
  16. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/fonts/poppins.ttf +0 -0
  17. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/generate_card.py +0 -0
  18. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/latex_extension.py +0 -0
  19. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/serve.py +0 -0
  20. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/css/admonitions.css +0 -0
  21. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/css/custom.css +0 -0
  22. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/auto-render.min.js +0 -0
  23. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/clipboard.min.js +0 -0
  24. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/dark.css +0 -0
  25. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  26. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  27. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  28. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  29. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  30. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Main-Bold.woff2 +0 -0
  31. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  32. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Main-Italic.woff2 +0 -0
  33. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Main-Regular.woff2 +0 -0
  34. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  35. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Math-Italic.woff2 +0 -0
  36. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  37. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  38. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  39. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Script-Regular.woff2 +0 -0
  40. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  41. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  42. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  43. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  44. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  45. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/iconify.min.js +0 -0
  46. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/katex.min.css +0 -0
  47. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/katex.min.js +0 -0
  48. {wingtip-0.4.2 → wingtip-0.6.0}/wingtip/static/vendor/light.css +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wingtip
3
- Version: 0.4.2
3
+ Version: 0.6.0
4
4
  Summary: A static site generator for documentation that is built to be indexed and cited.
5
5
  Project-URL: Homepage, https://semanticentity.github.io/WingTip-Static-Site-Generator
6
6
  Project-URL: Source, https://github.com/semanticentity/WingTip-Static-Site-Generator
@@ -38,7 +38,7 @@ Description-Content-Type: text/markdown
38
38
 
39
39
  ![WingTip social card](https://raw.githubusercontent.com/semanticentity/WingTip-Static-Site-Generator/main/social-card.png)
40
40
 
41
- [Live demo](https://semanticentity.github.io/WingTip-Static-Site-Generator) · [Migration guide](docs/migration.md) · [Source](https://github.com/semanticentity/WingTip-Static-Site-Generator) · [Roadmap](docs/roadmap.md)
41
+ [Live demo](https://semanticentity.github.io/WingTip-Static-Site-Generator) · [Migration guide](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/migration.md) · [Source](https://github.com/semanticentity/WingTip-Static-Site-Generator) · [Roadmap](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/roadmap.md)
42
42
 
43
43
  WingTip turns a repository `README.md` and `docs/` directory into fast, portable static documentation. It generates crawlable HTML, search and discovery metadata, structured data, machine-readable Markdown artifacts, and an offline-capable site without requiring a hosted documentation platform.
44
44
 
@@ -57,7 +57,7 @@ Start with zero configuration, customize when needed, and deploy the generated f
57
57
 
58
58
  ## Moving from hosted documentation?
59
59
 
60
- Use the [migration guide](docs/migration.md) to assess what WingTip supports today, preserve URLs and metadata, validate generated output, and plan a safe cutover. Public repositories and sanitized reproductions can request a [structured migration review](https://github.com/semanticentity/WingTip-Static-Site-Generator/issues/new?template=migration.yml).
60
+ Use the [migration guide](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/migration.md) to assess what WingTip supports today, preserve URLs and metadata, validate generated output, and plan a safe cutover. Public repositories and sanitized reproductions can request a [structured migration review](https://github.com/semanticentity/WingTip-Static-Site-Generator/issues/new?template=migration.yml).
61
61
 
62
62
  ## Features
63
63
 
@@ -71,17 +71,17 @@ Use the [migration guide](docs/migration.md) to assess what WingTip supports tod
71
71
  - Published/updated dates with Git-based modified-date fallback
72
72
  - Per-page categories and versions, plus generated `categories.json` and `versions.json`
73
73
  - Per-page language and translation mappings with `hreflang` and `x-default`
74
- - Local client-side full-text search with keyboard navigation ([details](docs/search-features.md))
74
+ - Local client-side full-text search with keyboard navigation ([details](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/search-features.md))
75
75
 
76
76
  ### Documentation experience
77
77
 
78
- - `README.md` becomes `index.html`; top-level `docs/*.md` files become standalone pages
79
- - Automatic sidebar, table of contents, and previous/next navigation
78
+ - `README.md` becomes `index.html`; `docs/` is discovered recursively with nested paths preserved in URLs (`docs/guides/intro.md` `guides/intro.html`)
79
+ - Automatic sidebar with collapsible directory groups (`_category.json` for names and ordering, `order` frontmatter for pages), table of contents, and previous/next navigation
80
80
  - GitHub “Edit this page” links
81
81
  - Responsive layout with light/dark mode and screen-reader/keyboard support
82
82
  - Pygments syntax highlighting and copy-to-clipboard controls
83
83
  - Tables, footnotes, definition lists, attributes, admonitions, and Markdown inside HTML
84
- - KaTeX math rendering ([examples](docs/math-examples.md))
84
+ - KaTeX math rendering ([examples](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/math-examples.md))
85
85
  - Configurable external-link handling and correct `.md` link rewriting, including fragments and queries
86
86
  - Custom Markdown-based `404.html`
87
87
 
@@ -94,7 +94,7 @@ Use the [migration guide](docs/migration.md) to assess what WingTip supports tod
94
94
  - Optional generated or custom Content Security Policy
95
95
  - Plausible, Umami, Fathom, Google Analytics, custom analytics, and global/per-page `<head>` snippets
96
96
  - Plugin hooks before/after builds and conversions, plus plugin-provided Python-Markdown extensions
97
- - Theme variables through `theme.json` and static CSS overrides ([theming guide](docs/theming.md))
97
+ - Theme variables through `theme.json` and static CSS overrides ([theming guide](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/theming.md))
98
98
  - Live development server with auto-reload and scroll restoration
99
99
  - Post-build auditor for missing local files, unexpected CDN references, required artifacts, and branding leaks
100
100
 
@@ -331,9 +331,9 @@ docs/site/
331
331
 
332
332
  ## Current limitations and roadmap
333
333
 
334
- WingTip currently processes `README.md` and top-level `docs/*.md`; nested documentation trees and grouped/collapsible navigation remain roadmap work. Mermaid diagrams, broad MDX compatibility, and a theme marketplace are not yet built.
334
+ Mermaid diagrams, broad MDX compatibility, an automated hosted-platform importer, and a theme marketplace are not yet built.
335
335
 
336
- See the [roadmap and feature comparison](docs/roadmap.md) for planned work.
336
+ See the [roadmap and feature comparison](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/docs/roadmap.md) for planned work.
337
337
 
338
338
  ---
339
339
 
@@ -41,8 +41,8 @@ Use the [migration guide](docs/migration.md) to assess what WingTip supports tod
41
41
 
42
42
  ### Documentation experience
43
43
 
44
- - `README.md` becomes `index.html`; top-level `docs/*.md` files become standalone pages
45
- - Automatic sidebar, table of contents, and previous/next navigation
44
+ - `README.md` becomes `index.html`; `docs/` is discovered recursively with nested paths preserved in URLs (`docs/guides/intro.md` `guides/intro.html`)
45
+ - Automatic sidebar with collapsible directory groups (`_category.json` for names and ordering, `order` frontmatter for pages), table of contents, and previous/next navigation
46
46
  - GitHub “Edit this page” links
47
47
  - Responsive layout with light/dark mode and screen-reader/keyboard support
48
48
  - Pygments syntax highlighting and copy-to-clipboard controls
@@ -297,7 +297,7 @@ docs/site/
297
297
 
298
298
  ## Current limitations and roadmap
299
299
 
300
- WingTip currently processes `README.md` and top-level `docs/*.md`; nested documentation trees and grouped/collapsible navigation remain roadmap work. Mermaid diagrams, broad MDX compatibility, and a theme marketplace are not yet built.
300
+ Mermaid diagrams, broad MDX compatibility, an automated hosted-platform importer, and a theme marketplace are not yet built.
301
301
 
302
302
  See the [roadmap and feature comparison](docs/roadmap.md) for planned work.
303
303
 
@@ -1,12 +1,12 @@
1
1
  [build-system]
2
- requires = ["hatchling"]
2
+ requires = ["hatchling", "hatch-fancy-pypi-readme"]
3
3
  build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "wingtip"
7
- version = "0.4.2"
7
+ version = "0.6.0"
8
8
  description = "A static site generator for documentation that is built to be indexed and cited."
9
- readme = "README.md"
9
+ dynamic = ["readme"]
10
10
  license = { text = "MIT" }
11
11
  authors = [{ name = "SemanticEntity" }]
12
12
  keywords = ["documentation", "static-site-generator", "seo", "llms-txt", "markdown", "aeo"]
@@ -62,3 +62,17 @@ artifacts = [
62
62
 
63
63
  [tool.hatch.build.targets.sdist]
64
64
  include = ["wingtip", "README.md", "config.sample.json", "theme.json"]
65
+
66
+ # PyPI renders the README verbatim with no repo context, so relative links
67
+ # 404 into pypi.org's own namespace. Keep links relative in the repo (GitHub
68
+ # and the demo site resolve them at render time) and absolutize them at
69
+ # build time for the package metadata only.
70
+ [tool.hatch.metadata.hooks.fancy-pypi-readme]
71
+ content-type = "text/markdown"
72
+
73
+ [[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]]
74
+ path = "README.md"
75
+
76
+ [[tool.hatch.metadata.hooks.fancy-pypi-readme.substitutions]]
77
+ pattern = '\]\((?!https?://|#|mailto:)([^)]+)\)'
78
+ replacement = '](https://github.com/semanticentity/WingTip-Static-Site-Generator/blob/main/\1)'