@roxyapi/ui 0.9.0 → 0.11.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.
Files changed (378) hide show
  1. package/AGENTS.md +53 -27
  2. package/README.md +42 -12
  3. package/components-catalog.json +1022 -0
  4. package/dist/cdn/components/angel-number-card.js +52 -0
  5. package/dist/cdn/components/angel-number-card.js.map +7 -0
  6. package/dist/cdn/components/angel-number-lookup.js +52 -0
  7. package/dist/cdn/components/angel-number-lookup.js.map +7 -0
  8. package/dist/cdn/components/ashtakavarga-grid.js +10 -3
  9. package/dist/cdn/components/ashtakavarga-grid.js.map +4 -4
  10. package/dist/cdn/components/aspects-table.js +52 -0
  11. package/dist/cdn/components/aspects-table.js.map +7 -0
  12. package/dist/cdn/components/biorhythm-chart.js +10 -3
  13. package/dist/cdn/components/biorhythm-chart.js.map +4 -4
  14. package/dist/cdn/components/bodygraph.js +17 -10
  15. package/dist/cdn/components/bodygraph.js.map +4 -4
  16. package/dist/cdn/components/choghadiya-grid.js +10 -3
  17. package/dist/cdn/components/choghadiya-grid.js.map +4 -4
  18. package/dist/cdn/components/compatibility-card.js +10 -3
  19. package/dist/cdn/components/compatibility-card.js.map +4 -4
  20. package/dist/cdn/components/crystal-card.js +52 -0
  21. package/dist/cdn/components/crystal-card.js.map +7 -0
  22. package/dist/cdn/components/crystal-grid.js +52 -0
  23. package/dist/cdn/components/crystal-grid.js.map +7 -0
  24. package/dist/cdn/components/dasha-timeline.js +10 -3
  25. package/dist/cdn/components/dasha-timeline.js.map +4 -4
  26. package/dist/cdn/components/data.js +10 -3
  27. package/dist/cdn/components/data.js.map +4 -4
  28. package/dist/cdn/components/divisional-chart.js +31 -24
  29. package/dist/cdn/components/divisional-chart.js.map +4 -4
  30. package/dist/cdn/components/dosha-card.js +10 -3
  31. package/dist/cdn/components/dosha-card.js.map +4 -4
  32. package/dist/cdn/components/dream-card.js +52 -0
  33. package/dist/cdn/components/dream-card.js.map +7 -0
  34. package/dist/cdn/components/dream-search.js +52 -0
  35. package/dist/cdn/components/dream-search.js.map +7 -0
  36. package/dist/cdn/components/endpoint-form.js +3 -3
  37. package/dist/cdn/components/endpoint-form.js.map +3 -3
  38. package/dist/cdn/components/forecast-digest.js +52 -0
  39. package/dist/cdn/components/forecast-digest.js.map +7 -0
  40. package/dist/cdn/components/forecast-timeline.js +10 -3
  41. package/dist/cdn/components/forecast-timeline.js.map +4 -4
  42. package/dist/cdn/components/guna-milan.js +10 -3
  43. package/dist/cdn/components/guna-milan.js.map +4 -4
  44. package/dist/cdn/components/hd-connection.js +52 -0
  45. package/dist/cdn/components/hd-connection.js.map +7 -0
  46. package/dist/cdn/components/hd-penta.js +52 -0
  47. package/dist/cdn/components/hd-penta.js.map +7 -0
  48. package/dist/cdn/components/hd-variables.js +52 -0
  49. package/dist/cdn/components/hd-variables.js.map +7 -0
  50. package/dist/cdn/components/hexagram.js +10 -3
  51. package/dist/cdn/components/hexagram.js.map +4 -4
  52. package/dist/cdn/components/hora-table.js +52 -0
  53. package/dist/cdn/components/hora-table.js.map +7 -0
  54. package/dist/cdn/components/horoscope-card.js +10 -3
  55. package/dist/cdn/components/horoscope-card.js.map +4 -4
  56. package/dist/cdn/components/kp-chart.js +10 -3
  57. package/dist/cdn/components/kp-chart.js.map +4 -4
  58. package/dist/cdn/components/kp-planets-table.js +10 -3
  59. package/dist/cdn/components/kp-planets-table.js.map +4 -4
  60. package/dist/cdn/components/kp-ruling-planets.js +10 -3
  61. package/dist/cdn/components/kp-ruling-planets.js.map +4 -4
  62. package/dist/cdn/components/location-search.js +3 -3
  63. package/dist/cdn/components/location-search.js.map +2 -2
  64. package/dist/cdn/components/moon-phase.js +10 -3
  65. package/dist/cdn/components/moon-phase.js.map +4 -4
  66. package/dist/cdn/components/nakshatra-card.js +10 -3
  67. package/dist/cdn/components/nakshatra-card.js.map +4 -4
  68. package/dist/cdn/components/natal-chart.js +16 -9
  69. package/dist/cdn/components/natal-chart.js.map +4 -4
  70. package/dist/cdn/components/numerology-card.js +10 -3
  71. package/dist/cdn/components/numerology-card.js.map +4 -4
  72. package/dist/cdn/components/panchang-table.js +10 -3
  73. package/dist/cdn/components/panchang-table.js.map +4 -4
  74. package/dist/cdn/components/reference-card.js +52 -0
  75. package/dist/cdn/components/reference-card.js.map +7 -0
  76. package/dist/cdn/components/shadbala-table.js +10 -3
  77. package/dist/cdn/components/shadbala-table.js.map +4 -4
  78. package/dist/cdn/components/synastry-chart.js +16 -9
  79. package/dist/cdn/components/synastry-chart.js.map +4 -4
  80. package/dist/cdn/components/tarot-card.js +10 -3
  81. package/dist/cdn/components/tarot-card.js.map +4 -4
  82. package/dist/cdn/components/tarot-catalog.js +52 -0
  83. package/dist/cdn/components/tarot-catalog.js.map +7 -0
  84. package/dist/cdn/components/tarot-spread.js +10 -3
  85. package/dist/cdn/components/tarot-spread.js.map +4 -4
  86. package/dist/cdn/components/transits-table.js +10 -3
  87. package/dist/cdn/components/transits-table.js.map +4 -4
  88. package/dist/cdn/components/vedic-aspects.js +52 -0
  89. package/dist/cdn/components/vedic-aspects.js.map +7 -0
  90. package/dist/cdn/components/vedic-kundli.js +31 -24
  91. package/dist/cdn/components/vedic-kundli.js.map +4 -4
  92. package/dist/cdn/components/vedic-planets-table.js +10 -3
  93. package/dist/cdn/components/vedic-planets-table.js.map +4 -4
  94. package/dist/cdn/components/western-planets-table.js +10 -3
  95. package/dist/cdn/components/western-planets-table.js.map +4 -4
  96. package/dist/cdn/components/yoga-list.js +10 -3
  97. package/dist/cdn/components/yoga-list.js.map +4 -4
  98. package/dist/cdn/roxy-ui.js +92 -81
  99. package/dist/cdn/roxy-ui.js.map +4 -4
  100. package/dist/components/angel-number-card.d.ts +17 -0
  101. package/dist/components/angel-number-card.d.ts.map +1 -0
  102. package/dist/components/angel-number-card.js +2 -0
  103. package/dist/components/angel-number-card.js.map +7 -0
  104. package/dist/components/angel-number-lookup.d.ts +21 -0
  105. package/dist/components/angel-number-lookup.d.ts.map +1 -0
  106. package/dist/components/angel-number-lookup.js +2 -0
  107. package/dist/components/angel-number-lookup.js.map +7 -0
  108. package/dist/components/ashtakavarga-grid.d.ts +4 -5
  109. package/dist/components/ashtakavarga-grid.d.ts.map +1 -1
  110. package/dist/components/ashtakavarga-grid.js +1 -1
  111. package/dist/components/ashtakavarga-grid.js.map +4 -4
  112. package/dist/components/aspects-table.d.ts +23 -0
  113. package/dist/components/aspects-table.d.ts.map +1 -0
  114. package/dist/components/aspects-table.js +2 -0
  115. package/dist/components/aspects-table.js.map +7 -0
  116. package/dist/components/biorhythm-chart.d.ts +4 -5
  117. package/dist/components/biorhythm-chart.d.ts.map +1 -1
  118. package/dist/components/biorhythm-chart.js +1 -1
  119. package/dist/components/biorhythm-chart.js.map +4 -4
  120. package/dist/components/bodygraph.d.ts +4 -5
  121. package/dist/components/bodygraph.d.ts.map +1 -1
  122. package/dist/components/bodygraph.js +9 -9
  123. package/dist/components/bodygraph.js.map +4 -4
  124. package/dist/components/choghadiya-grid.d.ts +4 -5
  125. package/dist/components/choghadiya-grid.d.ts.map +1 -1
  126. package/dist/components/choghadiya-grid.js +1 -1
  127. package/dist/components/choghadiya-grid.js.map +4 -4
  128. package/dist/components/compatibility-card.d.ts +4 -5
  129. package/dist/components/compatibility-card.d.ts.map +1 -1
  130. package/dist/components/compatibility-card.js +1 -1
  131. package/dist/components/compatibility-card.js.map +4 -4
  132. package/dist/components/crystal-card.d.ts +19 -0
  133. package/dist/components/crystal-card.d.ts.map +1 -0
  134. package/dist/components/crystal-card.js +2 -0
  135. package/dist/components/crystal-card.js.map +7 -0
  136. package/dist/components/crystal-grid.d.ts +26 -0
  137. package/dist/components/crystal-grid.d.ts.map +1 -0
  138. package/dist/components/crystal-grid.js +2 -0
  139. package/dist/components/crystal-grid.js.map +7 -0
  140. package/dist/components/dasha-timeline.d.ts +4 -5
  141. package/dist/components/dasha-timeline.d.ts.map +1 -1
  142. package/dist/components/dasha-timeline.js +1 -1
  143. package/dist/components/dasha-timeline.js.map +4 -4
  144. package/dist/components/data.d.ts +5 -8
  145. package/dist/components/data.d.ts.map +1 -1
  146. package/dist/components/data.js +1 -1
  147. package/dist/components/data.js.map +4 -4
  148. package/dist/components/divisional-chart.d.ts +4 -5
  149. package/dist/components/divisional-chart.d.ts.map +1 -1
  150. package/dist/components/divisional-chart.js +59 -59
  151. package/dist/components/divisional-chart.js.map +4 -4
  152. package/dist/components/dosha-card.d.ts +4 -5
  153. package/dist/components/dosha-card.d.ts.map +1 -1
  154. package/dist/components/dosha-card.js +1 -1
  155. package/dist/components/dosha-card.js.map +4 -4
  156. package/dist/components/dream-card.d.ts +16 -0
  157. package/dist/components/dream-card.d.ts.map +1 -0
  158. package/dist/components/dream-card.js +2 -0
  159. package/dist/components/dream-card.js.map +7 -0
  160. package/dist/components/dream-search.d.ts +18 -0
  161. package/dist/components/dream-search.d.ts.map +1 -0
  162. package/dist/components/dream-search.js +2 -0
  163. package/dist/components/dream-search.js.map +7 -0
  164. package/dist/components/endpoint-form.d.ts +10 -5
  165. package/dist/components/endpoint-form.d.ts.map +1 -1
  166. package/dist/components/endpoint-form.js +1 -1
  167. package/dist/components/endpoint-form.js.map +3 -3
  168. package/dist/components/forecast-digest.d.ts +19 -0
  169. package/dist/components/forecast-digest.d.ts.map +1 -0
  170. package/dist/components/forecast-digest.js +2 -0
  171. package/dist/components/forecast-digest.js.map +7 -0
  172. package/dist/components/forecast-timeline.d.ts +8 -6
  173. package/dist/components/forecast-timeline.d.ts.map +1 -1
  174. package/dist/components/forecast-timeline.js +1 -1
  175. package/dist/components/forecast-timeline.js.map +4 -4
  176. package/dist/components/guna-milan.d.ts +4 -5
  177. package/dist/components/guna-milan.d.ts.map +1 -1
  178. package/dist/components/guna-milan.js +1 -1
  179. package/dist/components/guna-milan.js.map +4 -4
  180. package/dist/components/hd-connection.d.ts +18 -0
  181. package/dist/components/hd-connection.d.ts.map +1 -0
  182. package/dist/components/hd-connection.js +2 -0
  183. package/dist/components/hd-connection.js.map +7 -0
  184. package/dist/components/hd-penta.d.ts +18 -0
  185. package/dist/components/hd-penta.d.ts.map +1 -0
  186. package/dist/components/hd-penta.js +2 -0
  187. package/dist/components/hd-penta.js.map +7 -0
  188. package/dist/components/hd-variables.d.ts +17 -0
  189. package/dist/components/hd-variables.d.ts.map +1 -0
  190. package/dist/components/hd-variables.js +2 -0
  191. package/dist/components/hd-variables.js.map +7 -0
  192. package/dist/components/hexagram.d.ts +4 -5
  193. package/dist/components/hexagram.d.ts.map +1 -1
  194. package/dist/components/hexagram.js +1 -1
  195. package/dist/components/hexagram.js.map +4 -4
  196. package/dist/components/hora-table.d.ts +17 -0
  197. package/dist/components/hora-table.d.ts.map +1 -0
  198. package/dist/components/hora-table.js +2 -0
  199. package/dist/components/hora-table.js.map +7 -0
  200. package/dist/components/horoscope-card.d.ts +4 -5
  201. package/dist/components/horoscope-card.d.ts.map +1 -1
  202. package/dist/components/horoscope-card.js +1 -1
  203. package/dist/components/horoscope-card.js.map +4 -4
  204. package/dist/components/kp-chart.d.ts +4 -5
  205. package/dist/components/kp-chart.d.ts.map +1 -1
  206. package/dist/components/kp-chart.js +1 -1
  207. package/dist/components/kp-chart.js.map +4 -4
  208. package/dist/components/kp-planets-table.d.ts +4 -5
  209. package/dist/components/kp-planets-table.d.ts.map +1 -1
  210. package/dist/components/kp-planets-table.js +1 -1
  211. package/dist/components/kp-planets-table.js.map +4 -4
  212. package/dist/components/kp-ruling-planets.d.ts +4 -5
  213. package/dist/components/kp-ruling-planets.d.ts.map +1 -1
  214. package/dist/components/kp-ruling-planets.js +1 -1
  215. package/dist/components/kp-ruling-planets.js.map +4 -4
  216. package/dist/components/location-search.js +1 -1
  217. package/dist/components/location-search.js.map +2 -2
  218. package/dist/components/moon-phase.d.ts +5 -5
  219. package/dist/components/moon-phase.d.ts.map +1 -1
  220. package/dist/components/moon-phase.js +1 -1
  221. package/dist/components/moon-phase.js.map +4 -4
  222. package/dist/components/nakshatra-card.d.ts +4 -5
  223. package/dist/components/nakshatra-card.d.ts.map +1 -1
  224. package/dist/components/nakshatra-card.js +1 -1
  225. package/dist/components/nakshatra-card.js.map +4 -4
  226. package/dist/components/natal-chart.d.ts +4 -5
  227. package/dist/components/natal-chart.d.ts.map +1 -1
  228. package/dist/components/natal-chart.js +8 -8
  229. package/dist/components/natal-chart.js.map +4 -4
  230. package/dist/components/numerology-card.d.ts +15 -10
  231. package/dist/components/numerology-card.d.ts.map +1 -1
  232. package/dist/components/numerology-card.js +1 -1
  233. package/dist/components/numerology-card.js.map +4 -4
  234. package/dist/components/panchang-table.d.ts +4 -5
  235. package/dist/components/panchang-table.d.ts.map +1 -1
  236. package/dist/components/panchang-table.js +1 -1
  237. package/dist/components/panchang-table.js.map +4 -4
  238. package/dist/components/reference-card.d.ts +19 -0
  239. package/dist/components/reference-card.d.ts.map +1 -0
  240. package/dist/components/reference-card.js +2 -0
  241. package/dist/components/reference-card.js.map +7 -0
  242. package/dist/components/shadbala-table.d.ts +4 -5
  243. package/dist/components/shadbala-table.d.ts.map +1 -1
  244. package/dist/components/shadbala-table.js +1 -1
  245. package/dist/components/shadbala-table.js.map +4 -4
  246. package/dist/components/synastry-chart.d.ts +4 -5
  247. package/dist/components/synastry-chart.d.ts.map +1 -1
  248. package/dist/components/synastry-chart.js +7 -7
  249. package/dist/components/synastry-chart.js.map +4 -4
  250. package/dist/components/tarot-card.d.ts +4 -5
  251. package/dist/components/tarot-card.d.ts.map +1 -1
  252. package/dist/components/tarot-card.js +1 -1
  253. package/dist/components/tarot-card.js.map +4 -4
  254. package/dist/components/tarot-catalog.d.ts +20 -0
  255. package/dist/components/tarot-catalog.d.ts.map +1 -0
  256. package/dist/components/tarot-catalog.js +2 -0
  257. package/dist/components/tarot-catalog.js.map +7 -0
  258. package/dist/components/tarot-spread.d.ts +7 -8
  259. package/dist/components/tarot-spread.d.ts.map +1 -1
  260. package/dist/components/tarot-spread.js +1 -1
  261. package/dist/components/tarot-spread.js.map +4 -4
  262. package/dist/components/transits-table.d.ts +4 -5
  263. package/dist/components/transits-table.d.ts.map +1 -1
  264. package/dist/components/transits-table.js +1 -1
  265. package/dist/components/transits-table.js.map +4 -4
  266. package/dist/components/vedic-aspects.d.ts +16 -0
  267. package/dist/components/vedic-aspects.d.ts.map +1 -0
  268. package/dist/components/vedic-aspects.js +2 -0
  269. package/dist/components/vedic-aspects.js.map +7 -0
  270. package/dist/components/vedic-kundli.d.ts +22 -5
  271. package/dist/components/vedic-kundli.d.ts.map +1 -1
  272. package/dist/components/vedic-kundli.js +63 -63
  273. package/dist/components/vedic-kundli.js.map +4 -4
  274. package/dist/components/vedic-planets-table.d.ts +4 -5
  275. package/dist/components/vedic-planets-table.d.ts.map +1 -1
  276. package/dist/components/vedic-planets-table.js +1 -1
  277. package/dist/components/vedic-planets-table.js.map +4 -4
  278. package/dist/components/western-planets-table.d.ts +4 -5
  279. package/dist/components/western-planets-table.d.ts.map +1 -1
  280. package/dist/components/western-planets-table.js +1 -1
  281. package/dist/components/western-planets-table.js.map +4 -4
  282. package/dist/components/yoga-list.d.ts +6 -7
  283. package/dist/components/yoga-list.d.ts.map +1 -1
  284. package/dist/components/yoga-list.js +1 -1
  285. package/dist/components/yoga-list.js.map +4 -4
  286. package/dist/generated/endpoint-bindings.d.ts +15 -0
  287. package/dist/generated/endpoint-bindings.d.ts.map +1 -0
  288. package/dist/index.cjs +73 -73
  289. package/dist/index.cjs.map +4 -4
  290. package/dist/index.d.ts +16 -0
  291. package/dist/index.d.ts.map +1 -1
  292. package/dist/index.js +71 -71
  293. package/dist/index.js.map +4 -4
  294. package/dist/manifest.d.ts.map +1 -1
  295. package/dist/manifest.json +39 -24
  296. package/dist/styles/tokens-css.d.ts +1 -1
  297. package/dist/styles/tokens-css.d.ts.map +1 -1
  298. package/dist/styles/tokens.css +4 -0
  299. package/dist/types/index.d.ts +1 -1
  300. package/dist/types/index.d.ts.map +1 -1
  301. package/dist/types/types.gen.d.ts +1103 -164
  302. package/dist/types/types.gen.d.ts.map +1 -1
  303. package/dist/utils/angel-sections.d.ts +14 -0
  304. package/dist/utils/angel-sections.d.ts.map +1 -0
  305. package/dist/utils/base-element.d.ts +73 -0
  306. package/dist/utils/base-element.d.ts.map +1 -0
  307. package/dist/utils/base-styles.d.ts.map +1 -1
  308. package/dist/utils/fetch-controller.d.ts +60 -0
  309. package/dist/utils/fetch-controller.d.ts.map +1 -0
  310. package/dist/utils/kundli-render.d.ts +2 -1
  311. package/dist/utils/kundli-render.d.ts.map +1 -1
  312. package/dist/utils/kundli-styles.d.ts.map +1 -1
  313. package/dist/utils/markup-data.d.ts +34 -0
  314. package/dist/utils/markup-data.d.ts.map +1 -1
  315. package/dist/version.d.ts +1 -1
  316. package/dist/version.d.ts.map +1 -1
  317. package/package.json +2 -1
  318. package/src/components/angel-number-card.ts +210 -0
  319. package/src/components/angel-number-lookup.ts +207 -0
  320. package/src/components/ashtakavarga-grid.ts +15 -20
  321. package/src/components/aspects-table.ts +329 -0
  322. package/src/components/biorhythm-chart.ts +14 -18
  323. package/src/components/bodygraph.ts +9 -20
  324. package/src/components/choghadiya-grid.ts +15 -19
  325. package/src/components/compatibility-card.ts +9 -19
  326. package/src/components/crystal-card.ts +242 -0
  327. package/src/components/crystal-grid.ts +182 -0
  328. package/src/components/dasha-timeline.ts +9 -20
  329. package/src/components/data.ts +8 -27
  330. package/src/components/divisional-chart.ts +10 -18
  331. package/src/components/dosha-card.ts +8 -19
  332. package/src/components/dream-card.ts +88 -0
  333. package/src/components/dream-search.ts +135 -0
  334. package/src/components/endpoint-form.ts +149 -55
  335. package/src/components/forecast-digest.ts +213 -0
  336. package/src/components/forecast-timeline.ts +24 -19
  337. package/src/components/guna-milan.ts +8 -19
  338. package/src/components/hd-connection.ts +188 -0
  339. package/src/components/hd-penta.ts +165 -0
  340. package/src/components/hd-variables.ts +128 -0
  341. package/src/components/hexagram.ts +10 -18
  342. package/src/components/hora-table.ts +149 -0
  343. package/src/components/horoscope-card.ts +9 -19
  344. package/src/components/kp-chart.ts +11 -20
  345. package/src/components/kp-planets-table.ts +11 -20
  346. package/src/components/kp-ruling-planets.ts +8 -18
  347. package/src/components/moon-phase.ts +10 -19
  348. package/src/components/nakshatra-card.ts +11 -20
  349. package/src/components/natal-chart.ts +20 -23
  350. package/src/components/numerology-card.ts +90 -31
  351. package/src/components/panchang-table.ts +9 -19
  352. package/src/components/reference-card.ts +212 -0
  353. package/src/components/shadbala-table.ts +15 -18
  354. package/src/components/synastry-chart.ts +17 -20
  355. package/src/components/tarot-card.ts +9 -20
  356. package/src/components/tarot-catalog.ts +129 -0
  357. package/src/components/tarot-spread.ts +20 -21
  358. package/src/components/transits-table.ts +17 -20
  359. package/src/components/vedic-aspects.ts +188 -0
  360. package/src/components/vedic-kundli.ts +46 -19
  361. package/src/components/vedic-planets-table.ts +11 -19
  362. package/src/components/western-planets-table.ts +11 -19
  363. package/src/components/yoga-list.ts +17 -23
  364. package/src/generated/endpoint-bindings.ts +655 -0
  365. package/src/index.ts +27 -0
  366. package/src/manifest.ts +198 -6
  367. package/src/styles/tokens-css.ts +4 -0
  368. package/src/styles/tokens.css +4 -0
  369. package/src/types/index.ts +1 -1
  370. package/src/types/types.gen.ts +1123 -164
  371. package/src/utils/angel-sections.ts +38 -0
  372. package/src/utils/base-element.ts +183 -0
  373. package/src/utils/base-styles.ts +33 -0
  374. package/src/utils/fetch-controller.ts +166 -0
  375. package/src/utils/kundli-render.ts +9 -2
  376. package/src/utils/kundli-styles.ts +7 -1
  377. package/src/utils/markup-data.ts +45 -0
  378. package/src/version.ts +1 -1
@@ -0,0 +1,1022 @@
1
+ {
2
+ "version": "0.11.0",
3
+ "generated": "scripts/sync-catalog.ts",
4
+ "components": [
5
+ {
6
+ "tag": "roxy-natal-chart",
7
+ "pascal": "RoxyNatalChart",
8
+ "slug": "natal-chart",
9
+ "domain": "Western",
10
+ "renders": "Natal chart wheel with planet glyphs and aspect lines",
11
+ "endpointLabel": "POST /astrology/natal-chart",
12
+ "endpoints": [
13
+ {
14
+ "operationId": "generateNatalChart",
15
+ "method": "POST",
16
+ "path": "/astrology/natal-chart"
17
+ }
18
+ ]
19
+ },
20
+ {
21
+ "tag": "roxy-synastry-chart",
22
+ "pascal": "RoxySynastryChart",
23
+ "slug": "synastry-chart",
24
+ "domain": "Western",
25
+ "renders": "Dual-wheel synastry with inter-aspects table",
26
+ "endpointLabel": "POST /astrology/synastry",
27
+ "endpoints": [
28
+ {
29
+ "operationId": "calculateSynastry",
30
+ "method": "POST",
31
+ "path": "/astrology/synastry"
32
+ }
33
+ ]
34
+ },
35
+ {
36
+ "tag": "roxy-western-planets-table",
37
+ "pascal": "RoxyWesternPlanetsTable",
38
+ "slug": "western-planets-table",
39
+ "domain": "Western",
40
+ "renders": "Sign, degree, house, motion columns plus ASC, MC, PoF, Vertex",
41
+ "endpointLabel": "POST /astrology/natal-chart",
42
+ "endpoints": [
43
+ {
44
+ "operationId": "generateNatalChart",
45
+ "method": "POST",
46
+ "path": "/astrology/natal-chart"
47
+ }
48
+ ]
49
+ },
50
+ {
51
+ "tag": "roxy-transits-table",
52
+ "pascal": "RoxyTransitsTable",
53
+ "slug": "transits-table",
54
+ "domain": "Western",
55
+ "renders": "Transit planet positions plus optional aspects to a natal chart",
56
+ "endpointLabel": "POST /astrology/transits",
57
+ "endpoints": [
58
+ {
59
+ "operationId": "calculateTransits",
60
+ "method": "POST",
61
+ "path": "/astrology/transits"
62
+ }
63
+ ]
64
+ },
65
+ {
66
+ "tag": "roxy-aspects-table",
67
+ "pascal": "RoxyAspectsTable",
68
+ "slug": "aspects-table",
69
+ "domain": "Western",
70
+ "renders": "Aspect rows coloured by nature with orb and strength, plus detected chart patterns",
71
+ "endpointLabel": "POST /astrology/aspects, /astrology/transit-aspects, /astrology/aspect-patterns",
72
+ "endpoints": [
73
+ {
74
+ "operationId": "detectAspectPatterns",
75
+ "method": "POST",
76
+ "path": "/astrology/aspect-patterns"
77
+ },
78
+ {
79
+ "operationId": "calculateAspects",
80
+ "method": "POST",
81
+ "path": "/astrology/aspects"
82
+ },
83
+ {
84
+ "operationId": "calculateTransitAspects",
85
+ "method": "POST",
86
+ "path": "/astrology/transit-aspects"
87
+ }
88
+ ]
89
+ },
90
+ {
91
+ "tag": "roxy-moon-phase",
92
+ "pascal": "RoxyMoonPhase",
93
+ "slug": "moon-phase",
94
+ "domain": "Western",
95
+ "renders": "Moon phase card and calendar",
96
+ "endpointLabel": "GET /astrology/moon-phase/{current,upcoming,calendar/...}",
97
+ "endpoints": [
98
+ {
99
+ "operationId": "getMoonCalendar",
100
+ "method": "GET",
101
+ "path": "/astrology/moon-phase/calendar/{year}/{month}",
102
+ "attrs": {
103
+ "mode": "calendar"
104
+ }
105
+ },
106
+ {
107
+ "operationId": "getCurrentMoonPhase",
108
+ "method": "GET",
109
+ "path": "/astrology/moon-phase/current",
110
+ "attrs": {
111
+ "mode": "current"
112
+ }
113
+ },
114
+ {
115
+ "operationId": "getUpcomingMoonPhases",
116
+ "method": "GET",
117
+ "path": "/astrology/moon-phase/upcoming",
118
+ "attrs": {
119
+ "mode": "upcoming"
120
+ }
121
+ }
122
+ ]
123
+ },
124
+ {
125
+ "tag": "roxy-horoscope-card",
126
+ "pascal": "RoxyHoroscopeCard",
127
+ "slug": "horoscope-card",
128
+ "domain": "Western",
129
+ "renders": "Daily, weekly, or monthly horoscope card",
130
+ "endpointLabel": "GET /astrology/horoscope/{sign}/{daily,weekly,monthly}",
131
+ "endpoints": [
132
+ {
133
+ "operationId": "getDailyHoroscope",
134
+ "method": "GET",
135
+ "path": "/astrology/horoscope/{sign}/daily",
136
+ "attrs": {
137
+ "period": "daily"
138
+ }
139
+ },
140
+ {
141
+ "operationId": "getMonthlyHoroscope",
142
+ "method": "GET",
143
+ "path": "/astrology/horoscope/{sign}/monthly",
144
+ "attrs": {
145
+ "period": "monthly"
146
+ }
147
+ },
148
+ {
149
+ "operationId": "getWeeklyHoroscope",
150
+ "method": "GET",
151
+ "path": "/astrology/horoscope/{sign}/weekly",
152
+ "attrs": {
153
+ "period": "weekly"
154
+ }
155
+ }
156
+ ]
157
+ },
158
+ {
159
+ "tag": "roxy-compatibility-card",
160
+ "pascal": "RoxyCompatibilityCard",
161
+ "slug": "compatibility-card",
162
+ "domain": "Cross",
163
+ "renders": "Score card with category breakdown",
164
+ "endpointLabel": "POST /astrology/compatibility-score, /numerology/compatibility, /biorhythm/compatibility",
165
+ "endpoints": [
166
+ {
167
+ "operationId": "calculateCompatibility",
168
+ "method": "POST",
169
+ "path": "/astrology/compatibility-score",
170
+ "attrs": {
171
+ "mode": "astrology"
172
+ }
173
+ },
174
+ {
175
+ "operationId": "calculateBioCompatibility",
176
+ "method": "POST",
177
+ "path": "/biorhythm/compatibility",
178
+ "attrs": {
179
+ "mode": "biorhythm"
180
+ }
181
+ },
182
+ {
183
+ "operationId": "calculateNumCompatibility",
184
+ "method": "POST",
185
+ "path": "/numerology/compatibility",
186
+ "attrs": {
187
+ "mode": "numerology"
188
+ }
189
+ }
190
+ ]
191
+ },
192
+ {
193
+ "tag": "roxy-vedic-kundli",
194
+ "pascal": "RoxyVedicKundli",
195
+ "slug": "vedic-kundli",
196
+ "domain": "Vedic",
197
+ "renders": "South, North, or East Indian kundli with degree detail and optional Chandra Lagna view",
198
+ "endpointLabel": "POST /vedic-astrology/birth-chart",
199
+ "endpoints": [
200
+ {
201
+ "operationId": "generateBirthChart",
202
+ "method": "POST",
203
+ "path": "/vedic-astrology/birth-chart"
204
+ }
205
+ ]
206
+ },
207
+ {
208
+ "tag": "roxy-divisional-chart",
209
+ "pascal": "RoxyDivisionalChart",
210
+ "slug": "divisional-chart",
211
+ "domain": "Vedic",
212
+ "renders": "Generic divisional varga wheel from D2 Hora to D60 Shashtiamsa",
213
+ "endpointLabel": "POST /vedic-astrology/divisional-chart",
214
+ "endpoints": [
215
+ {
216
+ "operationId": "generateDivisionalChart",
217
+ "method": "POST",
218
+ "path": "/vedic-astrology/divisional-chart"
219
+ }
220
+ ]
221
+ },
222
+ {
223
+ "tag": "roxy-kp-chart",
224
+ "pascal": "RoxyKpChart",
225
+ "slug": "kp-chart",
226
+ "domain": "Vedic (KP)",
227
+ "renders": "Ascendant, cusps, and planets with KP stellar hierarchy",
228
+ "endpointLabel": "POST /vedic-astrology/kp/chart",
229
+ "endpoints": [
230
+ {
231
+ "operationId": "generateKpChart",
232
+ "method": "POST",
233
+ "path": "/vedic-astrology/kp/chart"
234
+ }
235
+ ]
236
+ },
237
+ {
238
+ "tag": "roxy-vedic-planets-table",
239
+ "pascal": "RoxyVedicPlanetsTable",
240
+ "slug": "vedic-planets-table",
241
+ "domain": "Vedic",
242
+ "renders": "Degree, nakshatra, pada, lord, bhava, avastha columns",
243
+ "endpointLabel": "POST /vedic-astrology/birth-chart",
244
+ "endpoints": [
245
+ {
246
+ "operationId": "generateBirthChart",
247
+ "method": "POST",
248
+ "path": "/vedic-astrology/birth-chart"
249
+ }
250
+ ]
251
+ },
252
+ {
253
+ "tag": "roxy-kp-planets-table",
254
+ "pascal": "RoxyKpPlanetsTable",
255
+ "slug": "kp-planets-table",
256
+ "domain": "Vedic (KP)",
257
+ "renders": "Sub-lord and sub-sub-lord columns",
258
+ "endpointLabel": "POST /vedic-astrology/kp/planets",
259
+ "endpoints": [
260
+ {
261
+ "operationId": "getKpPlanets",
262
+ "method": "POST",
263
+ "path": "/vedic-astrology/kp/planets"
264
+ }
265
+ ]
266
+ },
267
+ {
268
+ "tag": "roxy-kp-ruling-planets",
269
+ "pascal": "RoxyKpRulingPlanets",
270
+ "slug": "kp-ruling-planets",
271
+ "domain": "Vedic (KP)",
272
+ "renders": "Day lord, Moon/Lagna hierarchies, ruling planets, significators",
273
+ "endpointLabel": "POST /vedic-astrology/kp/ruling-planets",
274
+ "endpoints": [
275
+ {
276
+ "operationId": "getKpRulingPlanets",
277
+ "method": "POST",
278
+ "path": "/vedic-astrology/kp/ruling-planets"
279
+ }
280
+ ]
281
+ },
282
+ {
283
+ "tag": "roxy-ashtakavarga-grid",
284
+ "pascal": "RoxyAshtakavargaGrid",
285
+ "slug": "ashtakavarga-grid",
286
+ "domain": "Vedic",
287
+ "renders": "Sarva, Bhinna, and Shodhya Pinda views in a tabbed heatmap",
288
+ "endpointLabel": "POST /vedic-astrology/ashtakavarga",
289
+ "endpoints": [
290
+ {
291
+ "operationId": "calculateAshtakavarga",
292
+ "method": "POST",
293
+ "path": "/vedic-astrology/ashtakavarga"
294
+ }
295
+ ]
296
+ },
297
+ {
298
+ "tag": "roxy-shadbala-table",
299
+ "pascal": "RoxyShadbalaTable",
300
+ "slug": "shadbala-table",
301
+ "domain": "Vedic",
302
+ "renders": "Six-fold planetary strength bar plus rupas and adequacy badge",
303
+ "endpointLabel": "POST /vedic-astrology/shadbala",
304
+ "endpoints": [
305
+ {
306
+ "operationId": "calculateShadbala",
307
+ "method": "POST",
308
+ "path": "/vedic-astrology/shadbala"
309
+ }
310
+ ]
311
+ },
312
+ {
313
+ "tag": "roxy-dasha-timeline",
314
+ "pascal": "RoxyDashaTimeline",
315
+ "slug": "dasha-timeline",
316
+ "domain": "Vedic",
317
+ "renders": "Vimshottari mahadasha + antardasha + pratyantardasha",
318
+ "endpointLabel": "POST /vedic-astrology/dasha/{current,major,sub/...}",
319
+ "endpoints": [
320
+ {
321
+ "operationId": "getCurrentDasha",
322
+ "method": "POST",
323
+ "path": "/vedic-astrology/dasha/current",
324
+ "attrs": {
325
+ "period": "current"
326
+ }
327
+ },
328
+ {
329
+ "operationId": "getMajorDashas",
330
+ "method": "POST",
331
+ "path": "/vedic-astrology/dasha/major",
332
+ "attrs": {
333
+ "period": "major"
334
+ }
335
+ },
336
+ {
337
+ "operationId": "getSubDashas",
338
+ "method": "POST",
339
+ "path": "/vedic-astrology/dasha/sub/{mahadasha}",
340
+ "attrs": {
341
+ "period": "sub"
342
+ }
343
+ }
344
+ ]
345
+ },
346
+ {
347
+ "tag": "roxy-guna-milan",
348
+ "pascal": "RoxyGunaMilan",
349
+ "slug": "guna-milan",
350
+ "domain": "Vedic",
351
+ "renders": "36-point Ashtakoota with eight sub-scores",
352
+ "endpointLabel": "POST /vedic-astrology/compatibility",
353
+ "endpoints": [
354
+ {
355
+ "operationId": "calculateGunMilan",
356
+ "method": "POST",
357
+ "path": "/vedic-astrology/compatibility"
358
+ }
359
+ ]
360
+ },
361
+ {
362
+ "tag": "roxy-panchang-table",
363
+ "pascal": "RoxyPanchangTable",
364
+ "slug": "panchang-table",
365
+ "domain": "Vedic",
366
+ "renders": "15+ muhurtas in detailed mode",
367
+ "endpointLabel": "POST /vedic-astrology/panchang/{basic,detailed}",
368
+ "endpoints": [
369
+ {
370
+ "operationId": "getBasicPanchang",
371
+ "method": "POST",
372
+ "path": "/vedic-astrology/panchang/basic",
373
+ "attrs": {
374
+ "detail": "basic"
375
+ }
376
+ },
377
+ {
378
+ "operationId": "getDetailedPanchang",
379
+ "method": "POST",
380
+ "path": "/vedic-astrology/panchang/detailed",
381
+ "attrs": {
382
+ "detail": "detailed"
383
+ }
384
+ }
385
+ ]
386
+ },
387
+ {
388
+ "tag": "roxy-vedic-aspects",
389
+ "pascal": "RoxyVedicAspects",
390
+ "slug": "vedic-aspects",
391
+ "domain": "Vedic",
392
+ "renders": "Graha drishti rows with aspect type, strength, and orb, plus mutual aspects",
393
+ "endpointLabel": "POST /vedic-astrology/aspects",
394
+ "endpoints": [
395
+ {
396
+ "operationId": "calculateDrishti",
397
+ "method": "POST",
398
+ "path": "/vedic-astrology/aspects"
399
+ }
400
+ ]
401
+ },
402
+ {
403
+ "tag": "roxy-hora-table",
404
+ "pascal": "RoxyHoraTable",
405
+ "slug": "hora-table",
406
+ "domain": "Vedic",
407
+ "renders": "Day and night planetary hours with ruling planet and window",
408
+ "endpointLabel": "POST /vedic-astrology/panchang/hora",
409
+ "endpoints": [
410
+ {
411
+ "operationId": "getHora",
412
+ "method": "POST",
413
+ "path": "/vedic-astrology/panchang/hora"
414
+ }
415
+ ]
416
+ },
417
+ {
418
+ "tag": "roxy-choghadiya-grid",
419
+ "pascal": "RoxyChoghadiyaGrid",
420
+ "slug": "choghadiya-grid",
421
+ "domain": "Vedic",
422
+ "renders": "Day and night Choghadiya muhurta tiles colored by effect",
423
+ "endpointLabel": "POST /vedic-astrology/panchang/choghadiya",
424
+ "endpoints": [
425
+ {
426
+ "operationId": "getChoghadiya",
427
+ "method": "POST",
428
+ "path": "/vedic-astrology/panchang/choghadiya"
429
+ }
430
+ ]
431
+ },
432
+ {
433
+ "tag": "roxy-yoga-list",
434
+ "pascal": "RoxyYogaList",
435
+ "slug": "yoga-list",
436
+ "domain": "Vedic",
437
+ "renders": "Filterable yoga cards from the 300 plus yoga catalog",
438
+ "endpointLabel": "GET /vedic-astrology/yoga, /yoga/{id}",
439
+ "endpoints": [
440
+ {
441
+ "operationId": "listYogas",
442
+ "method": "GET",
443
+ "path": "/vedic-astrology/yoga"
444
+ },
445
+ {
446
+ "operationId": "detectYogas",
447
+ "method": "POST",
448
+ "path": "/vedic-astrology/yoga/detect"
449
+ }
450
+ ]
451
+ },
452
+ {
453
+ "tag": "roxy-nakshatra-card",
454
+ "pascal": "RoxyNakshatraCard",
455
+ "slug": "nakshatra-card",
456
+ "domain": "Vedic",
457
+ "renders": "Lord, deity, symbol, characteristics, remedies",
458
+ "endpointLabel": "GET /vedic-astrology/nakshatras/{id}",
459
+ "endpoints": [
460
+ {
461
+ "operationId": "getNakshatra",
462
+ "method": "GET",
463
+ "path": "/vedic-astrology/nakshatras/{id}"
464
+ }
465
+ ]
466
+ },
467
+ {
468
+ "tag": "roxy-dosha-card",
469
+ "pascal": "RoxyDoshaCard",
470
+ "slug": "dosha-card",
471
+ "domain": "Vedic",
472
+ "renders": "Presence, severity, remedies, scoped effects",
473
+ "endpointLabel": "POST /vedic-astrology/dosha/{manglik,kalsarpa,sadhesati}",
474
+ "endpoints": [
475
+ {
476
+ "operationId": "checkKalsarpaDosha",
477
+ "method": "POST",
478
+ "path": "/vedic-astrology/dosha/kalsarpa",
479
+ "attrs": {
480
+ "type": "kalsarpa"
481
+ }
482
+ },
483
+ {
484
+ "operationId": "checkManglikDosha",
485
+ "method": "POST",
486
+ "path": "/vedic-astrology/dosha/manglik",
487
+ "attrs": {
488
+ "type": "manglik"
489
+ }
490
+ },
491
+ {
492
+ "operationId": "checkSadhesati",
493
+ "method": "POST",
494
+ "path": "/vedic-astrology/dosha/sadhesati",
495
+ "attrs": {
496
+ "type": "sadhesati"
497
+ }
498
+ }
499
+ ]
500
+ },
501
+ {
502
+ "tag": "roxy-numerology-card",
503
+ "pascal": "RoxyNumerologyCard",
504
+ "slug": "numerology-card",
505
+ "domain": "Numerology",
506
+ "renders": "Life path, expression, soul urge, personality, personal year, full chart",
507
+ "endpointLabel": "POST /numerology/{life-path,expression,soul-urge,personality,birth-day,maturity,daily,personal-day,personal-month,personal-year,chart}",
508
+ "endpoints": [
509
+ {
510
+ "operationId": "calculateBirthDay",
511
+ "method": "POST",
512
+ "path": "/numerology/birth-day",
513
+ "attrs": {
514
+ "type": "birth-day"
515
+ }
516
+ },
517
+ {
518
+ "operationId": "generateNumerologyChart",
519
+ "method": "POST",
520
+ "path": "/numerology/chart",
521
+ "attrs": {
522
+ "type": "chart"
523
+ }
524
+ },
525
+ {
526
+ "operationId": "getDailyNumber",
527
+ "method": "POST",
528
+ "path": "/numerology/daily",
529
+ "attrs": {
530
+ "type": "daily"
531
+ }
532
+ },
533
+ {
534
+ "operationId": "calculateExpression",
535
+ "method": "POST",
536
+ "path": "/numerology/expression",
537
+ "attrs": {
538
+ "type": "expression"
539
+ }
540
+ },
541
+ {
542
+ "operationId": "calculateLifePath",
543
+ "method": "POST",
544
+ "path": "/numerology/life-path",
545
+ "attrs": {
546
+ "type": "life-path"
547
+ }
548
+ },
549
+ {
550
+ "operationId": "calculateMaturity",
551
+ "method": "POST",
552
+ "path": "/numerology/maturity",
553
+ "attrs": {
554
+ "type": "maturity"
555
+ }
556
+ },
557
+ {
558
+ "operationId": "calculatePersonalDay",
559
+ "method": "POST",
560
+ "path": "/numerology/personal-day",
561
+ "attrs": {
562
+ "type": "personal-day"
563
+ }
564
+ },
565
+ {
566
+ "operationId": "calculatePersonalMonth",
567
+ "method": "POST",
568
+ "path": "/numerology/personal-month",
569
+ "attrs": {
570
+ "type": "personal-month"
571
+ }
572
+ },
573
+ {
574
+ "operationId": "calculatePersonalYear",
575
+ "method": "POST",
576
+ "path": "/numerology/personal-year",
577
+ "attrs": {
578
+ "type": "personal-year"
579
+ }
580
+ },
581
+ {
582
+ "operationId": "calculatePersonality",
583
+ "method": "POST",
584
+ "path": "/numerology/personality",
585
+ "attrs": {
586
+ "type": "personality"
587
+ }
588
+ },
589
+ {
590
+ "operationId": "calculateSoulUrge",
591
+ "method": "POST",
592
+ "path": "/numerology/soul-urge",
593
+ "attrs": {
594
+ "type": "soul-urge"
595
+ }
596
+ }
597
+ ]
598
+ },
599
+ {
600
+ "tag": "roxy-tarot-card",
601
+ "pascal": "RoxyTarotCard",
602
+ "slug": "tarot-card",
603
+ "domain": "Tarot",
604
+ "renders": "Single card with upright and reversed flip",
605
+ "endpointLabel": "GET /tarot/cards/{id}, POST /tarot/daily",
606
+ "endpoints": [
607
+ {
608
+ "operationId": "getDailyCard",
609
+ "method": "POST",
610
+ "path": "/tarot/daily"
611
+ }
612
+ ]
613
+ },
614
+ {
615
+ "tag": "roxy-tarot-catalog",
616
+ "pascal": "RoxyTarotCatalog",
617
+ "slug": "tarot-catalog",
618
+ "domain": "Tarot",
619
+ "renders": "Deck gallery tiles with card art, name, and arcana and suit",
620
+ "endpointLabel": "GET /tarot/cards",
621
+ "endpoints": [
622
+ {
623
+ "operationId": "listCards",
624
+ "method": "GET",
625
+ "path": "/tarot/cards"
626
+ }
627
+ ]
628
+ },
629
+ {
630
+ "tag": "roxy-tarot-spread",
631
+ "pascal": "RoxyTarotSpread",
632
+ "slug": "tarot-spread",
633
+ "domain": "Tarot",
634
+ "renders": "Spreads with positions and reading",
635
+ "endpointLabel": "POST /tarot/spreads/{three-card,celtic-cross,love}, /tarot/yes-no, /tarot/draw",
636
+ "endpoints": [
637
+ {
638
+ "operationId": "drawCards",
639
+ "method": "POST",
640
+ "path": "/tarot/draw",
641
+ "attrs": {
642
+ "spread": "draw"
643
+ }
644
+ },
645
+ {
646
+ "operationId": "castCareerSpread",
647
+ "method": "POST",
648
+ "path": "/tarot/spreads/career",
649
+ "attrs": {
650
+ "spread": "career"
651
+ }
652
+ },
653
+ {
654
+ "operationId": "castCelticCross",
655
+ "method": "POST",
656
+ "path": "/tarot/spreads/celtic-cross",
657
+ "attrs": {
658
+ "spread": "celtic-cross"
659
+ }
660
+ },
661
+ {
662
+ "operationId": "castCustomSpread",
663
+ "method": "POST",
664
+ "path": "/tarot/spreads/custom",
665
+ "attrs": {
666
+ "spread": "custom"
667
+ }
668
+ },
669
+ {
670
+ "operationId": "castLoveSpread",
671
+ "method": "POST",
672
+ "path": "/tarot/spreads/love",
673
+ "attrs": {
674
+ "spread": "love"
675
+ }
676
+ },
677
+ {
678
+ "operationId": "castThreeCard",
679
+ "method": "POST",
680
+ "path": "/tarot/spreads/three-card",
681
+ "attrs": {
682
+ "spread": "three-card"
683
+ }
684
+ },
685
+ {
686
+ "operationId": "castYesNo",
687
+ "method": "POST",
688
+ "path": "/tarot/yes-no",
689
+ "attrs": {
690
+ "spread": "yes-no"
691
+ }
692
+ }
693
+ ]
694
+ },
695
+ {
696
+ "tag": "roxy-bodygraph",
697
+ "pascal": "RoxyBodygraph",
698
+ "slug": "bodygraph",
699
+ "domain": "Human Design",
700
+ "renders": "Nine-center chart with defined and open centers, active channels, gates, and a type and authority summary",
701
+ "endpointLabel": "POST /human-design/bodygraph",
702
+ "endpoints": [
703
+ {
704
+ "operationId": "generateBodygraph",
705
+ "method": "POST",
706
+ "path": "/human-design/bodygraph"
707
+ }
708
+ ]
709
+ },
710
+ {
711
+ "tag": "roxy-hd-connection",
712
+ "pascal": "RoxyHdConnection",
713
+ "slug": "hd-connection",
714
+ "domain": "Human Design",
715
+ "renders": "Electromagnetic, compromise, and dominance channels between two charts",
716
+ "endpointLabel": "POST /human-design/connection",
717
+ "endpoints": [
718
+ {
719
+ "operationId": "calculateConnection",
720
+ "method": "POST",
721
+ "path": "/human-design/connection"
722
+ }
723
+ ]
724
+ },
725
+ {
726
+ "tag": "roxy-hd-penta",
727
+ "pascal": "RoxyHdPenta",
728
+ "slug": "hd-penta",
729
+ "domain": "Human Design",
730
+ "renders": "Group penta channels split into upper and lower triangles",
731
+ "endpointLabel": "POST /human-design/penta",
732
+ "endpoints": [
733
+ {
734
+ "operationId": "calculatePenta",
735
+ "method": "POST",
736
+ "path": "/human-design/penta"
737
+ }
738
+ ]
739
+ },
740
+ {
741
+ "tag": "roxy-hd-variables",
742
+ "pascal": "RoxyHdVariables",
743
+ "slug": "hd-variables",
744
+ "domain": "Human Design",
745
+ "renders": "The four transformation arrows with direction and PHS labels",
746
+ "endpointLabel": "POST /human-design/variables",
747
+ "endpoints": [
748
+ {
749
+ "operationId": "calculateVariables",
750
+ "method": "POST",
751
+ "path": "/human-design/variables"
752
+ }
753
+ ]
754
+ },
755
+ {
756
+ "tag": "roxy-forecast-timeline",
757
+ "pascal": "RoxyForecastTimeline",
758
+ "slug": "forecast-timeline",
759
+ "domain": "Forecast",
760
+ "renders": "Date-grouped events across Western, Vedic, and biorhythm domains, weighted by significance",
761
+ "endpointLabel": "POST /forecast/timeline",
762
+ "endpoints": [
763
+ {
764
+ "operationId": "findSignificantDates",
765
+ "method": "POST",
766
+ "path": "/forecast/significant-dates"
767
+ },
768
+ {
769
+ "operationId": "generateTimeline",
770
+ "method": "POST",
771
+ "path": "/forecast/timeline"
772
+ },
773
+ {
774
+ "operationId": "forecastTransits",
775
+ "method": "POST",
776
+ "path": "/forecast/transits"
777
+ }
778
+ ]
779
+ },
780
+ {
781
+ "tag": "roxy-forecast-digest",
782
+ "pascal": "RoxyForecastDigest",
783
+ "slug": "forecast-digest",
784
+ "domain": "Forecast",
785
+ "renders": "Per-window event counts, domain breakdown, and the highest-significance events",
786
+ "endpointLabel": "POST /forecast/digest",
787
+ "endpoints": [
788
+ {
789
+ "operationId": "generateDigest",
790
+ "method": "POST",
791
+ "path": "/forecast/digest"
792
+ }
793
+ ]
794
+ },
795
+ {
796
+ "tag": "roxy-biorhythm-chart",
797
+ "pascal": "RoxyBiorhythmChart",
798
+ "slug": "biorhythm-chart",
799
+ "domain": "Biorhythm",
800
+ "renders": "Daily bars, forecast cycle lines, critical days",
801
+ "endpointLabel": "POST /biorhythm/{daily,forecast,critical-days}",
802
+ "endpoints": [
803
+ {
804
+ "operationId": "getCriticalDays",
805
+ "method": "POST",
806
+ "path": "/biorhythm/critical-days",
807
+ "attrs": {
808
+ "mode": "critical-days"
809
+ }
810
+ },
811
+ {
812
+ "operationId": "getDailyBiorhythm",
813
+ "method": "POST",
814
+ "path": "/biorhythm/daily",
815
+ "attrs": {
816
+ "mode": "daily"
817
+ }
818
+ },
819
+ {
820
+ "operationId": "getForecast",
821
+ "method": "POST",
822
+ "path": "/biorhythm/forecast",
823
+ "attrs": {
824
+ "mode": "forecast"
825
+ }
826
+ }
827
+ ]
828
+ },
829
+ {
830
+ "tag": "roxy-hexagram",
831
+ "pascal": "RoxyHexagram",
832
+ "slug": "hexagram",
833
+ "domain": "I Ching",
834
+ "renders": "Hexagram with trigrams, judgment, image, changing lines",
835
+ "endpointLabel": "GET /iching/hexagrams/{number}, /iching/cast, POST /iching/daily, /iching/daily/cast",
836
+ "endpoints": [
837
+ {
838
+ "operationId": "getRandomHexagram",
839
+ "method": "GET",
840
+ "path": "/iching/hexagrams/random"
841
+ }
842
+ ]
843
+ },
844
+ {
845
+ "tag": "roxy-crystal-card",
846
+ "pascal": "RoxyCrystalCard",
847
+ "slug": "crystal-card",
848
+ "domain": "Crystals",
849
+ "renders": "Photo, meaning sections, chakra, zodiac, element, hardness, keywords, and pairings",
850
+ "endpointLabel": "GET /crystals/{id}",
851
+ "endpoints": [
852
+ {
853
+ "operationId": "getCrystal",
854
+ "method": "GET",
855
+ "path": "/crystals/{id}"
856
+ }
857
+ ]
858
+ },
859
+ {
860
+ "tag": "roxy-crystal-grid",
861
+ "pascal": "RoxyCrystalGrid",
862
+ "slug": "crystal-grid",
863
+ "domain": "Crystals",
864
+ "renders": "Crystal gallery tiles with photo, name, and colour swatches",
865
+ "endpointLabel": "GET /crystals, /crystals/chakra/{chakra}, /crystals/element/{element}, /crystals/zodiac/{sign}, /crystals/birthstone/{month}, /crystals/search",
866
+ "endpoints": [
867
+ {
868
+ "operationId": "getCrystalsByChakra",
869
+ "method": "GET",
870
+ "path": "/crystals/chakra/{chakra}"
871
+ },
872
+ {
873
+ "operationId": "getCrystalsByElement",
874
+ "method": "GET",
875
+ "path": "/crystals/element/{element}"
876
+ },
877
+ {
878
+ "operationId": "getCrystalsByZodiac",
879
+ "method": "GET",
880
+ "path": "/crystals/zodiac/{sign}"
881
+ }
882
+ ]
883
+ },
884
+ {
885
+ "tag": "roxy-dream-card",
886
+ "pascal": "RoxyDreamCard",
887
+ "slug": "dream-card",
888
+ "domain": "Dreams",
889
+ "renders": "Symbol name, interpretation body, and letter chip",
890
+ "endpointLabel": "GET /dreams/symbols/{id}",
891
+ "endpoints": [
892
+ {
893
+ "operationId": "getDreamSymbol",
894
+ "method": "GET",
895
+ "path": "/dreams/symbols/{id}"
896
+ }
897
+ ]
898
+ },
899
+ {
900
+ "tag": "roxy-dream-search",
901
+ "pascal": "RoxyDreamSearch",
902
+ "slug": "dream-search",
903
+ "domain": "Dreams",
904
+ "renders": "Matched dream symbols as selectable tiles with a letter chip",
905
+ "endpointLabel": "GET /dreams/symbols",
906
+ "endpoints": [
907
+ {
908
+ "operationId": "searchDreamSymbols",
909
+ "method": "GET",
910
+ "path": "/dreams/symbols"
911
+ }
912
+ ]
913
+ },
914
+ {
915
+ "tag": "roxy-angel-number-card",
916
+ "pascal": "RoxyAngelNumberCard",
917
+ "slug": "angel-number-card",
918
+ "domain": "Angel Numbers",
919
+ "renders": "Number meaning with spiritual, love, career, money, twin flame, biblical, and shadow sections",
920
+ "endpointLabel": "GET /angel-numbers/numbers/{number}",
921
+ "endpoints": [
922
+ {
923
+ "operationId": "getAngelNumber",
924
+ "method": "GET",
925
+ "path": "/angel-numbers/numbers/{number}"
926
+ }
927
+ ]
928
+ },
929
+ {
930
+ "tag": "roxy-angel-number-lookup",
931
+ "pascal": "RoxyAngelNumberLookup",
932
+ "slug": "angel-number-lookup",
933
+ "domain": "Angel Numbers",
934
+ "renders": "Pattern analysis plus known meaning and digit-root fallback",
935
+ "endpointLabel": "GET /angel-numbers/lookup",
936
+ "endpoints": [
937
+ {
938
+ "operationId": "analyzeNumberSequence",
939
+ "method": "GET",
940
+ "path": "/angel-numbers/lookup"
941
+ }
942
+ ]
943
+ },
944
+ {
945
+ "tag": "roxy-reference-card",
946
+ "pascal": "RoxyReferenceCard",
947
+ "slug": "reference-card",
948
+ "domain": "Reference",
949
+ "renders": "Symbol, name, description, keyword chips, and an attribute grid for any glossary lookup",
950
+ "endpointLabel": "GET /astrology/{signs,planet-meanings}/{id}, /vedic-astrology/rashis/{id}, /iching/trigrams/{id}, /human-design/{gates,centers}/{id}, /numerology/{meanings,compound-number}/{number}",
951
+ "endpoints": [
952
+ {
953
+ "operationId": "getPlanetMeaning",
954
+ "method": "GET",
955
+ "path": "/astrology/planet-meanings/{id}"
956
+ },
957
+ {
958
+ "operationId": "getZodiacSign",
959
+ "method": "GET",
960
+ "path": "/astrology/signs/{id}"
961
+ },
962
+ {
963
+ "operationId": "getCenter",
964
+ "method": "GET",
965
+ "path": "/human-design/centers/{id}"
966
+ },
967
+ {
968
+ "operationId": "getGate",
969
+ "method": "GET",
970
+ "path": "/human-design/gates/{number}"
971
+ },
972
+ {
973
+ "operationId": "getTrigram",
974
+ "method": "GET",
975
+ "path": "/iching/trigrams/{id}"
976
+ },
977
+ {
978
+ "operationId": "getCompoundNumber",
979
+ "method": "GET",
980
+ "path": "/numerology/compound-number/{number}"
981
+ },
982
+ {
983
+ "operationId": "getNumberMeaning",
984
+ "method": "GET",
985
+ "path": "/numerology/meanings/{number}"
986
+ },
987
+ {
988
+ "operationId": "getRashi",
989
+ "method": "GET",
990
+ "path": "/vedic-astrology/rashis/{id}"
991
+ }
992
+ ]
993
+ },
994
+ {
995
+ "tag": "roxy-endpoint-form",
996
+ "pascal": "RoxyEndpointForm",
997
+ "slug": "endpoint-form",
998
+ "domain": "Helper",
999
+ "renders": "Schema-driven form, emits roxy-submit",
1000
+ "endpointLabel": "Any endpoint, from the spec",
1001
+ "endpoints": []
1002
+ },
1003
+ {
1004
+ "tag": "roxy-location-search",
1005
+ "pascal": "RoxyLocationSearch",
1006
+ "slug": "location-search",
1007
+ "domain": "Helper",
1008
+ "renders": "Debounced city search input, emits roxy-location-select",
1009
+ "endpointLabel": "GET /location/search",
1010
+ "endpoints": []
1011
+ },
1012
+ {
1013
+ "tag": "roxy-data",
1014
+ "pascal": "RoxyData",
1015
+ "slug": "data",
1016
+ "domain": "Helper",
1017
+ "renders": "Generic fallback renderer for unknown shapes",
1018
+ "endpointLabel": "Any response shape",
1019
+ "endpoints": []
1020
+ }
1021
+ ]
1022
+ }