readme-aura 0.1.11 → 0.2.1

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.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ![readme-aura-component-0](./.github/assets/readme-aura-component-0-61003ddc.svg "Generated by readme-aura")
1
+ [![readme-aura-component-0](./.github/assets/readme-aura-component-0-353dba8e.svg "Generated by readme-aura")](https://www.npmjs.com/package/readme-aura)
2
2
 
3
3
  Write custom **React/JSX components** directly inside your Markdown, and readme-aura will render them into beautiful SVGs that work on GitHub.
4
4
 
@@ -11,7 +11,7 @@ GitHub strips all JS and CSS from README files. This tool lets you bypass that l
11
11
  3. Preview locally with `npx readme-aura build` – JSX gets rendered to SVG via [Vercel Satori](https://github.com/vercel/satori)
12
12
  4. Push to `main` – the GitHub Action auto-generates your `README.md`
13
13
 
14
- ![readme-aura-component-1](./.github/assets/readme-aura-component-1-2cc164cb.svg "Generated by readme-aura")
14
+ [![readme-aura-component-1](./.github/assets/readme-aura-component-1-2cc164cb.svg "Generated by readme-aura")](https://www.npmjs.com/package/readme-aura)
15
15
 
16
16
  ## Quick Start
17
17
 
@@ -93,12 +93,13 @@ jobs:
93
93
 
94
94
  ## Features
95
95
 
96
- ![readme-aura-component-2](./.github/assets/readme-aura-component-2-1b11d685.svg "Generated by readme-aura")
96
+ [![readme-aura-component-2](./.github/assets/readme-aura-component-2-1b11d685.svg "Generated by readme-aura")](https://www.npmjs.com/package/readme-aura)
97
97
 
98
98
  * **Write React/JSX** – Use familiar `style={{ }}` syntax with flexbox, gradients, shadows
99
99
  * **Powered by Satori** – Vercel's engine converts JSX to SVG without a browser
100
100
  * **Custom Fonts** – Inter bundled by default, bring your own via `--fonts-dir`
101
101
  * **Meta Syntax** – Control dimensions: ` ```aura width=800 height=400 `
102
+ * **Clickable Images** – Add a link: ` ```aura link="https://example.com" ` – clicking the image opens the URL
102
103
  * **GitHub-Compatible** – Output is pure Markdown + SVG, works everywhere
103
104
 
104
105
  ## Animations
@@ -111,13 +112,13 @@ You can add **CSS-based SVG animations** using the `<style>` injection mechanism
111
112
 
112
113
  **Targeting:** Use `id` on SVG elements (`<ellipse id="glow">`, `<g id="group">`) and reference them in CSS: `#glow { animation: pulse 2s infinite; }`. Raw SVG elements preserve `id`; Satori-rendered HTML may not always preserve `className`.
113
114
 
114
- ![readme-aura-component-3](./.github/assets/readme-aura-component-3-65da8580.svg "Generated by readme-aura")
115
+ [![readme-aura-component-3](./.github/assets/readme-aura-component-3-65da8580.svg "Generated by readme-aura")](https://www.npmjs.com/package/readme-aura)
115
116
 
116
117
  **Limitations:** No JavaScript, no SMIL. GitHub strips scripts but supports CSS animations. Prefer `transform` and `opacity` for best compatibility.
117
118
 
118
119
  ## Tech Stack
119
120
 
120
- ![readme-aura-component-4](./.github/assets/readme-aura-component-4-bba5e99b.svg "Generated by readme-aura")
121
+ [![readme-aura-component-4](./.github/assets/readme-aura-component-4-bba5e99b.svg "Generated by readme-aura")](https://www.npmjs.com/package/readme-aura)
121
122
 
122
123
  ## If You Use readme-aura
123
124
 
package/action.yml CHANGED
@@ -34,7 +34,7 @@ inputs:
34
34
  commit_message:
35
35
  description: 'Commit message for the auto-commit'
36
36
  required: false
37
- default: 'chore: regenerate README via readme-aura'
37
+ default: 'regenerate README via readme-aura'
38
38
  auto_commit:
39
39
  description: 'Whether to auto-commit and push generated files'
40
40
  required: false
package/dist/parser.js CHANGED
@@ -4,6 +4,7 @@ import { unified } from 'unified';
4
4
  import remarkParse from 'remark-parse';
5
5
  import remarkStringify from 'remark-stringify';
6
6
  import { visit } from 'unist-util-visit';
7
+ import { parseMeta } from './renderer.js';
7
8
  const AURA_LANG = 'aura';
8
9
  export async function parseSource(sourcePath, assetsDir = '.github/assets', outputPath = 'README.md') {
9
10
  const source = await readFile(sourcePath, 'utf-8');
@@ -31,9 +32,13 @@ export async function parseSource(sourcePath, assetsDir = '.github/assets', outp
31
32
  alt: `readme-aura-component-${blockIndex}`,
32
33
  title: 'Generated by readme-aura',
33
34
  };
35
+ const { link } = parseMeta(codeNode.meta ?? undefined);
36
+ const paragraphChild = link
37
+ ? { type: 'link', url: link, children: [imageNode] }
38
+ : imageNode;
34
39
  const paragraphNode = {
35
40
  type: 'paragraph',
36
- children: [imageNode],
41
+ children: [paragraphChild],
37
42
  };
38
43
  parent.children[index] = paragraphNode;
39
44
  blockIndex++;
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAKzC,MAAM,SAAS,GAAG,MAAM,CAAC;AAEzB,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,SAAS,GAAG,gBAAgB,EAC5B,UAAU,GAAG,WAAW;IAExB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,iDAAiD;IACjD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAErF,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE;SACzB,GAAG,CAAC,WAAW,CAAC;SAChB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAU,EAAE,EAAE;QACxB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,MAA0B,EAAE,EAAE;YAC9D,MAAM,QAAQ,GAAG,IAAY,CAAC;YAC9B,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM;gBAAE,OAAO;YAE1E,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,SAAS;aACjC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAU;gBACvB,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,GAAG,SAAS,0BAA0B,UAAU,MAAM;gBAC3D,GAAG,EAAE,yBAAyB,UAAU,EAAE;gBAC1C,KAAK,EAAE,0BAA0B;aAClC,CAAC;YAEF,MAAM,aAAa,GAAc;gBAC/B,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB,CAAC;YAED,MAAM,CAAC,QAAsB,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;YACtD,UAAU,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;SACD,GAAG,CAAC,eAAe,CAAC;SACpB,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC;QACtB,MAAM;KACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAIzC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,SAAS,GAAG,MAAM,CAAC;AAEzB,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,SAAS,GAAG,gBAAgB,EAC5B,UAAU,GAAG,WAAW;IAExB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,iDAAiD;IACjD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAErF,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE;SACzB,GAAG,CAAC,WAAW,CAAC;SAChB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAU,EAAE,EAAE;QACxB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,MAA0B,EAAE,EAAE;YAC9D,MAAM,QAAQ,GAAG,IAAY,CAAC;YAC9B,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM;gBAAE,OAAO;YAE1E,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,SAAS;aACjC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAU;gBACvB,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,GAAG,SAAS,0BAA0B,UAAU,MAAM;gBAC3D,GAAG,EAAE,yBAAyB,UAAU,EAAE;gBAC1C,KAAK,EAAE,0BAA0B;aAClC,CAAC;YAEF,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;YAEvD,MAAM,cAAc,GAAG,IAAI;gBACzB,CAAC,CAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAW;gBAC9D,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,aAAa,GAAc;gBAC/B,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,CAAC,cAAc,CAAC;aAC3B,CAAC;YAED,MAAM,CAAC,QAAsB,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;YACtD,UAAU,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;SACD,GAAG,CAAC,eAAe,CAAC;SACpB,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC;QACtB,MAAM;KACP,CAAC;AACJ,CAAC"}
package/dist/renderer.js CHANGED
@@ -13,6 +13,10 @@ export function parseMeta(meta) {
13
13
  if (key === 'height')
14
14
  defaults.height = parseInt(value, 10);
15
15
  }
16
+ const linkMatch = meta.match(/link=["']([^"']+)["']/);
17
+ if (linkMatch) {
18
+ defaults.link = linkMatch[1];
19
+ }
16
20
  return defaults;
17
21
  }
18
22
  export function createElement(type, props, ...children) {
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAUzD,MAAM,UAAU,SAAS,CAAC,IAAa;IACrC,MAAM,QAAQ,GAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC5D,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAE3B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;IACjD,KAAK,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;QACnC,IAAI,GAAG,KAAK,OAAO;YAAE,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1D,IAAI,GAAG,KAAK,QAAQ;YAAE,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACtD,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAa,EACb,KAAqC,EACrC,GAAG,QAAmB;IAEtB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IACnF,OAAO;QACL,IAAI;QACJ,KAAK,EAAE;YACL,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YAChB,QAAQ,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC7E;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAAiB,EAAE,OAAiC;IAC/E,MAAM,OAAO,GAAG,WAAW,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;IAEhD,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE;QAClC,UAAU,EAAE,CAAC,KAAK,CAAC;QACnB,UAAU,EAAE,SAAS;QACrB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,CAAC,EAAE,aAAa,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAElF,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,GAAG,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;IAEjC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CACb,yFAAyF,CAC1F,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAAC,IAAa,EAAE,MAAgB;IACpD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEnD,MAAM,EAAE,GAAG,IAAqB,CAAC;IAEjC,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxB,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ;iBAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;iBACpC,MAAM,CAAC,CAAC,CAAC,EAAsB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAoB,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,aAAa,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,OAAO,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,SAA0B,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,GAA2B;IACzC,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,eAAe;CACrB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAgB,EAAE,QAAgB;IACzE,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAE5D,MAAM,EAAE,GAAG,OAAwB,CAAC;IAEpC,IAAI,EAAE,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC3D,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1F,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAChE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACrD,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,GAAG,EAAE,CAAC;YAC/C,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,IAAI,WAAW,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClE,CAAC;IACH,CAAC;IAED,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CACpC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAC9D,CAAoB,CAAC;QACxB,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjD,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,kBAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAkB,CAAC;QAC/F,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAqB,EACrB,KAAmB,EACnB,OAAiC,EACjC,QAAiB;IAEjB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEhD,IAAI,OAAgB,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,CAAC,KAAK,KAAM,GAAa,CAAC,OAAO,EAAE,EAAE;YAC5F,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAElD,IAAI,CAAC;QACH,IAAI,GAAG,GAAG,MAAM,MAAM,CAAC,OAAuC,EAAE;YAC9D,KAAK;YACL,MAAM;YACN,KAAK;YACL,mBAAmB,EAAE,KAAK,EAAE,IAAY,EAAE,OAAe,EAAE,EAAE;gBAC3D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;oBACrB,MAAM,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC1F,MAAM,GAAG,GAAG,6DAA6D,SAAS,MAAM,CAAC;oBACzF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC7B,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;oBACjC,OAAO,6BAA6B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChF,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC,CAAC;QAEH,mFAAmF;QACnF,GAAG,GAAG,GAAG,CAAC,OAAO,CACf,uEAAuE,EACvE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBACnE,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACzD,OAAO,QAAQ,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,OAAO,QAAQ,CAAC;YAClE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CACF,CAAC;QAEF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,cAAc,oBAAoB,CAAC,CAAC;QAC9E,CAAC;QAED,GAAG,GAAG,kFAAkF,GAAG,GAAG,CAAC;QAC/F,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,KAAK,YAAa,GAAa,CAAC,OAAO,EAAE,EAAE;YACzF,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
package/dist/types.d.ts CHANGED
@@ -22,6 +22,7 @@ export interface FontConfig {
22
22
  export interface RenderOptions {
23
23
  width: number;
24
24
  height: number;
25
+ link?: string;
25
26
  }
26
27
  export interface GitHubUser {
27
28
  login: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "readme-aura",
3
- "version": "0.1.11",
3
+ "version": "0.2.1",
4
4
  "description": "Next-Gen README generator for GitHub — render React/JSX components to SVG inside Markdown",
5
5
  "repository": {
6
6
  "type": "git",
@@ -58,5 +58,8 @@
58
58
  },
59
59
  "engines": {
60
60
  "node": ">=18.0.0"
61
- }
61
+ },
62
+ "workspaces": [
63
+ "apps/*"
64
+ ]
62
65
  }
package/readme.source.md CHANGED
@@ -1,4 +1,4 @@
1
- ```aura width=800 height=210
1
+ ```aura width=800 height=210 link="https://www.npmjs.com/package/readme-aura"
2
2
  <div style={{ display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', width: '100%', height: '100%', background: '#08080c', borderRadius: 20, padding: 30, fontFamily: 'Inter, sans-serif', position: 'relative', overflow: 'hidden', border: '1px solid rgba(110,80,220,0.18)' }}>
3
3
  <style>
4
4
  {`
@@ -111,7 +111,7 @@ GitHub strips all JS and CSS from README files. This tool lets you bypass that l
111
111
  3. Preview locally with `npx readme-aura build` – JSX gets rendered to SVG via [Vercel Satori](https://github.com/vercel/satori)
112
112
  4. Push to `main` – the GitHub Action auto-generates your `README.md`
113
113
 
114
- ```aura width=800 height=220
114
+ ```aura width=800 height=220 link="https://www.npmjs.com/package/readme-aura"
115
115
  <div style={{ display: 'flex', width: '100%', height: '100%', gap: 12, fontFamily: 'Inter, sans-serif', position: 'relative', overflow: 'hidden', background: '#08080c', borderRadius: 16, padding: 24, border: '1px solid rgba(110,80,220,0.18)' }}>
116
116
  <style>
117
117
  {`
@@ -275,7 +275,7 @@ jobs:
275
275
 
276
276
  ## Features
277
277
 
278
- ```aura width=800 height=160
278
+ ```aura width=800 height=160 link="https://www.npmjs.com/package/readme-aura"
279
279
  <div style={{ display: 'flex', width: '100%', height: '100%', gap: 12, fontFamily: 'Inter, sans-serif', position: 'relative', overflow: 'hidden', background: '#08080c', borderRadius: 16, padding: 20, border: '1px solid rgba(110,80,220,0.18)' }}>
280
280
  <style>
281
281
  {`
@@ -374,6 +374,7 @@ jobs:
374
374
  - **Powered by Satori** – Vercel's engine converts JSX to SVG without a browser
375
375
  - **Custom Fonts** – Inter bundled by default, bring your own via `--fonts-dir`
376
376
  - **Meta Syntax** – Control dimensions: `` ```aura width=800 height=400 ``
377
+ - **Clickable Images** – Add a link: `` ```aura link="https://example.com" `` – clicking the image opens the URL
377
378
  - **GitHub-Compatible** – Output is pure Markdown + SVG, works everywhere
378
379
 
379
380
  ## Animations
@@ -386,7 +387,7 @@ You can add **CSS-based SVG animations** using the `<style>` injection mechanism
386
387
 
387
388
  **Targeting:** Use `id` on SVG elements (`<ellipse id="glow">`, `<g id="group">`) and reference them in CSS: `#glow { animation: pulse 2s infinite; }`. Raw SVG elements preserve `id`; Satori-rendered HTML may not always preserve `className`.
388
389
 
389
- ```aura width=400 height=140
390
+ ```aura width=400 height=140 link="https://www.npmjs.com/package/readme-aura"
390
391
  <div style={{ position: 'relative', overflow: 'hidden', width: '100%', height: '100%', background: '#0a0a12', borderRadius: 12, display: 'flex', alignItems: 'center', justifyContent: 'center', fontFamily: 'Inter, sans-serif' }}>
391
392
  <style>
392
393
  {`
@@ -434,7 +435,7 @@ You can add **CSS-based SVG animations** using the `<style>` injection mechanism
434
435
 
435
436
  ## Tech Stack
436
437
 
437
- ```aura width=700 height=60
438
+ ```aura width=700 height=60 link="https://www.npmjs.com/package/readme-aura"
438
439
  <div style={{ display: 'flex', gap: 10, padding: '12px 20px', width: '100%', height: '100%', background: '#08080c', borderRadius: 30, alignItems: 'center', justifyContent: 'center', fontFamily: 'Inter, sans-serif', position: 'relative', overflow: 'hidden', border: '1px solid rgba(110,80,220,0.18)' }}>
439
440
  <style>
440
441
  {`