loredata 0.3.0 → 0.4.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 +97 -59
- package/data/avengers/characters.json +304 -177
- package/data/better-call-saul/characters.json +267 -155
- package/data/big-bang-theory/characters.json +197 -120
- package/data/big-bang-theory/meta.json +1 -1
- package/data/breaking-bad/characters.json +249 -155
- package/data/fast-and-furious/addresses.json +1 -2
- package/data/fast-and-furious/characters.json +226 -140
- package/data/friends/characters.json +402 -291
- package/data/friends/meta.json +1 -1
- package/data/game-of-thrones/addresses.json +6 -22
- package/data/game-of-thrones/characters.json +507 -314
- package/data/guardians-of-the-galaxy/characters.json +225 -123
- package/data/harry-potter/addresses.json +6 -11
- package/data/harry-potter/characters.json +239 -154
- package/data/house-md/characters.json +164 -43
- package/data/lost/characters.json +420 -311
- package/data/matrix/characters.json +123 -24
- package/data/matrix/meta.json +1 -1
- package/data/peaky-blinders/characters.json +180 -37
- package/data/peaky-blinders/meta.json +1 -1
- package/data/prison-break/characters.json +91 -19
- package/data/sherlock/characters.json +369 -272
- package/data/simpsons/characters.json +205 -41
- package/data/sopranos/characters.json +291 -183
- package/data/south-park/characters.json +371 -229
- package/data/spider-man/characters.json +124 -39
- package/data/spider-man/meta.json +6 -6
- package/data/star-wars/characters.json +129 -28
- package/data/stranger-things/addresses.json +31 -0
- package/data/stranger-things/characters.json +226 -0
- package/data/stranger-things/meta.json +13 -0
- package/data/supernatural/characters.json +96 -19
- package/data/supernatural/meta.json +6 -6
- package/data/the-crown/addresses.json +27 -0
- package/data/the-crown/characters.json +275 -0
- package/data/the-crown/meta.json +13 -0
- package/data/the-office/characters.json +478 -298
- package/data/the-walking-dead/characters.json +93 -21
- package/data/the-witcher/addresses.json +22 -0
- package/data/the-witcher/characters.json +272 -0
- package/data/the-witcher/meta.json +13 -0
- package/data/vikings/addresses.json +26 -0
- package/data/vikings/characters.json +240 -0
- package/data/vikings/meta.json +13 -0
- package/data/westworld/characters.json +71 -18
- package/data/x-men/characters.json +108 -24
- package/package.json +85 -84
package/README.md
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
<h3 align="center">LoreData</h3>
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
|
-
Generate
|
|
9
|
-
|
|
8
|
+
Generate coherent personas from pop culture universes.<br/>
|
|
9
|
+
Each persona comes from one fictional world with no cross-universe mixing.<br/>
|
|
10
|
+
Built for demos, mockups, screenshots, and seed fixtures where recognizable context matters.<br/>
|
|
10
11
|
</p>
|
|
11
12
|
|
|
12
13
|
<p align="center">
|
|
@@ -21,6 +22,42 @@
|
|
|
21
22
|
|
|
22
23
|
**Demo:** [loredata.orchidfiles.com](https://loredata.orchidfiles.com)
|
|
23
24
|
|
|
25
|
+
## Why LoreData
|
|
26
|
+
|
|
27
|
+
- Generic demo users like John Doe, Jane Smith, and `test@example.com` work for smoke tests but feel flat in real product demos
|
|
28
|
+
- LoreData generates recognizable personas from a single fictional universe, so fields stay coherent by design
|
|
29
|
+
- Deterministic output via seed keeps fixtures stable across runs
|
|
30
|
+
- Works in Node.js, browser, and as a CLI tool with no network requests
|
|
31
|
+
|
|
32
|
+
## Who this is for
|
|
33
|
+
|
|
34
|
+
- developers filling a local database or Storybook stories with recognizable personas
|
|
35
|
+
- designers building mockups who do not want to use John Doe again
|
|
36
|
+
- QA engineers creating more expressive test accounts with different profiles
|
|
37
|
+
- tutorial and conference talk authors who want screenshots that feel less generic
|
|
38
|
+
|
|
39
|
+
## Features
|
|
40
|
+
|
|
41
|
+
- [x] 29 universes
|
|
42
|
+
- [x] Single persona and group generation
|
|
43
|
+
- [x] Filter characters by interest, name, universe
|
|
44
|
+
- [x] Deterministic output via seed
|
|
45
|
+
- [x] Browser-safe entry point
|
|
46
|
+
- [x] CLI tool
|
|
47
|
+
- [x] Character symbol and color fields
|
|
48
|
+
|
|
49
|
+
## Install
|
|
50
|
+
|
|
51
|
+
```sh
|
|
52
|
+
# library
|
|
53
|
+
npm install loredata
|
|
54
|
+
|
|
55
|
+
# CLI
|
|
56
|
+
npm install -g loredata
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Usage example
|
|
60
|
+
|
|
24
61
|
```ts
|
|
25
62
|
import { person, group } from 'loredata';
|
|
26
63
|
|
|
@@ -48,35 +85,6 @@ const team = group({ universe: 'game-of-thrones', size: 3 });
|
|
|
48
85
|
// ]
|
|
49
86
|
```
|
|
50
87
|
|
|
51
|
-
Works in Node.js, browser, and as a CLI tool.
|
|
52
|
-
|
|
53
|
-
## Install
|
|
54
|
-
|
|
55
|
-
```sh
|
|
56
|
-
# library
|
|
57
|
-
npm install loredata
|
|
58
|
-
|
|
59
|
-
# CLI
|
|
60
|
-
npm install -g loredata
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
## Universes
|
|
64
|
-
|
|
65
|
-
25 universes available out of the box:
|
|
66
|
-
|
|
67
|
-
`breaking-bad`, `sopranos`, `better-call-saul`, `the-office`, `house-md`, `sherlock`, `peaky-blinders`, `game-of-thrones`, `friends`, `south-park`, `star-wars`, `matrix`, `the-walking-dead`, `prison-break`, `westworld`, `supernatural`, `simpsons`, `avengers`, `spider-man`, `lost`, `harry-potter`, `guardians-of-the-galaxy`, `big-bang-theory`, `x-men`, `fast-and-furious`
|
|
68
|
-
|
|
69
|
-
```ts
|
|
70
|
-
import { universes } from 'loredata';
|
|
71
|
-
|
|
72
|
-
universes();
|
|
73
|
-
// [
|
|
74
|
-
// { id: 'sherlock', name: 'Sherlock', genre: ['crime', 'drama', 'mystery'], description: '...' },
|
|
75
|
-
// { id: 'game-of-thrones', name: 'Game of Thrones', genre: ['fantasy', 'drama', 'action'], description: '...' },
|
|
76
|
-
// ...
|
|
77
|
-
// ]
|
|
78
|
-
```
|
|
79
|
-
|
|
80
88
|
## Persona fields
|
|
81
89
|
|
|
82
90
|
Each `Person` includes:
|
|
@@ -89,14 +97,19 @@ Each `Person` includes:
|
|
|
89
97
|
|
|
90
98
|
## Deterministic output
|
|
91
99
|
|
|
92
|
-
|
|
100
|
+
If you need reproducible results, for example for test fixtures, just pass a `seed`:
|
|
93
101
|
|
|
94
102
|
```ts
|
|
95
103
|
const p = person({ universe: 'matrix', seed: 42 });
|
|
104
|
+
const team = group({ universe: 'matrix', size: 3, seed: 42 });
|
|
96
105
|
```
|
|
97
106
|
|
|
107
|
+
Given the same `seed`, you always get the same persona or the same group.
|
|
108
|
+
|
|
98
109
|
## Browser
|
|
99
110
|
|
|
111
|
+
The library also supports browser environments through a separate entry point with no dependency on `fs` or `path`:
|
|
112
|
+
|
|
100
113
|
```ts
|
|
101
114
|
import { loadUniverse, personFromData } from 'loredata/browser';
|
|
102
115
|
|
|
@@ -104,7 +117,7 @@ const universe = await loadUniverse('breaking-bad');
|
|
|
104
117
|
const p = personFromData(universe);
|
|
105
118
|
```
|
|
106
119
|
|
|
107
|
-
|
|
120
|
+
It works with Vite, webpack, and any browser bundler.
|
|
108
121
|
|
|
109
122
|
## CLI
|
|
110
123
|
|
|
@@ -118,47 +131,72 @@ loredata group --universe friends --size 5
|
|
|
118
131
|
loredata universes
|
|
119
132
|
```
|
|
120
133
|
|
|
121
|
-
##
|
|
134
|
+
## Universes
|
|
122
135
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
- [
|
|
136
|
+
```ts
|
|
137
|
+
import { universes } from 'loredata';
|
|
138
|
+
|
|
139
|
+
universes();
|
|
140
|
+
// [
|
|
141
|
+
// { id: 'sherlock', name: 'Sherlock', genre: ['crime', 'drama', 'mystery'], description: '...' },
|
|
142
|
+
// { id: 'game-of-thrones', name: 'Game of Thrones', genre: ['fantasy', 'drama', 'action'], description: '...' },
|
|
143
|
+
// ...
|
|
144
|
+
// ]
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
For API/CLI usage, use universe IDs such as `the-office` and `game-of-thrones`.
|
|
148
|
+
|
|
149
|
+
29 universes available out of the box:
|
|
150
|
+
|
|
151
|
+
- Avengers
|
|
152
|
+
- Better Call Saul
|
|
153
|
+
- Big Bang Theory
|
|
154
|
+
- Breaking Bad
|
|
155
|
+
- Crown
|
|
156
|
+
- Fast and Furious
|
|
157
|
+
- Friends
|
|
158
|
+
- Game of Thrones
|
|
159
|
+
- Guardians of the Galaxy
|
|
160
|
+
- Harry Potter
|
|
161
|
+
- House MD
|
|
162
|
+
- Lost
|
|
163
|
+
- Matrix
|
|
164
|
+
- Office
|
|
165
|
+
- Peaky Blinders
|
|
166
|
+
- Prison Break
|
|
167
|
+
- Sherlock
|
|
168
|
+
- Simpsons
|
|
169
|
+
- Sopranos
|
|
170
|
+
- South Park
|
|
171
|
+
- Spider-Man
|
|
172
|
+
- Star Wars
|
|
173
|
+
- Stranger Things
|
|
174
|
+
- Supernatural
|
|
175
|
+
- Walking Dead
|
|
176
|
+
- Witcher
|
|
177
|
+
- Vikings
|
|
178
|
+
- Westworld
|
|
179
|
+
- X-Men
|
|
130
180
|
|
|
131
181
|
## Development
|
|
132
182
|
|
|
133
183
|
```sh
|
|
184
|
+
# clone repo and install dependencies
|
|
134
185
|
git clone https://github.com/orchidfiles/loredata.git
|
|
135
186
|
cd loredata
|
|
136
187
|
pnpm install
|
|
137
|
-
```
|
|
138
188
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
```sh
|
|
189
|
+
# build in watch mode
|
|
142
190
|
pnpm --filter @loredata/dev-kit build
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
Build the library:
|
|
146
|
-
|
|
147
|
-
```sh
|
|
148
|
-
pnpm --filter loredata build
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
Run the web app:
|
|
191
|
+
pnpm --filter loredata build:watch
|
|
152
192
|
|
|
153
|
-
|
|
193
|
+
# start web app
|
|
154
194
|
pnpm --filter @loredata/web dev
|
|
155
195
|
```
|
|
156
196
|
|
|
157
|
-
##
|
|
158
|
-
|
|
159
|
-
Faker.js generates random names and emails. They are internally consistent but meaningless. No shared context, no character identity.
|
|
197
|
+
## Disclaimer
|
|
160
198
|
|
|
161
|
-
|
|
199
|
+
LoreData is an unofficial fan tool and is not affiliated with the rights holders of these universes, studios, or streaming platforms.
|
|
162
200
|
|
|
163
201
|
## License
|
|
164
202
|
|