loredata 0.2.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.
Files changed (110) hide show
  1. package/README.md +126 -65
  2. package/data/avengers/addresses.json +27 -0
  3. package/data/avengers/characters.json +305 -0
  4. package/data/avengers/meta.json +13 -0
  5. package/data/better-call-saul/addresses.json +37 -0
  6. package/data/better-call-saul/characters.json +268 -0
  7. package/data/better-call-saul/meta.json +13 -0
  8. package/data/big-bang-theory/addresses.json +31 -0
  9. package/data/big-bang-theory/characters.json +198 -0
  10. package/data/big-bang-theory/meta.json +13 -0
  11. package/data/breaking-bad/characters.json +249 -148
  12. package/data/breaking-bad/meta.json +8 -1
  13. package/data/fast-and-furious/addresses.json +1 -2
  14. package/data/fast-and-furious/characters.json +226 -133
  15. package/data/fast-and-furious/meta.json +13 -1
  16. package/data/friends/characters.json +402 -281
  17. package/data/friends/meta.json +8 -1
  18. package/data/game-of-thrones/addresses.json +6 -22
  19. package/data/game-of-thrones/characters.json +507 -299
  20. package/data/game-of-thrones/meta.json +8 -1
  21. package/data/guardians-of-the-galaxy/addresses.json +17 -0
  22. package/data/guardians-of-the-galaxy/characters.json +226 -0
  23. package/data/guardians-of-the-galaxy/meta.json +13 -0
  24. package/data/harry-potter/addresses.json +6 -11
  25. package/data/harry-potter/characters.json +239 -147
  26. package/data/harry-potter/meta.json +8 -1
  27. package/data/house-md/characters.json +184 -52
  28. package/data/house-md/meta.json +8 -1
  29. package/data/lost/characters.json +420 -299
  30. package/data/lost/meta.json +8 -1
  31. package/data/matrix/characters.json +144 -34
  32. package/data/matrix/meta.json +13 -1
  33. package/data/peaky-blinders/characters.json +191 -37
  34. package/data/peaky-blinders/meta.json +8 -1
  35. package/data/prison-break/addresses.json +24 -0
  36. package/data/prison-break/characters.json +188 -0
  37. package/data/prison-break/meta.json +13 -0
  38. package/data/sherlock/characters.json +369 -263
  39. package/data/sherlock/meta.json +8 -1
  40. package/data/simpsons/addresses.json +21 -0
  41. package/data/simpsons/characters.json +383 -0
  42. package/data/simpsons/meta.json +13 -0
  43. package/data/sopranos/addresses.json +37 -0
  44. package/data/sopranos/characters.json +292 -0
  45. package/data/sopranos/meta.json +13 -0
  46. package/data/south-park/addresses.json +31 -0
  47. package/data/south-park/characters.json +372 -0
  48. package/data/south-park/meta.json +13 -0
  49. package/data/spider-man/addresses.json +31 -0
  50. package/data/spider-man/characters.json +219 -0
  51. package/data/spider-man/meta.json +13 -0
  52. package/data/star-wars/addresses.json +19 -0
  53. package/data/star-wars/characters.json +254 -0
  54. package/data/star-wars/meta.json +13 -0
  55. package/data/stranger-things/addresses.json +31 -0
  56. package/data/stranger-things/characters.json +226 -0
  57. package/data/stranger-things/meta.json +13 -0
  58. package/data/supernatural/addresses.json +25 -0
  59. package/data/supernatural/characters.json +190 -0
  60. package/data/supernatural/meta.json +13 -0
  61. package/data/the-crown/addresses.json +27 -0
  62. package/data/the-crown/characters.json +275 -0
  63. package/data/the-crown/meta.json +13 -0
  64. package/data/the-office/characters.json +478 -283
  65. package/data/the-office/meta.json +8 -1
  66. package/data/the-walking-dead/addresses.json +25 -0
  67. package/data/the-walking-dead/characters.json +186 -0
  68. package/data/the-walking-dead/meta.json +13 -0
  69. package/data/the-witcher/addresses.json +22 -0
  70. package/data/the-witcher/characters.json +272 -0
  71. package/data/the-witcher/meta.json +13 -0
  72. package/data/vikings/addresses.json +26 -0
  73. package/data/vikings/characters.json +240 -0
  74. package/data/vikings/meta.json +13 -0
  75. package/data/westworld/addresses.json +19 -0
  76. package/data/westworld/characters.json +161 -0
  77. package/data/westworld/meta.json +13 -0
  78. package/data/x-men/addresses.json +24 -0
  79. package/data/x-men/characters.json +242 -0
  80. package/data/x-men/meta.json +18 -0
  81. package/dist/browser.cjs +18 -72
  82. package/dist/browser.cjs.map +1 -1
  83. package/dist/browser.d.cts +3 -3
  84. package/dist/browser.d.ts +3 -3
  85. package/dist/browser.js +18 -72
  86. package/dist/browser.js.map +1 -1
  87. package/dist/cli/cli.cjs +41 -73
  88. package/dist/cli/cli.cjs.map +1 -1
  89. package/dist/cli/cli.js +41 -73
  90. package/dist/cli/cli.js.map +1 -1
  91. package/dist/index.cjs +41 -72
  92. package/dist/index.cjs.map +1 -1
  93. package/dist/index.d.cts +5 -4
  94. package/dist/index.d.ts +5 -4
  95. package/dist/index.js +41 -72
  96. package/dist/index.js.map +1 -1
  97. package/dist/{universe-store-Del1UHgn.d.cts โ†’ universe-store-CWhCn3U6.d.cts} +21 -11
  98. package/dist/{universe-store-Del1UHgn.d.ts โ†’ universe-store-CWhCn3U6.d.ts} +21 -11
  99. package/package.json +85 -81
  100. package/data/breaking-bad/domains.json +0 -6
  101. package/data/fast-and-furious/domains.json +0 -6
  102. package/data/friends/domains.json +0 -6
  103. package/data/game-of-thrones/domains.json +0 -6
  104. package/data/harry-potter/domains.json +0 -6
  105. package/data/house-md/domains.json +0 -6
  106. package/data/lost/domains.json +0 -6
  107. package/data/matrix/domains.json +0 -6
  108. package/data/peaky-blinders/domains.json +0 -6
  109. package/data/sherlock/domains.json +0 -6
  110. package/data/the-office/domains.json +0 -6
package/README.md CHANGED
@@ -1,15 +1,63 @@
1
- # loredata
1
+ <p align="center">
2
+ <img src="https://raw.githubusercontent.com/orchidfiles/loredata/main/apps/web/static/logo.png" alt="LoreData" width="80" />
3
+ </p>
2
4
 
3
- [![npm version](https://img.shields.io/npm/v/loredata)](https://www.npmjs.com/package/loredata)
4
- [![npm downloads per month](https://img.shields.io/npm/dm/loredata)](https://www.npmjs.com/package/loredata)
5
- [![node version](https://img.shields.io/node/v/loredata)](https://nodejs.org)
6
- [![license](https://img.shields.io/npm/l/loredata)](./LICENSE)
7
- [![last commit](https://img.shields.io/github/last-commit/orchidfiles/loredata)](https://github.com/orchidfiles/loredata)
5
+ <h3 align="center">LoreData</h3>
8
6
 
9
- Generate fake personas using real characters from pop culture universes. Every field โ€” name, email, address, profession, quote โ€” comes from the same fictional world.
7
+ <p align="center">
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/>
11
+ </p>
12
+
13
+ <p align="center">
14
+ <a href="https://www.npmjs.com/package/loredata"><img src="https://img.shields.io/npm/v/loredata" alt="npm version" /></a>
15
+ <a href="https://www.npmjs.com/package/loredata"><img src="https://img.shields.io/npm/dm/loredata" alt="npm downloads per month" /></a>
16
+ <a href="https://nodejs.org"><img src="https://img.shields.io/node/v/loredata" alt="node version" /></a>
17
+ <a href="./LICENSE"><img src="https://img.shields.io/npm/l/loredata" alt="license" /></a>
18
+ <a href="https://github.com/orchidfiles/loredata"><img src="https://img.shields.io/github/last-commit/orchidfiles/loredata" alt="last commit" /></a>
19
+ </p>
20
+
21
+ <img src="https://raw.githubusercontent.com/orchidfiles/loredata/main/apps/web/static/screen.png" alt="LoreData screenshot" />
10
22
 
11
23
  **Demo:** [loredata.orchidfiles.com](https://loredata.orchidfiles.com)
12
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
+
13
61
  ```ts
14
62
  import { person, group } from 'loredata';
15
63
 
@@ -20,7 +68,7 @@ const p = person({ universe: 'breaking-bad' });
20
68
  // username: 'heisenberg',
21
69
  // email: 'blue_sky_cook@lospollos.com',
22
70
  // quote: "I am the one who knocks.",
23
- // profession: 'chemistry teacher',
71
+ // profession: 'Chemistry teacher',
24
72
  // interests: ['chemistry', 'cooking', 'family'],
25
73
  // address: { street: '308 Negra Arroyo Lane', city: 'Albuquerque', state: 'NM' },
26
74
  // symbol: 'โ˜ข๏ธ',
@@ -30,28 +78,10 @@ const p = person({ universe: 'breaking-bad' });
30
78
  // }
31
79
 
32
80
  const team = group({ universe: 'game-of-thrones', size: 3 });
33
- ```
34
-
35
- Works in Node.js, browser, and as a CLI tool.
36
-
37
- ## Install
38
-
39
- ```sh
40
- npm install loredata
41
- ```
42
-
43
- ## Universes
44
-
45
- Available out of the box: `breaking-bad`, `friends`, `game-of-thrones`, `harry-potter`, `house-md`, `lost`, `fast-and-furious`, `matrix`, `peaky-blinders`, `sherlock`, `the-office`
46
-
47
- ```ts
48
- import { universes } from 'loredata';
49
-
50
- universes();
51
81
  // [
52
- // { id: 'sherlock', name: 'Sherlock', genre: ['crime', 'drama', 'mystery'], description: '...' },
53
- // { id: 'game-of-thrones', name: 'Game of Thrones', genre: ['fantasy', 'drama', 'action'], description: '...' },
54
- // ...
82
+ // { firstName: 'Jon', lastName: 'Snow', username: 'lord_commander', ... },
83
+ // { firstName: 'Daenerys', lastName: 'Targaryen', username: 'mother_of_dragons', ... },
84
+ // { firstName: 'Tyrion', lastName: 'Lannister', username: 'halfman', ... },
55
85
  // ]
56
86
  ```
57
87
 
@@ -60,21 +90,26 @@ universes();
60
90
  Each `Person` includes:
61
91
 
62
92
  - `firstName`, `lastName`
63
- - `username`, `email`, `password`, `phone`
93
+ - `username`, `email`
64
94
  - `address`, `profession`, `interests`
65
95
  - `quote`, `symbol`, `color`
66
96
  - `universe`, `universeName`
67
97
 
68
98
  ## Deterministic output
69
99
 
70
- Pass a `seed` for reproducible results:
100
+ If you need reproducible results, for example for test fixtures, just pass a `seed`:
71
101
 
72
102
  ```ts
73
103
  const p = person({ universe: 'matrix', seed: 42 });
104
+ const team = group({ universe: 'matrix', size: 3, seed: 42 });
74
105
  ```
75
106
 
107
+ Given the same `seed`, you always get the same persona or the same group.
108
+
76
109
  ## Browser
77
110
 
111
+ The library also supports browser environments through a separate entry point with no dependency on `fs` or `path`:
112
+
78
113
  ```ts
79
114
  import { loadUniverse, personFromData } from 'loredata/browser';
80
115
 
@@ -82,60 +117,86 @@ const universe = await loadUniverse('breaking-bad');
82
117
  const p = personFromData(universe);
83
118
  ```
84
119
 
85
- No `fs` or `path` โ€” safe for Vite, webpack, and any browser bundler.
120
+ It works with Vite, webpack, and any browser bundler.
86
121
 
87
122
  ## CLI
88
123
 
89
124
  ```sh
90
- npx loredata person --universe breaking-bad
91
- npx loredata person --universe breaking-bad --format json
92
- npx loredata person --interests chemistry,cooking
93
- npx loredata person --name walter
94
- npx loredata group --universe friends --size 5
95
- npx loredata universes
125
+ loredata person --universe breaking-bad
126
+ loredata person --universe breaking-bad --format json
127
+ loredata person --interests chemistry,cooking
128
+ loredata person --interests chemistry,cooking --interests-mode and
129
+ loredata person --name walter
130
+ loredata group --universe friends --size 5
131
+ loredata universes
96
132
  ```
97
133
 
98
- ## Features
134
+ ## Universes
99
135
 
100
- - [x] 11 universes with characters, addresses, domains
101
- - [x] Single persona and group generation
102
- - [x] Filter characters by interest, name, universe
103
- - [x] Deterministic output via seed
104
- - [x] Browser-safe entry point
105
- - [x] CLI tool
106
- - [x] Character symbol and color fields
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
107
180
 
108
181
  ## Development
109
182
 
110
183
  ```sh
184
+ # clone repo and install dependencies
111
185
  git clone https://github.com/orchidfiles/loredata.git
112
186
  cd loredata
113
187
  pnpm install
114
- ```
115
-
116
- Build dev-kit (needed once, before other builds):
117
188
 
118
- ```sh
189
+ # build in watch mode
119
190
  pnpm --filter @loredata/dev-kit build
120
- ```
121
-
122
- Build the library:
191
+ pnpm --filter loredata build:watch
123
192
 
124
- ```sh
125
- pnpm run package:build
193
+ # start web app
194
+ pnpm --filter @loredata/web dev
126
195
  ```
127
196
 
128
- Run the demo app:
129
-
130
- ```sh
131
- pnpm run demo:dev
132
- ```
133
-
134
- ## Why
135
-
136
- Faker.js generates random names and emails. They are internally consistent but meaningless. No shared context, no character identity.
197
+ ## Disclaimer
137
198
 
138
- `loredata` generates personas from real fictional characters. Each persona is recognizable and internally consistent, which makes it useful for demos, screenshots, and seed files where the content matters.
199
+ LoreData is an unofficial fan tool and is not affiliated with the rights holders of these universes, studios, or streaming platforms.
139
200
 
140
201
  ## License
141
202
 
@@ -0,0 +1,27 @@
1
+ [
2
+ {
3
+ "street": "200 Park Avenue",
4
+ "city": "New York",
5
+ "state": "NY",
6
+ "zip": "10166",
7
+ "country": "US"
8
+ },
9
+ {
10
+ "city": "Upstate New York",
11
+ "state": "NY",
12
+ "country": "US"
13
+ },
14
+ {
15
+ "street": "1327 F Street NW",
16
+ "city": "Washington",
17
+ "state": "DC",
18
+ "zip": "20004",
19
+ "country": "US"
20
+ },
21
+ {
22
+ "city": "Wakanda"
23
+ },
24
+ {
25
+ "city": "Asgard"
26
+ }
27
+ ]
@@ -0,0 +1,305 @@
1
+ [
2
+ {
3
+ "id": "tony-stark",
4
+ "firstName": "Tony",
5
+ "lastName": "Stark",
6
+ "usernames": [
7
+ "iron_man",
8
+ "genius_billionaire",
9
+ "jarvis_take_the_wheel",
10
+ "arc_reactor",
11
+ "proof_that_tony_stark_has_a_heart"
12
+ ],
13
+ "profession": "Inventor",
14
+ "interests": [
15
+ "robotics",
16
+ "racing",
17
+ "classic cars",
18
+ "family",
19
+ "AI",
20
+ "parties"
21
+ ],
22
+ "quotes": [
23
+ "I am Iron Man.",
24
+ "And I... am... Iron Man.",
25
+ "I love you three thousand.",
26
+ "Genius, billionaire, playboy, philanthropist.",
27
+ "Part of the journey is the end."
28
+ ],
29
+ "gender": "male",
30
+ "birthYear": 1970,
31
+ "address": {
32
+ "street": "200 Park Avenue",
33
+ "city": "New York",
34
+ "state": "NY",
35
+ "country": "US"
36
+ },
37
+ "symbol": "โš™๏ธ",
38
+ "color": "#7f1d1d",
39
+ "emailDomains": [
40
+ "stark-industries.com",
41
+ "ironmail.net"
42
+ ]
43
+ },
44
+ {
45
+ "id": "steve-rogers",
46
+ "firstName": "Steve",
47
+ "lastName": "Rogers",
48
+ "usernames": [
49
+ "i_can_do_this_all_day",
50
+ "first_avenger",
51
+ "man_out_of_time"
52
+ ],
53
+ "profession": "Soldier",
54
+ "interests": [
55
+ "art",
56
+ "history",
57
+ "fitness",
58
+ "leadership"
59
+ ],
60
+ "quotes": [
61
+ "I can do this all day.",
62
+ "Avengers, assemble.",
63
+ "I'm with you till the end of the line.",
64
+ "I don't want to kill anyone. I don't like bullies; I don't care where they're from.",
65
+ "The price of freedom is high. It always has been.",
66
+ "Whatever it takes."
67
+ ],
68
+ "gender": "male",
69
+ "birthYear": 1918,
70
+ "symbol": "๐Ÿ›ก๏ธ",
71
+ "color": "#1e3a5f",
72
+ "emailDomains": [
73
+ "shield.gov",
74
+ "avengers-hq.net"
75
+ ]
76
+ },
77
+ {
78
+ "id": "thor",
79
+ "firstName": "Thor",
80
+ "lastName": "Odinson",
81
+ "usernames": [
82
+ "god_of_thunder",
83
+ "son_of_odin",
84
+ "point_break",
85
+ "strongest_avenger",
86
+ "another"
87
+ ],
88
+ "profession": "King of Asgard",
89
+ "interests": [
90
+ "combat",
91
+ "mead",
92
+ "feasting",
93
+ "adventure",
94
+ "storytelling"
95
+ ],
96
+ "quotes": [
97
+ "Bring me Thanos!",
98
+ "I'm still worthy!",
99
+ "Another!",
100
+ "I went for the head.",
101
+ "He's a friend from work!"
102
+ ],
103
+ "gender": "male",
104
+ "symbol": "โšก",
105
+ "color": "#166534",
106
+ "emailDomains": [
107
+ "asgard-mail.net",
108
+ "avengers-hq.net"
109
+ ]
110
+ },
111
+ {
112
+ "id": "bruce-banner",
113
+ "firstName": "Bruce",
114
+ "lastName": "Banner",
115
+ "usernames": [
116
+ "always_angry",
117
+ "other_guy",
118
+ "sun_is_getting_real_low",
119
+ "science_bro"
120
+ ],
121
+ "profession": "Physicist",
122
+ "interests": [
123
+ "meditation",
124
+ "gamma radiation",
125
+ "biology",
126
+ "science",
127
+ "time travel"
128
+ ],
129
+ "quotes": [
130
+ "That's my secret, Captain. I'm always angry.",
131
+ "I put a bullet in my mouth and the other guy spit it out.",
132
+ "I don't know how to fly one of these."
133
+ ],
134
+ "gender": "male",
135
+ "symbol": "๐Ÿ’ฅ",
136
+ "color": "#4c1d95",
137
+ "emailDomains": [
138
+ "shield.gov",
139
+ "gamma-labs.net"
140
+ ]
141
+ },
142
+ {
143
+ "id": "natasha-romanoff",
144
+ "firstName": "Natasha",
145
+ "lastName": "Romanoff",
146
+ "usernames": [
147
+ "budapest",
148
+ "red_ledger",
149
+ "black_widow",
150
+ "natalie_rushman"
151
+ ],
152
+ "profession": "Spy",
153
+ "interests": [
154
+ "martial arts",
155
+ "languages",
156
+ "undercover work",
157
+ "strategy",
158
+ "ballet"
159
+ ],
160
+ "quotes": [
161
+ "I've got red in my ledger. I'd like to wipe it out.",
162
+ "We don't wanna kill you. But we will.",
163
+ "Whatever it takes."
164
+ ],
165
+ "gender": "female",
166
+ "symbol": "๐Ÿ•ท๏ธ",
167
+ "color": "#7f1d1d",
168
+ "emailDomains": [
169
+ "shield.gov",
170
+ "red-room.net"
171
+ ]
172
+ },
173
+ {
174
+ "id": "clint-barton",
175
+ "firstName": "Clint",
176
+ "lastName": "Barton",
177
+ "usernames": [
178
+ "ronin_blade",
179
+ "the_guy_with_the_bow",
180
+ "end_of_the_line",
181
+ "hawkeye"
182
+ ],
183
+ "profession": "Archer",
184
+ "interests": [
185
+ "farming",
186
+ "family",
187
+ "woodworking",
188
+ "target practice",
189
+ "grilling"
190
+ ],
191
+ "quotes": [
192
+ "The city is flying, we're fighting an army of robots, and I have a bow and arrow. None of this makes sense.",
193
+ "You step out that door, you're an Avenger.",
194
+ "I retire for, what, like five minutes, and it all goes to shit.",
195
+ "Nobody would know. Nobody. Last I saw him, an Ultron was sitting on him.",
196
+ "Don't give me hope."
197
+ ],
198
+ "gender": "male",
199
+ "symbol": "๐Ÿน",
200
+ "color": "#4a1942",
201
+ "emailDomains": [
202
+ "shield.gov",
203
+ "avengers-hq.net"
204
+ ]
205
+ },
206
+ {
207
+ "id": "loki",
208
+ "firstName": "Loki",
209
+ "lastName": "Laufeyson",
210
+ "usernames": [
211
+ "god_of_mischief",
212
+ "burdened_with_purpose",
213
+ "puny_god",
214
+ "glorious_purpose"
215
+ ],
216
+ "profession": "Trickster",
217
+ "interests": [
218
+ "illusion magic",
219
+ "theater",
220
+ "daggers",
221
+ "conquest",
222
+ "shape-shifting"
223
+ ],
224
+ "quotes": [
225
+ "I am Loki, of Asgard, and I am burdened with glorious purpose.",
226
+ "If it's all the same to you, I'll have that drink now.",
227
+ "Is not this simpler? Is this not your natural state?",
228
+ "You... will never be... a god.",
229
+ "I assure you, brother, the sun will shine on us again."
230
+ ],
231
+ "gender": "male",
232
+ "symbol": "๐Ÿ",
233
+ "color": "#1e3a5f",
234
+ "emailDomains": [
235
+ "asgard-mail.net",
236
+ "tva-nexus.org"
237
+ ]
238
+ },
239
+ {
240
+ "id": "nick-fury",
241
+ "firstName": "Nick",
242
+ "lastName": "Fury",
243
+ "usernames": [
244
+ "trust_no_one",
245
+ "helicarrier",
246
+ "avengers_initiative",
247
+ "director_fury"
248
+ ],
249
+ "profession": "Spy director",
250
+ "interests": [
251
+ "surveillance",
252
+ "strategy",
253
+ "flying",
254
+ "cats",
255
+ "intel briefings"
256
+ ],
257
+ "quotes": [
258
+ "I still believe in heroes.",
259
+ "I recognize the council has made a decision, but given that it's a stupid-ass decision, I've elected to ignore it.",
260
+ "There was an idea to bring together a group of remarkable people.",
261
+ "Last time I trusted someone, I lost an eye."
262
+ ],
263
+ "gender": "male",
264
+ "symbol": "๐Ÿ›ฐ๏ธ",
265
+ "color": "#134e4a",
266
+ "emailDomains": [
267
+ "shield.gov",
268
+ "espionage-net.org"
269
+ ]
270
+ },
271
+ {
272
+ "id": "thanos",
273
+ "firstName": "Thanos",
274
+ "lastName": "",
275
+ "usernames": [
276
+ "mad_titan",
277
+ "inevitable_one",
278
+ "balanced_universe",
279
+ "inevitable"
280
+ ],
281
+ "profession": "Warlord",
282
+ "interests": [
283
+ "philosophy",
284
+ "conquest",
285
+ "gardening",
286
+ "farming",
287
+ "resource scarcity"
288
+ ],
289
+ "quotes": [
290
+ "I am inevitable.",
291
+ "Reality is often disappointing.",
292
+ "The hardest choices require the strongest wills.",
293
+ "You should have gone for the head.",
294
+ "Dread it. Run from it. Destiny arrives all the same.",
295
+ "A small price to pay for salvation."
296
+ ],
297
+ "gender": "male",
298
+ "symbol": "๐Ÿงค",
299
+ "color": "#854d0e",
300
+ "emailDomains": [
301
+ "titan-post.net",
302
+ "infinity-order.org"
303
+ ]
304
+ }
305
+ ]
@@ -0,0 +1,13 @@
1
+ {
2
+ "id": "avengers",
3
+ "name": "The Avengers",
4
+ "genre": ["action", "sci-fi", "adventure"],
5
+ "description": "Earth's mightiest heroes assemble to fight global threats no single hero can face alone.",
6
+ "tmdbId": 24428,
7
+ "mediaType": "movie",
8
+ "year": 2012,
9
+ "rating": 8,
10
+ "networks": ["Marvel Studios"],
11
+ "posterPath": "/RYMX2wcKCBAr24UyPD7xwmjaTn.jpg",
12
+ "backdropPath": "/9BBTo63ANSmhC4e6r62OJFuK2GL.jpg"
13
+ }
@@ -0,0 +1,37 @@
1
+ [
2
+ {
3
+ "street": "9800 Montgomery Blvd NE",
4
+ "city": "Albuquerque",
5
+ "state": "NM",
6
+ "zip": "87111",
7
+ "country": "US"
8
+ },
9
+ {
10
+ "street": "4257 Isleta Blvd SW",
11
+ "city": "Albuquerque",
12
+ "state": "NM",
13
+ "zip": "87105",
14
+ "country": "US"
15
+ },
16
+ {
17
+ "street": "160 Juan Tabo Blvd NE",
18
+ "city": "Albuquerque",
19
+ "state": "NM",
20
+ "zip": "87123",
21
+ "country": "US"
22
+ },
23
+ {
24
+ "street": "6501 Montgomery Blvd NE",
25
+ "city": "Albuquerque",
26
+ "state": "NM",
27
+ "zip": "87109",
28
+ "country": "US"
29
+ },
30
+ {
31
+ "street": "2727 Rio Grande Blvd NW",
32
+ "city": "Albuquerque",
33
+ "state": "NM",
34
+ "zip": "87104",
35
+ "country": "US"
36
+ }
37
+ ]