Skip to content

Commit ba1a715

Browse files
committed
Merge branch 'vue-demo' of github.com:JayanthVishnu/qr-code-layout-generate-tool into vue-demo
2 parents e097dee + 5bb6091 commit ba1a715

16 files changed

Lines changed: 1220 additions & 344 deletions

File tree

.github/workflows/release.yml

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
name: Auto Release & Publish
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
permissions:
9+
contents: write
10+
id-token: write
11+
12+
jobs:
13+
publish-core:
14+
name: Publish qrlayout-core
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
with:
20+
fetch-depth: 0
21+
22+
- name: Setup Node.js
23+
uses: actions/setup-node@v4
24+
with:
25+
node-version: '20'
26+
registry-url: 'https://registry.npmjs.org'
27+
28+
- name: Get core version
29+
id: core_pkg
30+
run: |
31+
VERSION=$(node -p "require('./packages/core/package.json').version")
32+
echo "version=$VERSION" >> $GITHUB_OUTPUT
33+
echo "Core version: $VERSION"
34+
35+
- name: Check if core tag exists
36+
id: core_tag
37+
run: |
38+
git fetch --tags
39+
if git rev-parse "qrlayout-core@${{ steps.core_pkg.outputs.version }}" >/dev/null 2>&1; then
40+
echo "exists=true" >> $GITHUB_OUTPUT
41+
echo "qrlayout-core@${{ steps.core_pkg.outputs.version }} already published — skipping"
42+
else
43+
echo "exists=false" >> $GITHUB_OUTPUT
44+
echo "qrlayout-core@${{ steps.core_pkg.outputs.version }} not found — will publish"
45+
fi
46+
47+
- name: Install dependencies
48+
if: steps.core_tag.outputs.exists == 'false'
49+
run: npm ci
50+
51+
- name: Build core
52+
if: steps.core_tag.outputs.exists == 'false'
53+
run: npm run build:core
54+
55+
- name: Publish qrlayout-core
56+
if: steps.core_tag.outputs.exists == 'false'
57+
run: |
58+
cd packages/core
59+
echo "Publishing qrlayout-core@${{ steps.core_pkg.outputs.version }}..."
60+
npm publish --access public
61+
echo "Done!"
62+
env:
63+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
64+
65+
- name: Create GitHub Release for core
66+
if: steps.core_tag.outputs.exists == 'false'
67+
uses: softprops/action-gh-release@v2
68+
with:
69+
tag_name: qrlayout-core@${{ steps.core_pkg.outputs.version }}
70+
name: qrlayout-core v${{ steps.core_pkg.outputs.version }}
71+
body: |
72+
## qrlayout-core v${{ steps.core_pkg.outputs.version }}
73+
74+
### Install
75+
```bash
76+
npm i qrlayout-core
77+
```
78+
79+
See [CHANGELOG](https://github.com/shashi089/qr-code-layout-generate-tool/blob/main/packages/core/CHANGELOG.md) for details.
80+
draft: false
81+
prerelease: false
82+
env:
83+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
84+
85+
publish-ui:
86+
name: Publish qrlayout-ui
87+
runs-on: ubuntu-latest
88+
needs: publish-core
89+
steps:
90+
- name: Checkout
91+
uses: actions/checkout@v4
92+
with:
93+
fetch-depth: 0
94+
95+
- name: Setup Node.js
96+
uses: actions/setup-node@v4
97+
with:
98+
node-version: '20'
99+
registry-url: 'https://registry.npmjs.org'
100+
101+
- name: Get ui version
102+
id: ui_pkg
103+
run: |
104+
VERSION=$(node -p "require('./packages/ui/package.json').version")
105+
echo "version=$VERSION" >> $GITHUB_OUTPUT
106+
echo "UI version: $VERSION"
107+
108+
- name: Check if ui tag exists
109+
id: ui_tag
110+
run: |
111+
git fetch --tags
112+
if git rev-parse "qrlayout-ui@${{ steps.ui_pkg.outputs.version }}" >/dev/null 2>&1; then
113+
echo "exists=true" >> $GITHUB_OUTPUT
114+
echo "qrlayout-ui@${{ steps.ui_pkg.outputs.version }} already published — skipping"
115+
else
116+
echo "exists=false" >> $GITHUB_OUTPUT
117+
echo "qrlayout-ui@${{ steps.ui_pkg.outputs.version }} not found — will publish"
118+
fi
119+
120+
- name: Install dependencies
121+
if: steps.ui_tag.outputs.exists == 'false'
122+
run: npm ci
123+
124+
- name: Build ui
125+
if: steps.ui_tag.outputs.exists == 'false'
126+
run: npm run build:ui
127+
128+
- name: Publish qrlayout-ui
129+
if: steps.ui_tag.outputs.exists == 'false'
130+
run: |
131+
cd packages/ui
132+
echo "Publishing qrlayout-ui@${{ steps.ui_pkg.outputs.version }}..."
133+
npm publish --access public
134+
echo "Done!"
135+
env:
136+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
137+
138+
- name: Create GitHub Release for ui
139+
if: steps.ui_tag.outputs.exists == 'false'
140+
uses: softprops/action-gh-release@v2
141+
with:
142+
tag_name: qrlayout-ui@${{ steps.ui_pkg.outputs.version }}
143+
name: qrlayout-ui v${{ steps.ui_pkg.outputs.version }}
144+
body: |
145+
## qrlayout-ui v${{ steps.ui_pkg.outputs.version }}
146+
147+
### Install
148+
```bash
149+
npm i qrlayout-ui
150+
```
151+
152+
See [CHANGELOG](https://github.com/shashi089/qr-code-layout-generate-tool/blob/main/packages/ui/CHANGELOG.md) for details.
153+
draft: false
154+
prerelease: false
155+
env:
156+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

examples/react-demo/index.html

Lines changed: 36 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,28 +4,55 @@
44
<head>
55
<meta charset="UTF-8" />
66
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
7+
<title>QR Layout Designer | Professional QR Code Label Sticker Design Tool | ZPL & PDF</title>
78
<meta name="description"
8-
content="Free open-source QR code layout designer. Create, customize, and export professional QR code stickers and labels with a drag-and-drop interface." />
9+
content="The most advanced QR layout design tool for industrial labels and stickers. Create professional text + QR code designs, export to ZPL for thermal printers, or generate high-quality PDFs. No install required." />
910
<meta name="keywords"
10-
content="QR code generator, layout designer, sticker maker, label printing, ZPL, PDF, React QR component, embeddable UI" />
11-
11+
content="QR layout design, qr code label sticker, text + qr code design, zpl code printer, industrial label designer, barcode sticker maker, zebra printer layout tool, dynamic qr label" />
12+
<link rel="canonical" href="https://qr-layout-designer.netlify.app/" />
1213

14+
<!-- Open Graph / Facebook -->
1315
<meta property="og:type" content="website" />
14-
<meta property="og:title" content="QR Layout Designer | Free Open Source Sticker & Label Tool" />
16+
<meta property="og:url" content="https://qr-layout-designer.netlify.app/" />
17+
<meta property="og:title" content="QR Layout Designer | Professional QR Code Label Sticker Design Tool" />
1518
<meta property="og:description"
16-
content="Design and print QR code labels easily. Support for ZPL, PDF, and multiple UI frameworks." />
19+
content="Design, customize, and print QR code labels easily. Industry-standard ZPL and PDF export for thermal and laser printers." />
1720
<meta property="og:image"
1821
content="https://github.com/shashi089/qr-code-layout-generate-tool/raw/main/assets/layout_designer.png" />
1922

20-
23+
<!-- Twitter -->
2124
<meta property="twitter:card" content="summary_large_image" />
22-
<meta property="twitter:title" content="QR Layout Designer | Free Open Source Sticker & Label Tool" />
25+
<meta property="twitter:url" content="https://qr-layout-designer.netlify.app/" />
26+
<meta property="twitter:title" content="QR Layout Designer | QR Code Label Sticker Generator" />
2327
<meta property="twitter:description"
24-
content="Design and print QR code labels easily. Support for ZPL, PDF, and multiple UI frameworks." />
28+
content="Professional QR layout design tool for zpl code printers and sticker labels. Free, open-source, and web-based." />
2529
<meta property="twitter:image"
2630
content="https://github.com/shashi089/qr-code-layout-generate-tool/raw/main/assets/layout_designer.png" />
2731

28-
<title>QR Layout Designer | Free Open Source Sticker & Label Tool</title>
32+
<!-- JSON-LD Structured Data -->
33+
<script type="application/ld+json">
34+
{
35+
"@context": "https://schema.org",
36+
"@type": "SoftwareApplication",
37+
"name": "QR Layout Designer",
38+
"operatingSystem": "Web",
39+
"applicationCategory": "DesignApplication",
40+
"description": "Professional tool for QR layout design and QR code label sticker generation with ZPL/PDF support.",
41+
"softwareVersion": "1.0.0",
42+
"offers": {
43+
"@type": "Offer",
44+
"price": "0",
45+
"priceCurrency": "USD"
46+
},
47+
"featureList": [
48+
"Drag and drop QR layout design",
49+
"Text + QR code composition",
50+
"ZPL code export for thermal printers",
51+
"High-resolution PDF generation",
52+
"Industrial label templates"
53+
]
54+
}
55+
</script>
2956
</head>
3057

3158
<body>

examples/react-demo/package-lock.json

Lines changed: 18 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/react-demo/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
},
1212
"dependencies": {
1313
"@tailwindcss/postcss": "^4.1.18",
14-
"qrlayout-core": "^1.0.8",
15-
"qrlayout-ui": "^1.0.0",
14+
"qrlayout-core": "^1.1.6",
15+
"qrlayout-ui": "^1.0.10",
1616
"react": "^19.2.0",
1717
"react-dom": "^19.2.0"
1818
},
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
User-agent: *
2+
Allow: /
3+
4+
Sitemap: https://qr-layout-designer.netlify.app/sitemap.xml
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
3+
<url>
4+
<loc>https://qr-layout-designer.netlify.app/</loc>
5+
<lastmod>2026-03-17</lastmod>
6+
<changefreq>monthly</changefreq>
7+
<priority>1.0</priority>
8+
</url>
9+
</urlset>

examples/react-demo/src/App.css

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,18 @@
1+
html,
2+
body {
3+
height: auto;
4+
overflow-y: auto;
5+
overflow-x: hidden;
6+
margin: 0;
7+
padding: 0;
8+
}
9+
110
#root {
211
width: 100%;
3-
height: 100vh;
12+
min-height: 100vh;
413
margin: 0;
514
padding: 0;
15+
overflow: visible;
616
}
717

818
.designer-container {
@@ -12,4 +22,12 @@
1222
top: 0;
1323
left: 0;
1424
z-index: 10;
25+
}
26+
27+
.scrollbar-hide::-webkit-scrollbar {
28+
display: none;
29+
}
30+
.scrollbar-hide {
31+
-ms-overflow-style: none;
32+
scrollbar-width: none;
1533
}

0 commit comments

Comments
 (0)