@stratametriq/id-card-designer 1.7.0 → 1.8.0
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/LICENSE +13 -16
- package/README.md +184 -169
- package/dist/index.css +1502 -1
- package/dist/index.es.js +14050 -13546
- package/dist/index.js +136 -136
- package/package.json +14 -20
package/LICENSE
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
STRATAMETRIQ DUAL LICENSE
|
|
2
2
|
|
|
3
3
|
Copyright (c) 2026 Stratametriq
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
5
|
+
This software is licensed under a dual-tier model:
|
|
11
6
|
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
1. COMMUNITY TIER (Non-Commercial Use)
|
|
8
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to use, copy, modify, merge, publish, and distribute the Software solely for personal, educational, open-source, or non-commercial purposes.
|
|
14
9
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
10
|
+
You may NOT use this Software in any commercial product, for-profit SaaS application, internal corporate tool, or revenue-generating service without purchasing a Commercial Enterprise License.
|
|
11
|
+
|
|
12
|
+
2. COMMERCIAL ENTERPRISE TIER (Commercial Use)
|
|
13
|
+
If you intend to use this Software in a commercial capacity (e.g., School ERP systems, HR suites, SaaS platforms, or production deployments within a for-profit organization), you MUST purchase a valid Commercial Enterprise License.
|
|
14
|
+
|
|
15
|
+
A Commercial Enterprise License can be purchased at:
|
|
16
|
+
https://waniabid.gumroad.com/l/id-card-designer-pro
|
|
17
|
+
|
|
18
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,254 +1,269 @@
|
|
|
1
1
|
# 📦 @stratametriq/id-card-designer
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-

|
|
5
|
-

|
|
6
|
-
|
|
7
3
|
A universal, dynamic, and highly customizable **ID Card Designer & Batch Print Dashboard** for React, Vue, Angular, and Vanilla JS.
|
|
8
4
|
|
|
9
|
-
|
|
5
|
+
> **Current release:** 1.8.0
|
|
10
6
|
|
|
11
7
|
---
|
|
12
8
|
|
|
13
9
|
## 📑 Table of Contents
|
|
14
10
|
|
|
15
|
-
- [
|
|
16
|
-
- [
|
|
11
|
+
- [Overview](#overview)
|
|
12
|
+
- [Live Demo](#live-demo)
|
|
13
|
+
- [What's New in v1.8.0](#whats-new-in-v180)
|
|
17
14
|
- [Features](#features)
|
|
18
|
-
- [
|
|
19
|
-
- [
|
|
20
|
-
- [
|
|
21
|
-
- [
|
|
22
|
-
- [
|
|
15
|
+
- [How It Works](#how-it-works)
|
|
16
|
+
- [Import Data](#import-data)
|
|
17
|
+
- [Design Cards](#design-cards)
|
|
18
|
+
- [Batch Printing](#batch-printing)
|
|
19
|
+
- [Offline Mode](#offline-mode)
|
|
20
|
+
- [Architecture & Compatibility](#architecture--compatibility)
|
|
21
|
+
- [Privacy](#privacy)
|
|
22
|
+
- [Developer Docs](#developer-docs)
|
|
23
|
+
- [NPM](#npm)
|
|
24
|
+
- [Pricing / License](#pricing--license)
|
|
23
25
|
- [FAQ](#faq)
|
|
24
|
-
- [License](#license)
|
|
25
26
|
|
|
26
27
|
---
|
|
27
28
|
|
|
28
|
-
##
|
|
29
|
+
## Overview
|
|
29
30
|
|
|
30
|
-
|
|
31
|
+
`@stratametriq/id-card-designer` is a developer-focused ID-card design and generation package.
|
|
31
32
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
It is designed for applications such as:
|
|
34
|
+
- Student Information Systems
|
|
35
|
+
- School and College ERP systems
|
|
36
|
+
- HR and Employee Management systems
|
|
37
|
+
- Event and Conference Badge systems
|
|
38
|
+
- Membership systems
|
|
39
|
+
- Internal identity-card workflows
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
The package combines **visual card design** with **structured data and batch generation** so developers do not need to build an ID-card production workflow from scratch.
|
|
39
42
|
|
|
40
|
-
|
|
43
|
+
---
|
|
41
44
|
|
|
42
|
-
|
|
45
|
+
## Live Demo
|
|
43
46
|
|
|
44
47
|
You can launch a complete ID card design studio and batch print dashboard with just **two lines of code**. It comes with pre-built dummy data so you can test it immediately!
|
|
45
48
|
|
|
46
|
-
|
|
47
|
-
import { IdCardManager } from '@stratametriq/id-card-designer';
|
|
48
|
-
import '@stratametriq/id-card-designer/dist/index.css';
|
|
49
|
-
|
|
50
|
-
export default function App() {
|
|
51
|
-
// This will render the complete turnkey dashboard with demo data!
|
|
52
|
-
return <IdCardManager />;
|
|
53
|
-
}
|
|
54
|
-
```
|
|
49
|
+
### 🚀 [Try the Live Interactive Demo on StackBlitz](https://stackblitz.com/edit/vitejs-vite-jtyvdj5g?file=src%2FApp.tsx)
|
|
55
50
|
|
|
56
51
|
---
|
|
57
52
|
|
|
58
|
-
##
|
|
53
|
+
## What's New in v1.8.0
|
|
54
|
+
- **Canva-Style Smart Alignment Guides:** Magnetically snap elements to the center of the card or align them perfectly with other elements using color-coded visual guides (Purple for center, Red for edges).
|
|
55
|
+
- **High-Res ZIP Export:** Batch export individual ID cards as high-resolution (300 DPI) PNG files neatly packaged in a single ZIP archive.
|
|
56
|
+
- **Thermal PVC Printer Support:** Native support for exporting a perfectly dimensioned CR80 layout (1 card per page) specifically optimized for Zebra, Fargo, and Magicard thermal printers.
|
|
57
|
+
- **Dynamic Image Fallbacks:** Beautifully generated initial-based avatars with consistent gradient backgrounds are automatically inserted if a profile photo is missing.
|
|
58
|
+
- **Curved Typography:** Advanced SVG text rendering to wrap and curve text along circular paths.
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
- **💾 Offline Workspace & Project Backup:** Automatic IndexedDB persistence means you never lose work on a page refresh. Export and share entire offline workspaces via `.stmq` JSON project files.
|
|
62
|
-
- **📥 Batch CSV/Excel & ZIP Import:** Let users upload spreadsheets (`.csv`, `.xlsx`) to instantly generate hundreds of cards. Upload `.zip` archives to automatically fuzzy-match and bind hundreds of high-res student photos instantly.
|
|
63
|
-
- **🔳 QR & Barcodes:** Built-in dynamic 1D Barcode and 2D QR Code generation.
|
|
64
|
-
- **🏷️ Variable Placeholders:** Easily map database fields to card text (e.g., `ID: {{admissionNo}}`).
|
|
65
|
-
- **🖼️ High-Res PDF/PNG Export:** Batch export to A3/A4/A5/Letter size PDF sheets with hardware cut marks.
|
|
66
|
-
- **🌐 Framework Agnostic:** Works natively with React and Next.js, and easily mounts into Vue, Angular, and Vanilla HTML.
|
|
60
|
+
---
|
|
67
61
|
|
|
62
|
+
## Features
|
|
63
|
+
|
|
64
|
+
- **🎨 Visual ID Card Designer:** A complete workspace for designing ID cards with a visual canvas, configurable elements, templates, and preview capabilities.
|
|
65
|
+
- **📥 CSV & Excel Import:** Import structured card data from `.csv`, `.xlsx`, and `.xls`. Imported columns can be used as dynamic fields inside templates.
|
|
66
|
+
- **🖼️ Bulk ZIP Photo Import:** Upload a ZIP archive containing your spreadsheet/CSV and images. The importer can fuzzy-match image filenames with records, making it possible to prepare large batches of cards without manually attaching every photo.
|
|
67
|
+
- **🖨️ Professional Print Calibration:** Define Bleed margins, X/Y hardware cutting offsets, and double-sided interleaved layouts.
|
|
68
|
+
- **🔳 QR Codes & Barcodes:** Generate dynamic QR codes and 1D barcodes and bind them to record values such as admission numbers, employee IDs, URLs, or other unique identifiers.
|
|
69
|
+
- **🏷️ Dynamic Field Placeholders:** Bind template elements to imported data (e.g., `ID: {{admissionNo}}`).
|
|
70
|
+
- **🧠 Conditional Rendering:** Text elements can use JavaScript expressions for conditional output (e.g., `{{ department === 'HR' ? 'Red' : 'Blue' }}`).
|
|
71
|
+
- **🔲 Smart Alignment Guides:** Snap elements to the center of the card or align them with other elements using visual color-coded guides (Purple for center, Red for edges).
|
|
72
|
+
- **⌨️ Keyboard Shortcuts:** Navigate the editor faster using Undo/Redo (`Ctrl+Z`, `Ctrl+Y`), Duplicate (`Ctrl+C`, `Ctrl+V`), Delete, and Arrow Key nudging.
|
|
68
73
|
---
|
|
69
74
|
|
|
70
|
-
##
|
|
75
|
+
## How It Works
|
|
76
|
+
|
|
77
|
+
The package is designed around a client-side card-generation workflow.
|
|
78
|
+
|
|
79
|
+
```text
|
|
80
|
+
CSV / Excel / JSON
|
|
81
|
+
↓
|
|
82
|
+
Import Records
|
|
83
|
+
↓
|
|
84
|
+
Match Photos
|
|
85
|
+
↓
|
|
86
|
+
Design Template
|
|
87
|
+
↓
|
|
88
|
+
Bind Dynamic Fields
|
|
89
|
+
↓
|
|
90
|
+
Add QR / Barcode
|
|
91
|
+
↓
|
|
92
|
+
Preview
|
|
93
|
+
↓
|
|
94
|
+
Batch Generate
|
|
95
|
+
↓
|
|
96
|
+
PDF / PNG
|
|
97
|
+
```
|
|
71
98
|
|
|
72
|
-
|
|
73
|
-
The dashboard allows you to import data in multiple ways:
|
|
74
|
-
- **Excel/CSV Upload:** Click the "Import Data" button and select an `.xlsx` or `.csv` file. The engine will automatically parse your columns into dynamic fields.
|
|
75
|
-
- **Bulk ZIP Upload with Photos:** If you have photos, create a `.zip` archive containing your Excel/CSV file alongside a folder of images. The importer will automatically fuzzy-match the image filenames (e.g., `aarav_sharma.jpg`) to the rows in your spreadsheet.
|
|
99
|
+
The package can be embedded into an existing web application. Your application remains responsible for its own backend, authentication, database, and business logic.
|
|
76
100
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
- **Conditional Logic:** Use Javascript expressions in your text elements like `{{ department === 'HR' ? 'Red' : 'Blue' }}` for conditional rendering.
|
|
81
|
-
- **QR & Barcodes:** Drag in a barcode or QR code element and bind it to unique employee IDs or URLs.
|
|
82
|
-
- **Backgrounds:** Upload high-resolution backgrounds and layer your text and images on top.
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Import Data
|
|
83
104
|
|
|
84
|
-
###
|
|
85
|
-
|
|
86
|
-
- **Exporting a Project:** Click **"Backup Project"** to download a `.stmq` file. You can take this file on a USB drive to an offline/air-gapped computer and upload it to instantly restore your entire workspace.
|
|
105
|
+
### CSV / Excel
|
|
106
|
+
Select **Import Data** and upload `.csv`, `.xlsx`, or `.xls` files. The importer automatically maps spreadsheet columns into dynamic fields.
|
|
87
107
|
|
|
88
|
-
###
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
-
|
|
92
|
-
|
|
108
|
+
### ZIP + Photos
|
|
109
|
+
Prepare a ZIP containing the spreadsheet/CSV and image files.
|
|
110
|
+
```text
|
|
111
|
+
id-cards.zip
|
|
112
|
+
├── students.xlsx
|
|
113
|
+
└── photos/
|
|
114
|
+
├── aarav_sharma.jpg
|
|
115
|
+
└── diya_patel.jpg
|
|
116
|
+
```
|
|
117
|
+
The importer attempts to fuzzy-match image filenames to the corresponding records.
|
|
93
118
|
|
|
94
119
|
---
|
|
95
120
|
|
|
96
|
-
##
|
|
121
|
+
## Design Cards
|
|
97
122
|
|
|
98
|
-
|
|
123
|
+
Open **Launch Studio Canvas**.
|
|
99
124
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
| `onBatchExportComplete` | `function` | `undefined` | Callback fired when PDF generation completes. |
|
|
105
|
-
|
|
106
|
-
### Standalone `<IdCardDesigner />` Props
|
|
107
|
-
|
|
108
|
-
If you are using the standalone designer component directly, you can pass these props to configure the editor:
|
|
109
|
-
|
|
110
|
-
```jsx
|
|
111
|
-
<IdCardDesigner
|
|
112
|
-
width={350}
|
|
113
|
-
height={200}
|
|
114
|
-
template={template}
|
|
115
|
-
onSave={handleSave}
|
|
116
|
-
onExport={handleExport}
|
|
117
|
-
/>
|
|
125
|
+
### Dynamic Text
|
|
126
|
+
Use a field placeholder:
|
|
127
|
+
```text
|
|
128
|
+
{{studentName}}
|
|
118
129
|
```
|
|
119
130
|
|
|
131
|
+
### Conditional Text
|
|
132
|
+
Use Javascript expressions:
|
|
133
|
+
```text
|
|
134
|
+
{{ department === 'HR' ? 'Red' : 'Blue' }}
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### QR / Barcode
|
|
138
|
+
Add a QR or barcode element and bind it to a unique field.
|
|
139
|
+
|
|
140
|
+
### Background
|
|
141
|
+
Upload a high-resolution card background from your computer or URL, and position other elements above it.
|
|
142
|
+
|
|
120
143
|
---
|
|
121
144
|
|
|
122
|
-
##
|
|
145
|
+
## Batch Printing
|
|
123
146
|
|
|
124
|
-
|
|
147
|
+
Select **Batch Export A4 PDF** or the applicable export workflow.
|
|
125
148
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
"elements": [
|
|
133
|
-
{
|
|
134
|
-
"id": "el_student_name",
|
|
135
|
-
"type": "field",
|
|
136
|
-
"fieldKey": "studentName",
|
|
137
|
-
"label": "Student Name",
|
|
138
|
-
"x": 2, "y": 48, "width": 50, "height": 7
|
|
139
|
-
}
|
|
140
|
-
]
|
|
141
|
-
}
|
|
142
|
-
```
|
|
149
|
+
The engine processes the records and places cards into printable sheets. The documented workflow includes:
|
|
150
|
+
- CR80 card dimensions
|
|
151
|
+
- A3, A4, A5, and Letter sheet sizes
|
|
152
|
+
- Multiple cards per sheet
|
|
153
|
+
- Hardware cutting marks
|
|
154
|
+
- X/Y print calibration offsets
|
|
143
155
|
|
|
144
156
|
---
|
|
145
157
|
|
|
146
|
-
##
|
|
158
|
+
## Offline Mode
|
|
147
159
|
|
|
148
|
-
|
|
160
|
+
The package is designed to support workflows where ID-card data should remain on the user's machine.
|
|
149
161
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
university: {
|
|
153
|
-
id: "university",
|
|
154
|
-
label: "University Students",
|
|
155
|
-
fieldDefinitions: [
|
|
156
|
-
{ key: "studentName", label: "Student Full Name" },
|
|
157
|
-
{ key: "enrollmentNo", label: "Enrollment Number" }
|
|
158
|
-
]
|
|
159
|
-
}
|
|
160
|
-
};
|
|
162
|
+
### Offline Workspace Persistence
|
|
163
|
+
The dashboard stores workspace state in the browser's IndexedDB, including imported data, templates, and active workspace information. Refreshing or reopening the browser does not automatically discard the saved workspace.
|
|
161
164
|
|
|
162
|
-
|
|
163
|
-
|
|
165
|
+
### `.stmq` Project Backup
|
|
166
|
+
Export a complete project workspace as a `.stmq` JSON project file. This provides a portable way to move a workspace between machines, including offline/air-gapped workflows.
|
|
164
167
|
|
|
165
|
-
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## Architecture & Compatibility
|
|
166
171
|
|
|
167
|
-
|
|
172
|
+
This package is designed as a **purely client-side UI library**. It does NOT require or include any built-in backend APIs or server dependencies for generating cards.
|
|
168
173
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
174
|
+
**Where is it supportable?**
|
|
175
|
+
- **React Apps (Vite, CRA, Next.js):** Fully compatible.
|
|
176
|
+
- **Data Integrations:** Because this is a UI component, it expects you to pass your live server data down as a prop (e.g. `<IdCardManager sampleRecords={myLiveApiData} />`). It is completely agnostic to where your data comes from (REST API, GraphQL, Firebase, etc.).
|
|
177
|
+
- **Browsers:** Compatible with all modern browsers (Chrome, Edge, Firefox, Safari). PDF generation relies on HTML5 Canvas and `html2canvas` so modern ES6 support is required.
|
|
172
178
|
|
|
173
179
|
---
|
|
174
180
|
|
|
175
|
-
##
|
|
181
|
+
## Privacy
|
|
176
182
|
|
|
177
|
-
|
|
183
|
+
ID-card applications commonly process personal information such as Names, Student IDs, Employee IDs, Photos, and Admission numbers.
|
|
178
184
|
|
|
179
|
-
|
|
180
|
-
-
|
|
185
|
+
The documented generation workflow is entirely **client-side**.
|
|
186
|
+
- Local browser processing
|
|
187
|
+
- IndexedDB workspace persistence
|
|
188
|
+
- Local `.stmq` project backup
|
|
189
|
+
- Local PDF/image generation
|
|
190
|
+
- No backend server required for the core generation workflow
|
|
181
191
|
|
|
182
|
-
|
|
183
|
-
- **`onSave(templateData)`**: Fired when the user clicks the save button. Returns the full JSON schema of the current design.
|
|
184
|
-
- **`onExport(format, data)`**: Fired when an export action is triggered (e.g., exporting a single card to PNG or PDF).
|
|
185
|
-
- **`onChange(elementData)`**: Fired continuously as the user drags, resizes, or modifies elements on the canvas.
|
|
186
|
-
- **`onDelete(elementId)`**: Fired when a specific element is deleted from the canvas.
|
|
187
|
-
- **`onTemplateChange(templateId)`**: Fired when the user switches to a different template.
|
|
192
|
+
Your application remains responsible for compliance with applicable privacy and data-protection requirements.
|
|
188
193
|
|
|
189
194
|
---
|
|
190
195
|
|
|
191
|
-
##
|
|
192
|
-
|
|
193
|
-
### Connect Your Own Data (React)
|
|
196
|
+
## Developer Docs
|
|
194
197
|
|
|
195
|
-
|
|
196
|
-
import
|
|
197
|
-
|
|
198
|
+
### Components
|
|
199
|
+
- `<IdCardManager />`: Complete dashboard experience. Use this when you want the complete import → design → preview → batch-export workflow.
|
|
200
|
+
- `<IdCardDesigner />`: Standalone visual designer.
|
|
201
|
+
- `<IdCardPreview />`: Embed a live ID-card preview inside another application screen.
|
|
202
|
+
- `<IdCardDesignerModal />`: Open the designer inside your application's modal/dialog workflow.
|
|
198
203
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
+
### Props (IdCardManager)
|
|
205
|
+
| Prop | Type | Default | Description |
|
|
206
|
+
|---|---|---|---|
|
|
207
|
+
| `sampleRecords` | `object` | Default data | Records used to populate the dashboard |
|
|
208
|
+
| `categories` | `object` | Default config | Custom ID-card categories |
|
|
209
|
+
| `onBatchExportComplete` | `function` | `undefined` | Callback after batch PDF generation |
|
|
204
210
|
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
211
|
+
### Templates
|
|
212
|
+
Designs are represented as JSON-compatible template structures.
|
|
213
|
+
```json
|
|
214
|
+
{
|
|
215
|
+
"id": "tpl_school_vertical",
|
|
216
|
+
"orientation": "vertical",
|
|
217
|
+
"width": 54,
|
|
218
|
+
"height": 86,
|
|
219
|
+
"elements": []
|
|
208
220
|
}
|
|
209
221
|
```
|
|
210
222
|
|
|
211
|
-
|
|
223
|
+
---
|
|
212
224
|
|
|
213
|
-
|
|
214
|
-
<div id="id-card-manager-root"></div>
|
|
215
|
-
<script type="module">
|
|
216
|
-
import React from 'react';
|
|
217
|
-
import { createRoot } from 'react-dom/client';
|
|
218
|
-
import { IdCardManager } from '@stratametriq/id-card-designer';
|
|
219
|
-
import '@stratametriq/id-card-designer/dist/index.css';
|
|
225
|
+
## NPM
|
|
220
226
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
227
|
+
Install using NPM:
|
|
228
|
+
```bash
|
|
229
|
+
npm install @stratametriq/id-card-designer
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Or Yarn:
|
|
233
|
+
```bash
|
|
234
|
+
yarn add @stratametriq/id-card-designer
|
|
224
235
|
```
|
|
225
236
|
|
|
226
237
|
---
|
|
227
238
|
|
|
228
|
-
##
|
|
239
|
+
## Pricing / License
|
|
229
240
|
|
|
230
|
-
**
|
|
231
|
-
**A:** Canva is fantastic for creating manual, one-off designs. However, if you need to generate 500 student ID cards with unique photos, barcodes, and names, Canva becomes tedious. This package is an **automation pipeline**—you design the template once, feed it an array of JSON data, and instantly generate thousands of unique cards.
|
|
241
|
+
`@stratametriq/id-card-designer` operates under a **Dual Licensing Model** to support both the open-source community and enterprise development.
|
|
232
242
|
|
|
233
|
-
|
|
234
|
-
|
|
243
|
+
### 1. Community Tier (Free)
|
|
244
|
+
Free for personal projects, students, open-source initiatives, and non-profit organizations. Under this tier, you may not use the software in any commercial product or revenue-generating service.
|
|
235
245
|
|
|
236
|
-
|
|
237
|
-
|
|
246
|
+
### 2. Commercial / Enterprise Tier (Paid)
|
|
247
|
+
Required for any commercial use, including:
|
|
248
|
+
- Commercial SaaS applications
|
|
249
|
+
- School & College ERP systems
|
|
250
|
+
- HR & Employee Management suites
|
|
251
|
+
- Internal corporate production deployments
|
|
252
|
+
- White-label applications
|
|
238
253
|
|
|
239
|
-
**
|
|
240
|
-
**A:** **Absolutely not.** Employee and student data (PII) is a massive security concern. That is why this engine runs **100% Client-Side** in the browser. Zero network requests are made to external servers. The PDFs and images are generated purely on the user's local machine, and all workspace data is saved offline via IndexedDB. Your users can even export `.stmq` project backups and move them via USB to air-gapped computers!
|
|
254
|
+
👉 **[Purchase a Commercial Enterprise License Here](https://waniabid.gumroad.com/l/id-card-designer-pro)**
|
|
241
255
|
|
|
242
|
-
|
|
243
|
-
**A:** Yes! The enterprise license is 100% white-label, allowing you to seamlessly integrate the designer into your own SaaS product without your users ever knowing you are using our software.
|
|
256
|
+
*For full legal terms, please review the `LICENSE` file included in this repository.*
|
|
244
257
|
|
|
245
258
|
---
|
|
246
259
|
|
|
247
|
-
##
|
|
260
|
+
## FAQ
|
|
248
261
|
|
|
249
|
-
|
|
262
|
+
**How is this different from Canva?**
|
|
263
|
+
Canva is designed primarily for visual design. `@stratametriq/id-card-designer` focuses on an automated data-driven ID-card workflow: One Template + Many Records = Batch Printable ID Cards.
|
|
250
264
|
|
|
251
|
-
|
|
252
|
-
|
|
265
|
+
**Does the core workflow require a StrataMetriq server?**
|
|
266
|
+
No backend server from StrataMetriq is required for the documented client-side card-generation workflow.
|
|
253
267
|
|
|
254
|
-
|
|
268
|
+
**Can it be used for offline workflows?**
|
|
269
|
+
Yes. The package includes IndexedDB workspace persistence and `.stmq` project backup capabilities intended to support local and offline-capable workflows.
|