merpeeps-pack-architecture 0.1.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 ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Merpeeps contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
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:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,64 @@
1
+ # merpeeps-pack-architecture
2
+
3
+ The Merpeeps Architecture stencil pack, distributed as **YAML data only**.
4
+ Includes 12 stencils for services, API gateways, databases, caches, queues,
5
+ object storage, functions, authentication, web and mobile clients, cloud
6
+ providers, and workers.
7
+
8
+ ## Install and read
9
+
10
+ ```bash
11
+ npm install merpeeps-pack-architecture
12
+ ```
13
+
14
+ From a Node.js ES module:
15
+
16
+ ```js
17
+ import { readFileSync } from 'node:fs';
18
+ import { createRequire } from 'node:module';
19
+
20
+ const require = createRequire(import.meta.url);
21
+ const yaml = readFileSync(require.resolve('merpeeps-pack-architecture'), 'utf8');
22
+ ```
23
+
24
+ The explicit data path
25
+ `merpeeps-pack-architecture/architecture.merpeeps-pack.yml` resolves to the same
26
+ file. Pass the text to your host application's YAML parser and compatible
27
+ Merpeeps pack loader. This package does not include a parser or runtime
28
+ dependencies. Do not import or require the YAML directly as JavaScript;
29
+ `require.resolve` locates the data without executing it.
30
+
31
+ ## Contents and scope
32
+
33
+ The tarball contains only:
34
+
35
+ - `architecture.merpeeps-pack.yml`
36
+ - `LICENSE`
37
+ - `README.md`
38
+ - `package.json`
39
+
40
+ The YAML defines stencil labels, text, shapes, core icon references, fill and
41
+ stroke defaults, and hints. It does not contain custom icon geometry or new
42
+ artwork. Your host supplies shape rendering and implementations of the
43
+ referenced core icons; this package supplies neither a renderer nor glyph
44
+ implementations.
45
+
46
+ Installing with npm only makes the data available to your project. It does
47
+ not automatically install anything into the Merpeeps desktop app or register
48
+ a Mermaid plugin. The desktop already embeds this same default pack.
49
+ The separate `merpeeps-mermaid-layout` package provides layout functionality,
50
+ not an automatic installation mechanism for this pack.
51
+
52
+ ## Source and publishing
53
+
54
+ The canonical source is
55
+ [`src/Merpeeps.Core/Packs/architecture.merpeeps-pack.yml`](https://github.com/sargemonkey/merpeeps/blob/main/src/Merpeeps.Core/Packs/architecture.merpeeps-pack.yml).
56
+ From the repository, `npm pack` and `npm publish` run `prepack` to copy that
57
+ file and the root MIT license into this package. Edit the canonical YAML, not
58
+ the generated package copy. Installing the resulting tarball needs no
59
+ repository checkout, build, or install lifecycle script.
60
+
61
+ See the [pack usage guide](https://github.com/sargemonkey/merpeeps/blob/main/docs/GUIDE.md#stencil-packs)
62
+ and the [manual publishing checklist](https://github.com/sargemonkey/merpeeps/blob/main/docs/PUBLISHING.md).
63
+
64
+ MIT licensed — see [LICENSE](./LICENSE).
@@ -0,0 +1,103 @@
1
+ id: architecture
2
+ name: Architecture
3
+ spec: 1
4
+ licence: MIT
5
+
6
+ # Infrastructure pieces, for the diagram you draw when explaining how a service
7
+ # is actually deployed.
8
+ stencils:
9
+ - label: Service
10
+ text: Service
11
+ shape: Rectangle
12
+ icon: server
13
+ fill: "#D5E8D4"
14
+ stroke: "#82B366"
15
+ hint: A running process
16
+
17
+ - label: API gateway
18
+ text: API Gateway
19
+ shape: Hexagon
20
+ icon: gateway
21
+ fill: "#FFE6CC"
22
+ stroke: "#D79B00"
23
+ hint: Front door for inbound traffic
24
+
25
+ - label: Database
26
+ text: Database
27
+ shape: Cylinder
28
+ icon: database
29
+ fill: "#F8CECC"
30
+ stroke: "#B85450"
31
+ hint: Relational or document store
32
+
33
+ - label: Cache
34
+ text: Cache
35
+ shape: Cylinder
36
+ icon: cache
37
+ fill: "#F8CECC"
38
+ stroke: "#B85450"
39
+ hint: Redis, Memcached, and friends
40
+
41
+ - label: Queue
42
+ text: Queue
43
+ shape: Subroutine
44
+ icon: queue
45
+ fill: "#FFF2CC"
46
+ stroke: "#D6B656"
47
+ hint: A message queue or topic
48
+
49
+ - label: Object storage
50
+ text: Storage
51
+ shape: Cylinder
52
+ icon: storage
53
+ fill: "#FFF2CC"
54
+ stroke: "#D6B656"
55
+ hint: Blob or object storage
56
+
57
+ - label: Function
58
+ text: Function
59
+ shape: RoundedRect
60
+ icon: function
61
+ fill: "#E1D5E7"
62
+ stroke: "#9673A6"
63
+ hint: Serverless or lambda
64
+
65
+ - label: Auth
66
+ text: Auth Service
67
+ shape: RoundedRect
68
+ icon: shield
69
+ fill: "#E1D5E7"
70
+ stroke: "#9673A6"
71
+ hint: Identity, authorisation, secrets
72
+
73
+ - label: Client
74
+ text: Web Client
75
+ shape: RoundedRect
76
+ icon: browser
77
+ fill: "#DAE8FC"
78
+ stroke: "#6C8EBF"
79
+ hint: Browser front end
80
+
81
+ - label: Mobile client
82
+ text: Mobile Client
83
+ shape: RoundedRect
84
+ icon: mobile
85
+ fill: "#DAE8FC"
86
+ stroke: "#6C8EBF"
87
+ hint: Phone or tablet front end
88
+
89
+ - label: Cloud
90
+ text: Cloud Provider
91
+ shape: RoundedRect
92
+ icon: cloud
93
+ fill: "#F5F5F5"
94
+ stroke: "#666666"
95
+ hint: A managed or third-party service
96
+
97
+ - label: Worker
98
+ text: Worker
99
+ shape: Rectangle
100
+ icon: cog
101
+ fill: "#D5E8D4"
102
+ stroke: "#82B366"
103
+ hint: Background or scheduled processing
package/package.json ADDED
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "merpeeps-pack-architecture",
3
+ "version": "0.1.0",
4
+ "description": "Data-only Merpeeps architecture stencil pack for services, gateways, storage, and infrastructure diagrams.",
5
+ "keywords": [
6
+ "merpeeps",
7
+ "mermaid",
8
+ "architecture",
9
+ "infrastructure",
10
+ "diagram",
11
+ "stencils",
12
+ "yaml",
13
+ "data-only"
14
+ ],
15
+ "license": "MIT",
16
+ "author": "Merpeeps contributors",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/sargemonkey/merpeeps.git",
20
+ "directory": "packages/merpeeps-pack-architecture"
21
+ },
22
+ "homepage": "https://github.com/sargemonkey/merpeeps/blob/main/docs/GUIDE.md#stencil-packs",
23
+ "bugs": {
24
+ "url": "https://github.com/sargemonkey/merpeeps/issues"
25
+ },
26
+ "main": "./architecture.merpeeps-pack.yml",
27
+ "exports": {
28
+ ".": "./architecture.merpeeps-pack.yml",
29
+ "./architecture.merpeeps-pack.yml": "./architecture.merpeeps-pack.yml"
30
+ },
31
+ "files": [
32
+ "architecture.merpeeps-pack.yml",
33
+ "LICENSE",
34
+ "README.md",
35
+ "package.json"
36
+ ],
37
+ "scripts": {
38
+ "prepack": "node ../../scripts/prepare-domain-pack.mjs architecture",
39
+ "release:check": "node ../../oracle/package-consumer-test.mjs merpeeps-pack-architecture",
40
+ "prepublishOnly": "npm run release:check"
41
+ },
42
+ "publishConfig": {
43
+ "access": "public",
44
+ "registry": "https://registry.npmjs.org/"
45
+ }
46
+ }