gridform-mcp 1.0.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 (729) hide show
  1. package/GUIDE.md +244 -0
  2. package/LICENSE +31 -0
  3. package/README.md +86 -0
  4. package/dist/server.mjs +74880 -0
  5. package/fonts/AbrilFatface-400.woff2 +0 -0
  6. package/fonts/AlbertSans-400.woff2 +0 -0
  7. package/fonts/AlbertSans-500.woff2 +0 -0
  8. package/fonts/AlbertSans-700.woff2 +0 -0
  9. package/fonts/AlbertSans-900.woff2 +0 -0
  10. package/fonts/Alegreya-400.woff2 +0 -0
  11. package/fonts/Alegreya-500.woff2 +0 -0
  12. package/fonts/Alegreya-700.woff2 +0 -0
  13. package/fonts/Alegreya-900.woff2 +0 -0
  14. package/fonts/Anton-400.woff2 +0 -0
  15. package/fonts/Archivo-400.woff2 +0 -0
  16. package/fonts/Archivo-500.woff2 +0 -0
  17. package/fonts/Archivo-700.woff2 +0 -0
  18. package/fonts/Archivo-900.woff2 +0 -0
  19. package/fonts/ArchivoBlack-400.woff2 +0 -0
  20. package/fonts/Arimo-400.woff2 +0 -0
  21. package/fonts/Arimo-500.woff2 +0 -0
  22. package/fonts/Arimo-700.woff2 +0 -0
  23. package/fonts/Asap-400.woff2 +0 -0
  24. package/fonts/Asap-500.woff2 +0 -0
  25. package/fonts/Asap-700.woff2 +0 -0
  26. package/fonts/Asap-900.woff2 +0 -0
  27. package/fonts/Assistant-400.woff2 +0 -0
  28. package/fonts/Assistant-500.woff2 +0 -0
  29. package/fonts/Assistant-700.woff2 +0 -0
  30. package/fonts/Baloo2-400.woff2 +0 -0
  31. package/fonts/Baloo2-500.woff2 +0 -0
  32. package/fonts/Baloo2-700.woff2 +0 -0
  33. package/fonts/BeVietnamPro-400.woff2 +0 -0
  34. package/fonts/BeVietnamPro-500.woff2 +0 -0
  35. package/fonts/BeVietnamPro-700.woff2 +0 -0
  36. package/fonts/BeVietnamPro-900.woff2 +0 -0
  37. package/fonts/BebasNeue-400.woff2 +0 -0
  38. package/fonts/BigShouldersDisplay-400.woff2 +0 -0
  39. package/fonts/BigShouldersDisplay-500.woff2 +0 -0
  40. package/fonts/BigShouldersDisplay-700.woff2 +0 -0
  41. package/fonts/BigShouldersDisplay-900.woff2 +0 -0
  42. package/fonts/Bitter-400.woff2 +0 -0
  43. package/fonts/Bitter-500.woff2 +0 -0
  44. package/fonts/Bitter-700.woff2 +0 -0
  45. package/fonts/Bitter-900.woff2 +0 -0
  46. package/fonts/BodoniModa-400.woff2 +0 -0
  47. package/fonts/BodoniModa-500.woff2 +0 -0
  48. package/fonts/BodoniModa-700.woff2 +0 -0
  49. package/fonts/BodoniModa-900.woff2 +0 -0
  50. package/fonts/BricolageGrotesque-400.woff2 +0 -0
  51. package/fonts/BricolageGrotesque-500.woff2 +0 -0
  52. package/fonts/BricolageGrotesque-700.woff2 +0 -0
  53. package/fonts/Bungee-400.woff2 +0 -0
  54. package/fonts/Cabin-400.woff2 +0 -0
  55. package/fonts/Cabin-500.woff2 +0 -0
  56. package/fonts/Cabin-700.woff2 +0 -0
  57. package/fonts/Chivo-400.woff2 +0 -0
  58. package/fonts/Chivo-500.woff2 +0 -0
  59. package/fonts/Chivo-700.woff2 +0 -0
  60. package/fonts/Chivo-900.woff2 +0 -0
  61. package/fonts/Comfortaa-400.woff2 +0 -0
  62. package/fonts/Comfortaa-500.woff2 +0 -0
  63. package/fonts/Comfortaa-700.woff2 +0 -0
  64. package/fonts/CormorantGaramond-400.woff2 +0 -0
  65. package/fonts/CormorantGaramond-500.woff2 +0 -0
  66. package/fonts/CormorantGaramond-700.woff2 +0 -0
  67. package/fonts/CrimsonPro-400.woff2 +0 -0
  68. package/fonts/CrimsonPro-500.woff2 +0 -0
  69. package/fonts/CrimsonPro-700.woff2 +0 -0
  70. package/fonts/CrimsonPro-900.woff2 +0 -0
  71. package/fonts/DMMono-400.woff2 +0 -0
  72. package/fonts/DMMono-500.woff2 +0 -0
  73. package/fonts/DMSans-400.woff2 +0 -0
  74. package/fonts/DMSans-500.woff2 +0 -0
  75. package/fonts/DMSans-700.woff2 +0 -0
  76. package/fonts/DMSans-900.woff2 +0 -0
  77. package/fonts/DMSerifDisplay-400.woff2 +0 -0
  78. package/fonts/Domine-400.woff2 +0 -0
  79. package/fonts/Domine-500.woff2 +0 -0
  80. package/fonts/Domine-700.woff2 +0 -0
  81. package/fonts/EBGaramond-400.woff2 +0 -0
  82. package/fonts/EBGaramond-500.woff2 +0 -0
  83. package/fonts/EBGaramond-700.woff2 +0 -0
  84. package/fonts/EncodeSans-400.woff2 +0 -0
  85. package/fonts/EncodeSans-500.woff2 +0 -0
  86. package/fonts/EncodeSans-700.woff2 +0 -0
  87. package/fonts/EncodeSans-900.woff2 +0 -0
  88. package/fonts/Epilogue-400.woff2 +0 -0
  89. package/fonts/Epilogue-500.woff2 +0 -0
  90. package/fonts/Epilogue-700.woff2 +0 -0
  91. package/fonts/Epilogue-900.woff2 +0 -0
  92. package/fonts/Exo2-400.woff2 +0 -0
  93. package/fonts/Exo2-500.woff2 +0 -0
  94. package/fonts/Exo2-700.woff2 +0 -0
  95. package/fonts/Exo2-900.woff2 +0 -0
  96. package/fonts/FamiljenGrotesk-400.woff2 +0 -0
  97. package/fonts/FamiljenGrotesk-500.woff2 +0 -0
  98. package/fonts/FamiljenGrotesk-700.woff2 +0 -0
  99. package/fonts/Figtree-400.woff2 +0 -0
  100. package/fonts/Figtree-500.woff2 +0 -0
  101. package/fonts/Figtree-700.woff2 +0 -0
  102. package/fonts/Figtree-900.woff2 +0 -0
  103. package/fonts/FiraCode-400.woff2 +0 -0
  104. package/fonts/FiraCode-500.woff2 +0 -0
  105. package/fonts/FiraCode-700.woff2 +0 -0
  106. package/fonts/FiraSans-400.woff2 +0 -0
  107. package/fonts/FiraSans-500.woff2 +0 -0
  108. package/fonts/FiraSans-700.woff2 +0 -0
  109. package/fonts/FiraSans-900.woff2 +0 -0
  110. package/fonts/FjallaOne-400.woff2 +0 -0
  111. package/fonts/FrankRuhlLibre-400.woff2 +0 -0
  112. package/fonts/FrankRuhlLibre-500.woff2 +0 -0
  113. package/fonts/FrankRuhlLibre-700.woff2 +0 -0
  114. package/fonts/FrankRuhlLibre-900.woff2 +0 -0
  115. package/fonts/Fraunces-400.woff2 +0 -0
  116. package/fonts/Fraunces-500.woff2 +0 -0
  117. package/fonts/Fraunces-700.woff2 +0 -0
  118. package/fonts/Fraunces-900.woff2 +0 -0
  119. package/fonts/Fredoka-400.woff2 +0 -0
  120. package/fonts/Fredoka-500.woff2 +0 -0
  121. package/fonts/Fredoka-700.woff2 +0 -0
  122. package/fonts/Gabarito-400.woff2 +0 -0
  123. package/fonts/Gabarito-500.woff2 +0 -0
  124. package/fonts/Gabarito-700.woff2 +0 -0
  125. package/fonts/Gabarito-900.woff2 +0 -0
  126. package/fonts/Geist-400.woff2 +0 -0
  127. package/fonts/Geist-500.woff2 +0 -0
  128. package/fonts/Geist-700.woff2 +0 -0
  129. package/fonts/Geist-900.woff2 +0 -0
  130. package/fonts/GeistMono-400.woff2 +0 -0
  131. package/fonts/GeistMono-500.woff2 +0 -0
  132. package/fonts/GeistMono-700.woff2 +0 -0
  133. package/fonts/Geologica-400.woff2 +0 -0
  134. package/fonts/Geologica-500.woff2 +0 -0
  135. package/fonts/Geologica-700.woff2 +0 -0
  136. package/fonts/Geologica-900.woff2 +0 -0
  137. package/fonts/Gloock-400.woff2 +0 -0
  138. package/fonts/HankenGrotesk-400.woff2 +0 -0
  139. package/fonts/HankenGrotesk-500.woff2 +0 -0
  140. package/fonts/HankenGrotesk-700.woff2 +0 -0
  141. package/fonts/HankenGrotesk-900.woff2 +0 -0
  142. package/fonts/Hind-400.woff2 +0 -0
  143. package/fonts/Hind-500.woff2 +0 -0
  144. package/fonts/Hind-700.woff2 +0 -0
  145. package/fonts/IBMPlexMono-400.woff2 +0 -0
  146. package/fonts/IBMPlexMono-500.woff2 +0 -0
  147. package/fonts/IBMPlexMono-700.woff2 +0 -0
  148. package/fonts/IBMPlexSans-400.woff2 +0 -0
  149. package/fonts/IBMPlexSans-500.woff2 +0 -0
  150. package/fonts/IBMPlexSans-700.woff2 +0 -0
  151. package/fonts/InstrumentSans-400.woff2 +0 -0
  152. package/fonts/InstrumentSans-500.woff2 +0 -0
  153. package/fonts/InstrumentSans-700.woff2 +0 -0
  154. package/fonts/InstrumentSerif-400.woff2 +0 -0
  155. package/fonts/Inter-400.woff2 +0 -0
  156. package/fonts/Inter-500.woff2 +0 -0
  157. package/fonts/Inter-700.woff2 +0 -0
  158. package/fonts/Inter-900.woff2 +0 -0
  159. package/fonts/InterTight-400.woff2 +0 -0
  160. package/fonts/InterTight-500.woff2 +0 -0
  161. package/fonts/InterTight-700.woff2 +0 -0
  162. package/fonts/InterTight-900.woff2 +0 -0
  163. package/fonts/InterVar.woff2 +0 -0
  164. package/fonts/Italiana-400.woff2 +0 -0
  165. package/fonts/JetBrainsMono-400.woff2 +0 -0
  166. package/fonts/JetBrainsMono-500.woff2 +0 -0
  167. package/fonts/JetBrainsMono-700.woff2 +0 -0
  168. package/fonts/JosefinSlab-400.woff2 +0 -0
  169. package/fonts/JosefinSlab-500.woff2 +0 -0
  170. package/fonts/JosefinSlab-700.woff2 +0 -0
  171. package/fonts/Jost-400.woff2 +0 -0
  172. package/fonts/Jost-500.woff2 +0 -0
  173. package/fonts/Jost-700.woff2 +0 -0
  174. package/fonts/Jost-900.woff2 +0 -0
  175. package/fonts/Kanit-400.woff2 +0 -0
  176. package/fonts/Kanit-500.woff2 +0 -0
  177. package/fonts/Kanit-700.woff2 +0 -0
  178. package/fonts/Kanit-900.woff2 +0 -0
  179. package/fonts/Karla-400.woff2 +0 -0
  180. package/fonts/Karla-500.woff2 +0 -0
  181. package/fonts/Karla-700.woff2 +0 -0
  182. package/fonts/Khand-400.woff2 +0 -0
  183. package/fonts/Khand-500.woff2 +0 -0
  184. package/fonts/Khand-700.woff2 +0 -0
  185. package/fonts/LeagueSpartan-400.woff2 +0 -0
  186. package/fonts/LeagueSpartan-500.woff2 +0 -0
  187. package/fonts/LeagueSpartan-700.woff2 +0 -0
  188. package/fonts/LeagueSpartan-900.woff2 +0 -0
  189. package/fonts/Lexend-400.woff2 +0 -0
  190. package/fonts/Lexend-500.woff2 +0 -0
  191. package/fonts/Lexend-700.woff2 +0 -0
  192. package/fonts/Lexend-900.woff2 +0 -0
  193. package/fonts/LexendDeca-400.woff2 +0 -0
  194. package/fonts/LexendDeca-500.woff2 +0 -0
  195. package/fonts/LexendDeca-700.woff2 +0 -0
  196. package/fonts/LexendDeca-900.woff2 +0 -0
  197. package/fonts/LibreBaskerville-400.woff2 +0 -0
  198. package/fonts/LibreBaskerville-500.woff2 +0 -0
  199. package/fonts/LibreBaskerville-700.woff2 +0 -0
  200. package/fonts/LibreCaslonDisplay-400.woff2 +0 -0
  201. package/fonts/LibreFranklin-400.woff2 +0 -0
  202. package/fonts/LibreFranklin-500.woff2 +0 -0
  203. package/fonts/LibreFranklin-700.woff2 +0 -0
  204. package/fonts/LibreFranklin-900.woff2 +0 -0
  205. package/fonts/Literata-400.woff2 +0 -0
  206. package/fonts/Literata-500.woff2 +0 -0
  207. package/fonts/Literata-700.woff2 +0 -0
  208. package/fonts/Literata-900.woff2 +0 -0
  209. package/fonts/Lora-400.woff2 +0 -0
  210. package/fonts/Lora-500.woff2 +0 -0
  211. package/fonts/Lora-700.woff2 +0 -0
  212. package/fonts/Manrope-400.woff2 +0 -0
  213. package/fonts/Manrope-500.woff2 +0 -0
  214. package/fonts/Manrope-700.woff2 +0 -0
  215. package/fonts/Marcellus-400.woff2 +0 -0
  216. package/fonts/MartianMono-400.woff2 +0 -0
  217. package/fonts/MartianMono-500.woff2 +0 -0
  218. package/fonts/MartianMono-700.woff2 +0 -0
  219. package/fonts/Montserrat-400.woff2 +0 -0
  220. package/fonts/Montserrat-500.woff2 +0 -0
  221. package/fonts/Montserrat-700.woff2 +0 -0
  222. package/fonts/Montserrat-900.woff2 +0 -0
  223. package/fonts/Mukta-400.woff2 +0 -0
  224. package/fonts/Mukta-500.woff2 +0 -0
  225. package/fonts/Mukta-700.woff2 +0 -0
  226. package/fonts/Mulish-400.woff2 +0 -0
  227. package/fonts/Mulish-500.woff2 +0 -0
  228. package/fonts/Mulish-700.woff2 +0 -0
  229. package/fonts/Mulish-900.woff2 +0 -0
  230. package/fonts/Newsreader-400.woff2 +0 -0
  231. package/fonts/Newsreader-500.woff2 +0 -0
  232. package/fonts/Newsreader-700.woff2 +0 -0
  233. package/fonts/NewsreaderVar.woff2 +0 -0
  234. package/fonts/Nunito-400.woff2 +0 -0
  235. package/fonts/Nunito-500.woff2 +0 -0
  236. package/fonts/Nunito-700.woff2 +0 -0
  237. package/fonts/Nunito-900.woff2 +0 -0
  238. package/fonts/NunitoSans-400.woff2 +0 -0
  239. package/fonts/NunitoSans-500.woff2 +0 -0
  240. package/fonts/NunitoSans-700.woff2 +0 -0
  241. package/fonts/NunitoSans-900.woff2 +0 -0
  242. package/fonts/Onest-400.woff2 +0 -0
  243. package/fonts/Onest-500.woff2 +0 -0
  244. package/fonts/Onest-700.woff2 +0 -0
  245. package/fonts/Onest-900.woff2 +0 -0
  246. package/fonts/OpenSans-400.woff2 +0 -0
  247. package/fonts/OpenSans-500.woff2 +0 -0
  248. package/fonts/OpenSans-700.woff2 +0 -0
  249. package/fonts/Oswald-400.woff2 +0 -0
  250. package/fonts/Oswald-500.woff2 +0 -0
  251. package/fonts/Oswald-700.woff2 +0 -0
  252. package/fonts/Outfit-400.woff2 +0 -0
  253. package/fonts/Outfit-500.woff2 +0 -0
  254. package/fonts/Outfit-700.woff2 +0 -0
  255. package/fonts/Outfit-900.woff2 +0 -0
  256. package/fonts/Overpass-400.woff2 +0 -0
  257. package/fonts/Overpass-500.woff2 +0 -0
  258. package/fonts/Overpass-700.woff2 +0 -0
  259. package/fonts/Overpass-900.woff2 +0 -0
  260. package/fonts/PTSans-400.woff2 +0 -0
  261. package/fonts/PTSans-700.woff2 +0 -0
  262. package/fonts/PTSerif-400.woff2 +0 -0
  263. package/fonts/PTSerif-700.woff2 +0 -0
  264. package/fonts/Petrona-400.woff2 +0 -0
  265. package/fonts/Petrona-500.woff2 +0 -0
  266. package/fonts/Petrona-700.woff2 +0 -0
  267. package/fonts/Petrona-900.woff2 +0 -0
  268. package/fonts/PlayfairDisplay-400.woff2 +0 -0
  269. package/fonts/PlayfairDisplay-500.woff2 +0 -0
  270. package/fonts/PlayfairDisplay-700.woff2 +0 -0
  271. package/fonts/PlayfairDisplay-900.woff2 +0 -0
  272. package/fonts/PlusJakartaSans-400.woff2 +0 -0
  273. package/fonts/PlusJakartaSans-500.woff2 +0 -0
  274. package/fonts/PlusJakartaSans-700.woff2 +0 -0
  275. package/fonts/Poppins-400.woff2 +0 -0
  276. package/fonts/Poppins-500.woff2 +0 -0
  277. package/fonts/Poppins-700.woff2 +0 -0
  278. package/fonts/Poppins-900.woff2 +0 -0
  279. package/fonts/PublicSans-400.woff2 +0 -0
  280. package/fonts/PublicSans-500.woff2 +0 -0
  281. package/fonts/PublicSans-700.woff2 +0 -0
  282. package/fonts/PublicSans-900.woff2 +0 -0
  283. package/fonts/Quicksand-400.woff2 +0 -0
  284. package/fonts/Quicksand-500.woff2 +0 -0
  285. package/fonts/Quicksand-700.woff2 +0 -0
  286. package/fonts/Raleway-400.woff2 +0 -0
  287. package/fonts/Raleway-500.woff2 +0 -0
  288. package/fonts/Raleway-700.woff2 +0 -0
  289. package/fonts/Raleway-900.woff2 +0 -0
  290. package/fonts/RedHatDisplay-400.woff2 +0 -0
  291. package/fonts/RedHatDisplay-500.woff2 +0 -0
  292. package/fonts/RedHatDisplay-700.woff2 +0 -0
  293. package/fonts/RedHatDisplay-900.woff2 +0 -0
  294. package/fonts/RobotoMono-400.woff2 +0 -0
  295. package/fonts/RobotoMono-500.woff2 +0 -0
  296. package/fonts/RobotoMono-700.woff2 +0 -0
  297. package/fonts/RobotoSlab-400.woff2 +0 -0
  298. package/fonts/RobotoSlab-500.woff2 +0 -0
  299. package/fonts/RobotoSlab-700.woff2 +0 -0
  300. package/fonts/RobotoSlab-900.woff2 +0 -0
  301. package/fonts/RozhaOne-400.woff2 +0 -0
  302. package/fonts/Rubik-400.woff2 +0 -0
  303. package/fonts/Rubik-500.woff2 +0 -0
  304. package/fonts/Rubik-700.woff2 +0 -0
  305. package/fonts/Rubik-900.woff2 +0 -0
  306. package/fonts/Saira-400.woff2 +0 -0
  307. package/fonts/Saira-500.woff2 +0 -0
  308. package/fonts/Saira-700.woff2 +0 -0
  309. package/fonts/Saira-900.woff2 +0 -0
  310. package/fonts/SchibstedGrotesk-400.woff2 +0 -0
  311. package/fonts/SchibstedGrotesk-500.woff2 +0 -0
  312. package/fonts/SchibstedGrotesk-700.woff2 +0 -0
  313. package/fonts/SchibstedGrotesk-900.woff2 +0 -0
  314. package/fonts/Sora-400.woff2 +0 -0
  315. package/fonts/Sora-500.woff2 +0 -0
  316. package/fonts/Sora-700.woff2 +0 -0
  317. package/fonts/SourceCodePro-400.woff2 +0 -0
  318. package/fonts/SourceCodePro-500.woff2 +0 -0
  319. package/fonts/SourceCodePro-700.woff2 +0 -0
  320. package/fonts/SourceCodePro-900.woff2 +0 -0
  321. package/fonts/SourceSerif4-400.woff2 +0 -0
  322. package/fonts/SourceSerif4-500.woff2 +0 -0
  323. package/fonts/SourceSerif4-700.woff2 +0 -0
  324. package/fonts/SourceSerif4-900.woff2 +0 -0
  325. package/fonts/SpaceGrotesk-400.woff2 +0 -0
  326. package/fonts/SpaceGrotesk-500.woff2 +0 -0
  327. package/fonts/SpaceGrotesk-700.woff2 +0 -0
  328. package/fonts/SpaceMono-400.woff2 +0 -0
  329. package/fonts/SpaceMono-700.woff2 +0 -0
  330. package/fonts/Spectral-400.woff2 +0 -0
  331. package/fonts/Spectral-500.woff2 +0 -0
  332. package/fonts/Spectral-700.woff2 +0 -0
  333. package/fonts/SplineSans-400.woff2 +0 -0
  334. package/fonts/SplineSans-500.woff2 +0 -0
  335. package/fonts/SplineSans-700.woff2 +0 -0
  336. package/fonts/Staatliches-400.woff2 +0 -0
  337. package/fonts/Syne-400.woff2 +0 -0
  338. package/fonts/Syne-500.woff2 +0 -0
  339. package/fonts/Syne-700.woff2 +0 -0
  340. package/fonts/Teko-400.woff2 +0 -0
  341. package/fonts/Teko-500.woff2 +0 -0
  342. package/fonts/Teko-700.woff2 +0 -0
  343. package/fonts/Unbounded-400.woff2 +0 -0
  344. package/fonts/Unbounded-500.woff2 +0 -0
  345. package/fonts/Unbounded-700.woff2 +0 -0
  346. package/fonts/Unbounded-900.woff2 +0 -0
  347. package/fonts/Urbanist-400.woff2 +0 -0
  348. package/fonts/Urbanist-500.woff2 +0 -0
  349. package/fonts/Urbanist-700.woff2 +0 -0
  350. package/fonts/Urbanist-900.woff2 +0 -0
  351. package/fonts/Vollkorn-400.woff2 +0 -0
  352. package/fonts/Vollkorn-500.woff2 +0 -0
  353. package/fonts/Vollkorn-700.woff2 +0 -0
  354. package/fonts/Vollkorn-900.woff2 +0 -0
  355. package/fonts/WixMadeforDisplay-400.woff2 +0 -0
  356. package/fonts/WixMadeforDisplay-500.woff2 +0 -0
  357. package/fonts/WixMadeforDisplay-700.woff2 +0 -0
  358. package/fonts/WorkSans-400.woff2 +0 -0
  359. package/fonts/WorkSans-500.woff2 +0 -0
  360. package/fonts/WorkSans-700.woff2 +0 -0
  361. package/fonts/WorkSans-900.woff2 +0 -0
  362. package/fonts/YesevaOne-400.woff2 +0 -0
  363. package/fonts/YoungSerif-400.woff2 +0 -0
  364. package/fonts/ZillaSlab-400.woff2 +0 -0
  365. package/fonts/ZillaSlab-500.woff2 +0 -0
  366. package/fonts/ZillaSlab-700.woff2 +0 -0
  367. package/fonts/ttf/AbrilFatface-400.ttf +0 -0
  368. package/fonts/ttf/AlbertSans-400.ttf +0 -0
  369. package/fonts/ttf/AlbertSans-500.ttf +0 -0
  370. package/fonts/ttf/AlbertSans-700.ttf +0 -0
  371. package/fonts/ttf/AlbertSans-900.ttf +0 -0
  372. package/fonts/ttf/Alegreya-400.ttf +0 -0
  373. package/fonts/ttf/Alegreya-500.ttf +0 -0
  374. package/fonts/ttf/Alegreya-700.ttf +0 -0
  375. package/fonts/ttf/Alegreya-900.ttf +0 -0
  376. package/fonts/ttf/Anton-400.ttf +0 -0
  377. package/fonts/ttf/Archivo-400.ttf +0 -0
  378. package/fonts/ttf/Archivo-500.ttf +0 -0
  379. package/fonts/ttf/Archivo-700.ttf +0 -0
  380. package/fonts/ttf/Archivo-900.ttf +0 -0
  381. package/fonts/ttf/ArchivoBlack-400.ttf +0 -0
  382. package/fonts/ttf/Arimo-400.ttf +0 -0
  383. package/fonts/ttf/Arimo-500.ttf +0 -0
  384. package/fonts/ttf/Arimo-700.ttf +0 -0
  385. package/fonts/ttf/Asap-400.ttf +0 -0
  386. package/fonts/ttf/Asap-500.ttf +0 -0
  387. package/fonts/ttf/Asap-700.ttf +0 -0
  388. package/fonts/ttf/Asap-900.ttf +0 -0
  389. package/fonts/ttf/Assistant-400.ttf +0 -0
  390. package/fonts/ttf/Assistant-500.ttf +0 -0
  391. package/fonts/ttf/Assistant-700.ttf +0 -0
  392. package/fonts/ttf/Baloo2-400.ttf +0 -0
  393. package/fonts/ttf/Baloo2-500.ttf +0 -0
  394. package/fonts/ttf/Baloo2-700.ttf +0 -0
  395. package/fonts/ttf/BeVietnamPro-400.ttf +0 -0
  396. package/fonts/ttf/BeVietnamPro-500.ttf +0 -0
  397. package/fonts/ttf/BeVietnamPro-700.ttf +0 -0
  398. package/fonts/ttf/BeVietnamPro-900.ttf +0 -0
  399. package/fonts/ttf/BebasNeue-400.ttf +0 -0
  400. package/fonts/ttf/BigShouldersDisplay-400.ttf +0 -0
  401. package/fonts/ttf/BigShouldersDisplay-500.ttf +0 -0
  402. package/fonts/ttf/BigShouldersDisplay-700.ttf +0 -0
  403. package/fonts/ttf/BigShouldersDisplay-900.ttf +0 -0
  404. package/fonts/ttf/Bitter-400.ttf +0 -0
  405. package/fonts/ttf/Bitter-500.ttf +0 -0
  406. package/fonts/ttf/Bitter-700.ttf +0 -0
  407. package/fonts/ttf/Bitter-900.ttf +0 -0
  408. package/fonts/ttf/BodoniModa-400.ttf +0 -0
  409. package/fonts/ttf/BodoniModa-500.ttf +0 -0
  410. package/fonts/ttf/BodoniModa-700.ttf +0 -0
  411. package/fonts/ttf/BodoniModa-900.ttf +0 -0
  412. package/fonts/ttf/BricolageGrotesque-400.ttf +0 -0
  413. package/fonts/ttf/BricolageGrotesque-500.ttf +0 -0
  414. package/fonts/ttf/BricolageGrotesque-700.ttf +0 -0
  415. package/fonts/ttf/Bungee-400.ttf +0 -0
  416. package/fonts/ttf/Cabin-400.ttf +0 -0
  417. package/fonts/ttf/Cabin-500.ttf +0 -0
  418. package/fonts/ttf/Cabin-700.ttf +0 -0
  419. package/fonts/ttf/Chivo-400.ttf +0 -0
  420. package/fonts/ttf/Chivo-500.ttf +0 -0
  421. package/fonts/ttf/Chivo-700.ttf +0 -0
  422. package/fonts/ttf/Chivo-900.ttf +0 -0
  423. package/fonts/ttf/Comfortaa-400.ttf +0 -0
  424. package/fonts/ttf/Comfortaa-500.ttf +0 -0
  425. package/fonts/ttf/Comfortaa-700.ttf +0 -0
  426. package/fonts/ttf/CormorantGaramond-400.ttf +0 -0
  427. package/fonts/ttf/CormorantGaramond-500.ttf +0 -0
  428. package/fonts/ttf/CormorantGaramond-700.ttf +0 -0
  429. package/fonts/ttf/CrimsonPro-400.ttf +0 -0
  430. package/fonts/ttf/CrimsonPro-500.ttf +0 -0
  431. package/fonts/ttf/CrimsonPro-700.ttf +0 -0
  432. package/fonts/ttf/CrimsonPro-900.ttf +0 -0
  433. package/fonts/ttf/DMMono-400.ttf +0 -0
  434. package/fonts/ttf/DMMono-500.ttf +0 -0
  435. package/fonts/ttf/DMSans-400.ttf +0 -0
  436. package/fonts/ttf/DMSans-500.ttf +0 -0
  437. package/fonts/ttf/DMSans-700.ttf +0 -0
  438. package/fonts/ttf/DMSans-900.ttf +0 -0
  439. package/fonts/ttf/DMSerifDisplay-400.ttf +0 -0
  440. package/fonts/ttf/Domine-400.ttf +0 -0
  441. package/fonts/ttf/Domine-500.ttf +0 -0
  442. package/fonts/ttf/Domine-700.ttf +0 -0
  443. package/fonts/ttf/EBGaramond-400.ttf +0 -0
  444. package/fonts/ttf/EBGaramond-500.ttf +0 -0
  445. package/fonts/ttf/EBGaramond-700.ttf +0 -0
  446. package/fonts/ttf/EncodeSans-400.ttf +0 -0
  447. package/fonts/ttf/EncodeSans-500.ttf +0 -0
  448. package/fonts/ttf/EncodeSans-700.ttf +0 -0
  449. package/fonts/ttf/EncodeSans-900.ttf +0 -0
  450. package/fonts/ttf/Epilogue-400.ttf +0 -0
  451. package/fonts/ttf/Epilogue-500.ttf +0 -0
  452. package/fonts/ttf/Epilogue-700.ttf +0 -0
  453. package/fonts/ttf/Epilogue-900.ttf +0 -0
  454. package/fonts/ttf/Exo2-400.ttf +0 -0
  455. package/fonts/ttf/Exo2-500.ttf +0 -0
  456. package/fonts/ttf/Exo2-700.ttf +0 -0
  457. package/fonts/ttf/Exo2-900.ttf +0 -0
  458. package/fonts/ttf/FamiljenGrotesk-400.ttf +0 -0
  459. package/fonts/ttf/FamiljenGrotesk-500.ttf +0 -0
  460. package/fonts/ttf/FamiljenGrotesk-700.ttf +0 -0
  461. package/fonts/ttf/Figtree-400.ttf +0 -0
  462. package/fonts/ttf/Figtree-500.ttf +0 -0
  463. package/fonts/ttf/Figtree-700.ttf +0 -0
  464. package/fonts/ttf/Figtree-900.ttf +0 -0
  465. package/fonts/ttf/FiraCode-400.ttf +0 -0
  466. package/fonts/ttf/FiraCode-500.ttf +0 -0
  467. package/fonts/ttf/FiraCode-700.ttf +0 -0
  468. package/fonts/ttf/FiraSans-400.ttf +0 -0
  469. package/fonts/ttf/FiraSans-500.ttf +0 -0
  470. package/fonts/ttf/FiraSans-700.ttf +0 -0
  471. package/fonts/ttf/FiraSans-900.ttf +0 -0
  472. package/fonts/ttf/FjallaOne-400.ttf +0 -0
  473. package/fonts/ttf/FrankRuhlLibre-400.ttf +0 -0
  474. package/fonts/ttf/FrankRuhlLibre-500.ttf +0 -0
  475. package/fonts/ttf/FrankRuhlLibre-700.ttf +0 -0
  476. package/fonts/ttf/FrankRuhlLibre-900.ttf +0 -0
  477. package/fonts/ttf/Fraunces-400.ttf +0 -0
  478. package/fonts/ttf/Fraunces-500.ttf +0 -0
  479. package/fonts/ttf/Fraunces-700.ttf +0 -0
  480. package/fonts/ttf/Fraunces-900.ttf +0 -0
  481. package/fonts/ttf/Fredoka-400.ttf +0 -0
  482. package/fonts/ttf/Fredoka-500.ttf +0 -0
  483. package/fonts/ttf/Fredoka-700.ttf +0 -0
  484. package/fonts/ttf/Gabarito-400.ttf +0 -0
  485. package/fonts/ttf/Gabarito-500.ttf +0 -0
  486. package/fonts/ttf/Gabarito-700.ttf +0 -0
  487. package/fonts/ttf/Gabarito-900.ttf +0 -0
  488. package/fonts/ttf/Geist-400.ttf +0 -0
  489. package/fonts/ttf/Geist-500.ttf +0 -0
  490. package/fonts/ttf/Geist-700.ttf +0 -0
  491. package/fonts/ttf/Geist-900.ttf +0 -0
  492. package/fonts/ttf/GeistMono-400.ttf +0 -0
  493. package/fonts/ttf/GeistMono-500.ttf +0 -0
  494. package/fonts/ttf/GeistMono-700.ttf +0 -0
  495. package/fonts/ttf/Geologica-400.ttf +0 -0
  496. package/fonts/ttf/Geologica-500.ttf +0 -0
  497. package/fonts/ttf/Geologica-700.ttf +0 -0
  498. package/fonts/ttf/Geologica-900.ttf +0 -0
  499. package/fonts/ttf/Gloock-400.ttf +0 -0
  500. package/fonts/ttf/HankenGrotesk-400.ttf +0 -0
  501. package/fonts/ttf/HankenGrotesk-500.ttf +0 -0
  502. package/fonts/ttf/HankenGrotesk-700.ttf +0 -0
  503. package/fonts/ttf/HankenGrotesk-900.ttf +0 -0
  504. package/fonts/ttf/Hind-400.ttf +0 -0
  505. package/fonts/ttf/Hind-500.ttf +0 -0
  506. package/fonts/ttf/Hind-700.ttf +0 -0
  507. package/fonts/ttf/IBMPlexMono-400.ttf +0 -0
  508. package/fonts/ttf/IBMPlexMono-500.ttf +0 -0
  509. package/fonts/ttf/IBMPlexMono-700.ttf +0 -0
  510. package/fonts/ttf/IBMPlexSans-400.ttf +0 -0
  511. package/fonts/ttf/IBMPlexSans-500.ttf +0 -0
  512. package/fonts/ttf/IBMPlexSans-700.ttf +0 -0
  513. package/fonts/ttf/InstrumentSans-400.ttf +0 -0
  514. package/fonts/ttf/InstrumentSans-500.ttf +0 -0
  515. package/fonts/ttf/InstrumentSans-700.ttf +0 -0
  516. package/fonts/ttf/InstrumentSerif-400.ttf +0 -0
  517. package/fonts/ttf/Inter-400.ttf +0 -0
  518. package/fonts/ttf/Inter-500.ttf +0 -0
  519. package/fonts/ttf/Inter-700.ttf +0 -0
  520. package/fonts/ttf/Inter-900.ttf +0 -0
  521. package/fonts/ttf/InterTight-400.ttf +0 -0
  522. package/fonts/ttf/InterTight-500.ttf +0 -0
  523. package/fonts/ttf/InterTight-700.ttf +0 -0
  524. package/fonts/ttf/InterTight-900.ttf +0 -0
  525. package/fonts/ttf/InterVar.ttf +0 -0
  526. package/fonts/ttf/Italiana-400.ttf +0 -0
  527. package/fonts/ttf/JetBrainsMono-400.ttf +0 -0
  528. package/fonts/ttf/JetBrainsMono-500.ttf +0 -0
  529. package/fonts/ttf/JetBrainsMono-700.ttf +0 -0
  530. package/fonts/ttf/JosefinSlab-400.ttf +0 -0
  531. package/fonts/ttf/JosefinSlab-500.ttf +0 -0
  532. package/fonts/ttf/JosefinSlab-700.ttf +0 -0
  533. package/fonts/ttf/Jost-400.ttf +0 -0
  534. package/fonts/ttf/Jost-500.ttf +0 -0
  535. package/fonts/ttf/Jost-700.ttf +0 -0
  536. package/fonts/ttf/Jost-900.ttf +0 -0
  537. package/fonts/ttf/Kanit-400.ttf +0 -0
  538. package/fonts/ttf/Kanit-500.ttf +0 -0
  539. package/fonts/ttf/Kanit-700.ttf +0 -0
  540. package/fonts/ttf/Kanit-900.ttf +0 -0
  541. package/fonts/ttf/Karla-400.ttf +0 -0
  542. package/fonts/ttf/Karla-500.ttf +0 -0
  543. package/fonts/ttf/Karla-700.ttf +0 -0
  544. package/fonts/ttf/Khand-400.ttf +0 -0
  545. package/fonts/ttf/Khand-500.ttf +0 -0
  546. package/fonts/ttf/Khand-700.ttf +0 -0
  547. package/fonts/ttf/LeagueSpartan-400.ttf +0 -0
  548. package/fonts/ttf/LeagueSpartan-500.ttf +0 -0
  549. package/fonts/ttf/LeagueSpartan-700.ttf +0 -0
  550. package/fonts/ttf/LeagueSpartan-900.ttf +0 -0
  551. package/fonts/ttf/Lexend-400.ttf +0 -0
  552. package/fonts/ttf/Lexend-500.ttf +0 -0
  553. package/fonts/ttf/Lexend-700.ttf +0 -0
  554. package/fonts/ttf/Lexend-900.ttf +0 -0
  555. package/fonts/ttf/LexendDeca-400.ttf +0 -0
  556. package/fonts/ttf/LexendDeca-500.ttf +0 -0
  557. package/fonts/ttf/LexendDeca-700.ttf +0 -0
  558. package/fonts/ttf/LexendDeca-900.ttf +0 -0
  559. package/fonts/ttf/LibreBaskerville-400.ttf +0 -0
  560. package/fonts/ttf/LibreBaskerville-500.ttf +0 -0
  561. package/fonts/ttf/LibreBaskerville-700.ttf +0 -0
  562. package/fonts/ttf/LibreCaslonDisplay-400.ttf +0 -0
  563. package/fonts/ttf/LibreFranklin-400.ttf +0 -0
  564. package/fonts/ttf/LibreFranklin-500.ttf +0 -0
  565. package/fonts/ttf/LibreFranklin-700.ttf +0 -0
  566. package/fonts/ttf/LibreFranklin-900.ttf +0 -0
  567. package/fonts/ttf/Literata-400.ttf +0 -0
  568. package/fonts/ttf/Literata-500.ttf +0 -0
  569. package/fonts/ttf/Literata-700.ttf +0 -0
  570. package/fonts/ttf/Literata-900.ttf +0 -0
  571. package/fonts/ttf/Lora-400.ttf +0 -0
  572. package/fonts/ttf/Lora-500.ttf +0 -0
  573. package/fonts/ttf/Lora-700.ttf +0 -0
  574. package/fonts/ttf/Manrope-400.ttf +0 -0
  575. package/fonts/ttf/Manrope-500.ttf +0 -0
  576. package/fonts/ttf/Manrope-700.ttf +0 -0
  577. package/fonts/ttf/Marcellus-400.ttf +0 -0
  578. package/fonts/ttf/MartianMono-400.ttf +0 -0
  579. package/fonts/ttf/MartianMono-500.ttf +0 -0
  580. package/fonts/ttf/MartianMono-700.ttf +0 -0
  581. package/fonts/ttf/Montserrat-400.ttf +0 -0
  582. package/fonts/ttf/Montserrat-500.ttf +0 -0
  583. package/fonts/ttf/Montserrat-700.ttf +0 -0
  584. package/fonts/ttf/Montserrat-900.ttf +0 -0
  585. package/fonts/ttf/Mukta-400.ttf +0 -0
  586. package/fonts/ttf/Mukta-500.ttf +0 -0
  587. package/fonts/ttf/Mukta-700.ttf +0 -0
  588. package/fonts/ttf/Mulish-400.ttf +0 -0
  589. package/fonts/ttf/Mulish-500.ttf +0 -0
  590. package/fonts/ttf/Mulish-700.ttf +0 -0
  591. package/fonts/ttf/Mulish-900.ttf +0 -0
  592. package/fonts/ttf/Newsreader-400.ttf +0 -0
  593. package/fonts/ttf/Newsreader-500.ttf +0 -0
  594. package/fonts/ttf/Newsreader-700.ttf +0 -0
  595. package/fonts/ttf/NewsreaderVar.ttf +0 -0
  596. package/fonts/ttf/Nunito-400.ttf +0 -0
  597. package/fonts/ttf/Nunito-500.ttf +0 -0
  598. package/fonts/ttf/Nunito-700.ttf +0 -0
  599. package/fonts/ttf/Nunito-900.ttf +0 -0
  600. package/fonts/ttf/NunitoSans-400.ttf +0 -0
  601. package/fonts/ttf/NunitoSans-500.ttf +0 -0
  602. package/fonts/ttf/NunitoSans-700.ttf +0 -0
  603. package/fonts/ttf/NunitoSans-900.ttf +0 -0
  604. package/fonts/ttf/Onest-400.ttf +0 -0
  605. package/fonts/ttf/Onest-500.ttf +0 -0
  606. package/fonts/ttf/Onest-700.ttf +0 -0
  607. package/fonts/ttf/Onest-900.ttf +0 -0
  608. package/fonts/ttf/OpenSans-400.ttf +0 -0
  609. package/fonts/ttf/OpenSans-500.ttf +0 -0
  610. package/fonts/ttf/OpenSans-700.ttf +0 -0
  611. package/fonts/ttf/Oswald-400.ttf +0 -0
  612. package/fonts/ttf/Oswald-500.ttf +0 -0
  613. package/fonts/ttf/Oswald-700.ttf +0 -0
  614. package/fonts/ttf/Outfit-400.ttf +0 -0
  615. package/fonts/ttf/Outfit-500.ttf +0 -0
  616. package/fonts/ttf/Outfit-700.ttf +0 -0
  617. package/fonts/ttf/Outfit-900.ttf +0 -0
  618. package/fonts/ttf/Overpass-400.ttf +0 -0
  619. package/fonts/ttf/Overpass-500.ttf +0 -0
  620. package/fonts/ttf/Overpass-700.ttf +0 -0
  621. package/fonts/ttf/Overpass-900.ttf +0 -0
  622. package/fonts/ttf/PTSans-400.ttf +0 -0
  623. package/fonts/ttf/PTSans-700.ttf +0 -0
  624. package/fonts/ttf/PTSerif-400.ttf +0 -0
  625. package/fonts/ttf/PTSerif-700.ttf +0 -0
  626. package/fonts/ttf/Petrona-400.ttf +0 -0
  627. package/fonts/ttf/Petrona-500.ttf +0 -0
  628. package/fonts/ttf/Petrona-700.ttf +0 -0
  629. package/fonts/ttf/Petrona-900.ttf +0 -0
  630. package/fonts/ttf/PlayfairDisplay-400.ttf +0 -0
  631. package/fonts/ttf/PlayfairDisplay-500.ttf +0 -0
  632. package/fonts/ttf/PlayfairDisplay-700.ttf +0 -0
  633. package/fonts/ttf/PlayfairDisplay-900.ttf +0 -0
  634. package/fonts/ttf/PlusJakartaSans-400.ttf +0 -0
  635. package/fonts/ttf/PlusJakartaSans-500.ttf +0 -0
  636. package/fonts/ttf/PlusJakartaSans-700.ttf +0 -0
  637. package/fonts/ttf/Poppins-400.ttf +0 -0
  638. package/fonts/ttf/Poppins-500.ttf +0 -0
  639. package/fonts/ttf/Poppins-700.ttf +0 -0
  640. package/fonts/ttf/Poppins-900.ttf +0 -0
  641. package/fonts/ttf/PublicSans-400.ttf +0 -0
  642. package/fonts/ttf/PublicSans-500.ttf +0 -0
  643. package/fonts/ttf/PublicSans-700.ttf +0 -0
  644. package/fonts/ttf/PublicSans-900.ttf +0 -0
  645. package/fonts/ttf/Quicksand-400.ttf +0 -0
  646. package/fonts/ttf/Quicksand-500.ttf +0 -0
  647. package/fonts/ttf/Quicksand-700.ttf +0 -0
  648. package/fonts/ttf/Raleway-400.ttf +0 -0
  649. package/fonts/ttf/Raleway-500.ttf +0 -0
  650. package/fonts/ttf/Raleway-700.ttf +0 -0
  651. package/fonts/ttf/Raleway-900.ttf +0 -0
  652. package/fonts/ttf/RedHatDisplay-400.ttf +0 -0
  653. package/fonts/ttf/RedHatDisplay-500.ttf +0 -0
  654. package/fonts/ttf/RedHatDisplay-700.ttf +0 -0
  655. package/fonts/ttf/RedHatDisplay-900.ttf +0 -0
  656. package/fonts/ttf/RobotoMono-400.ttf +0 -0
  657. package/fonts/ttf/RobotoMono-500.ttf +0 -0
  658. package/fonts/ttf/RobotoMono-700.ttf +0 -0
  659. package/fonts/ttf/RobotoSlab-400.ttf +0 -0
  660. package/fonts/ttf/RobotoSlab-500.ttf +0 -0
  661. package/fonts/ttf/RobotoSlab-700.ttf +0 -0
  662. package/fonts/ttf/RobotoSlab-900.ttf +0 -0
  663. package/fonts/ttf/RozhaOne-400.ttf +0 -0
  664. package/fonts/ttf/Rubik-400.ttf +0 -0
  665. package/fonts/ttf/Rubik-500.ttf +0 -0
  666. package/fonts/ttf/Rubik-700.ttf +0 -0
  667. package/fonts/ttf/Rubik-900.ttf +0 -0
  668. package/fonts/ttf/Saira-400.ttf +0 -0
  669. package/fonts/ttf/Saira-500.ttf +0 -0
  670. package/fonts/ttf/Saira-700.ttf +0 -0
  671. package/fonts/ttf/Saira-900.ttf +0 -0
  672. package/fonts/ttf/SchibstedGrotesk-400.ttf +0 -0
  673. package/fonts/ttf/SchibstedGrotesk-500.ttf +0 -0
  674. package/fonts/ttf/SchibstedGrotesk-700.ttf +0 -0
  675. package/fonts/ttf/SchibstedGrotesk-900.ttf +0 -0
  676. package/fonts/ttf/Sora-400.ttf +0 -0
  677. package/fonts/ttf/Sora-500.ttf +0 -0
  678. package/fonts/ttf/Sora-700.ttf +0 -0
  679. package/fonts/ttf/SourceCodePro-400.ttf +0 -0
  680. package/fonts/ttf/SourceCodePro-500.ttf +0 -0
  681. package/fonts/ttf/SourceCodePro-700.ttf +0 -0
  682. package/fonts/ttf/SourceCodePro-900.ttf +0 -0
  683. package/fonts/ttf/SourceSerif4-400.ttf +0 -0
  684. package/fonts/ttf/SourceSerif4-500.ttf +0 -0
  685. package/fonts/ttf/SourceSerif4-700.ttf +0 -0
  686. package/fonts/ttf/SourceSerif4-900.ttf +0 -0
  687. package/fonts/ttf/SpaceGrotesk-400.ttf +0 -0
  688. package/fonts/ttf/SpaceGrotesk-500.ttf +0 -0
  689. package/fonts/ttf/SpaceGrotesk-700.ttf +0 -0
  690. package/fonts/ttf/SpaceMono-400.ttf +0 -0
  691. package/fonts/ttf/SpaceMono-700.ttf +0 -0
  692. package/fonts/ttf/Spectral-400.ttf +0 -0
  693. package/fonts/ttf/Spectral-500.ttf +0 -0
  694. package/fonts/ttf/Spectral-700.ttf +0 -0
  695. package/fonts/ttf/SplineSans-400.ttf +0 -0
  696. package/fonts/ttf/SplineSans-500.ttf +0 -0
  697. package/fonts/ttf/SplineSans-700.ttf +0 -0
  698. package/fonts/ttf/Staatliches-400.ttf +0 -0
  699. package/fonts/ttf/Syne-400.ttf +0 -0
  700. package/fonts/ttf/Syne-500.ttf +0 -0
  701. package/fonts/ttf/Syne-700.ttf +0 -0
  702. package/fonts/ttf/Teko-400.ttf +0 -0
  703. package/fonts/ttf/Teko-500.ttf +0 -0
  704. package/fonts/ttf/Teko-700.ttf +0 -0
  705. package/fonts/ttf/Unbounded-400.ttf +0 -0
  706. package/fonts/ttf/Unbounded-500.ttf +0 -0
  707. package/fonts/ttf/Unbounded-700.ttf +0 -0
  708. package/fonts/ttf/Unbounded-900.ttf +0 -0
  709. package/fonts/ttf/Urbanist-400.ttf +0 -0
  710. package/fonts/ttf/Urbanist-500.ttf +0 -0
  711. package/fonts/ttf/Urbanist-700.ttf +0 -0
  712. package/fonts/ttf/Urbanist-900.ttf +0 -0
  713. package/fonts/ttf/Vollkorn-400.ttf +0 -0
  714. package/fonts/ttf/Vollkorn-500.ttf +0 -0
  715. package/fonts/ttf/Vollkorn-700.ttf +0 -0
  716. package/fonts/ttf/Vollkorn-900.ttf +0 -0
  717. package/fonts/ttf/WixMadeforDisplay-400.ttf +0 -0
  718. package/fonts/ttf/WixMadeforDisplay-500.ttf +0 -0
  719. package/fonts/ttf/WixMadeforDisplay-700.ttf +0 -0
  720. package/fonts/ttf/WorkSans-400.ttf +0 -0
  721. package/fonts/ttf/WorkSans-500.ttf +0 -0
  722. package/fonts/ttf/WorkSans-700.ttf +0 -0
  723. package/fonts/ttf/WorkSans-900.ttf +0 -0
  724. package/fonts/ttf/YesevaOne-400.ttf +0 -0
  725. package/fonts/ttf/YoungSerif-400.ttf +0 -0
  726. package/fonts/ttf/ZillaSlab-400.ttf +0 -0
  727. package/fonts/ttf/ZillaSlab-500.ttf +0 -0
  728. package/fonts/ttf/ZillaSlab-700.ttf +0 -0
  729. package/package.json +53 -0
package/GUIDE.md ADDED
@@ -0,0 +1,244 @@
1
+ # Gridform MCP — full guide
2
+
3
+ Connect Gridform to Claude Desktop, IDEs, and agents via the [Model Context
4
+ Protocol](https://modelcontextprotocol.io). The server exposes the poster engine as a
5
+ complete, programmatic design studio — **discover, generate, vary, refine, reformat, and
6
+ produce** posters — returning real PNG/SVG/PDF/JPG inline. **29 tools** (most need no API
7
+ key), plus browseable **resources** and reusable **prompts**.
8
+
9
+ - [What it is](#what-it-is)
10
+ - [How it renders (headless)](#how-it-renders-headless)
11
+ - [Connect to Claude Desktop](#connect-to-claude-desktop)
12
+ - [Connect to other clients](#connect-to-other-clients)
13
+ - [The tools](#the-tools)
14
+ - [Resources & prompts](#resources--prompts)
15
+ - [A worked example](#a-worked-example)
16
+ - [Determinism, fonts & keys](#determinism-fonts--keys)
17
+ - [Developing from source](#developing-from-source)
18
+ - [Troubleshooting](#troubleshooting)
19
+
20
+ ---
21
+
22
+ ## What it is
23
+
24
+ A self-contained Node server, published on npm as **`gridform-mcp`**, that wraps the
25
+ Gridform engine. It speaks MCP over **stdio**: the client launches it (typically via
26
+ `npx -y gridform-mcp`), exchanges JSON-RPC on stdin/stdout, and calls the tools below.
27
+
28
+ - **23 engine tools need no API key** — they run the pure, deterministic engine.
29
+ - **6 AI tools** call Anthropic with a key you provide (per call or via the environment);
30
+ these are the only ones that touch the network.
31
+
32
+ It does **not** change or require the web app — it's an additional way to drive the same
33
+ engine. Every poster is a reusable **document JSON**: tools return it, and you can pass it
34
+ back to refine, reformat, or export.
35
+
36
+ ## How it renders (headless)
37
+
38
+ Gridform's core rule is *one* inline SVG is the single source of truth for the preview and
39
+ every export. The MCP honours that: it imports the very same `serializePosterArt` →
40
+ `<PosterArt>` renderer and produces the identical SVG, then rasterises **once** with
41
+ [`resvg`](https://github.com/yisibl/resvg-js). No browser, no second render path.
42
+
43
+ - **PNG / SVG** — the canonical SVG (PNG = its resvg raster; transparent crops supported).
44
+ - **PDF** — the resvg PNG embedded on a physically-sized page with `pdf-lib` (optional crop
45
+ + registration marks). **JPG** — the raw resvg pixmap encoded with `jpeg-js`.
46
+ - **Specimen sheets** — many small posters composited into one SVG → one resvg pass.
47
+ - Fonts are the self-hosted `woff2` typefaces that ship inside the package (`fonts/`),
48
+ embedded as base64 `@font-face`, so output matches the web export exactly. Override the
49
+ directory with `GRIDFORM_FONTS_DIR`.
50
+
51
+ ## Connect to Claude Desktop
52
+
53
+ Prerequisites: **Node 20+**. Nothing to clone or build — `npx` fetches the published
54
+ package on first run and caches it.
55
+
56
+ 1. Open the config: Claude Desktop → **Settings → Developer → Edit Config**
57
+ (macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`).
58
+ 2. Add the server:
59
+
60
+ ```json
61
+ {
62
+ "mcpServers": {
63
+ "gridform": {
64
+ "command": "npx",
65
+ "args": ["-y", "gridform-mcp"],
66
+ "env": { "ANTHROPIC_API_KEY": "sk-ant-..." }
67
+ }
68
+ }
69
+ }
70
+ ```
71
+
72
+ `ANTHROPIC_API_KEY` is optional — omit it to use only the 23 no-key engine tools, or
73
+ pass a key per call via each AI tool's `apiKey` argument.
74
+ 3. Restart Claude Desktop. The Gridform tools appear under the tools menu (the 🔌 icon).
75
+
76
+ ## Connect to other clients
77
+
78
+ Any MCP client that launches a stdio server works: the command is `npx` with args
79
+ `["-y", "gridform-mcp"]` (or `gridform-mcp` directly after a global
80
+ `npm install -g gridform-mcp`). For programmatic use, the official SDK:
81
+
82
+ ```js
83
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
84
+ import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
85
+
86
+ const transport = new StdioClientTransport({ command: 'npx', args: ['-y', 'gridform-mcp'] });
87
+ const client = new Client({ name: 'my-app', version: '1.0.0' });
88
+ await client.connect(transport);
89
+
90
+ const res = await client.callTool({ name: 'create_poster', arguments: { content: { title: 'Open Studio' }, ratio: '1:1' } });
91
+ // res.content → [ {type:'text', text:'Document JSON…'}, {type:'image', mimeType:'image/png', data:'<base64>'} ]
92
+ ```
93
+
94
+ ## The tools
95
+
96
+ Tools that edit a poster return the new **document JSON** plus a rendered image; most take an
97
+ optional `format` (`png` | `svg`) and `scale` (0.25–8). Engine tools are deterministic — the
98
+ same inputs + `seed` always produce the same poster. Ratios: `3:4 · A4 · 4:5 · 1:1 · 5:7 ·
99
+ 16:9 · 1.91:1`.
100
+
101
+ ### Discovery — no key
102
+
103
+ Browse the design vocabulary (each returns JSON). Pipe the ids into the tools below.
104
+
105
+ - **`list_layouts`** `{ query?, limit? }` — search the layout library → `{ id, name, tags }`.
106
+ - **`list_looks`** — one-tap aesthetic presets (palette + type + motion).
107
+ - **`list_formats`** `{ category? }` — artboard formats (Paper · Social · Screen · Photo).
108
+ - **`list_palettes`** — built-in palettes + curated themes (paper/ink/muted/accent).
109
+ - **`list_fonts`** `{ query? }` — typeface families (id, category, weights, variable).
110
+ - **`list_vibes`** — the mood "vibes" + mood dimensions.
111
+
112
+ ### Generate — no key
113
+
114
+ - **`create_poster`** `{ content?, layoutId?, look?, ratio?, seed? }` — a poster from text per
115
+ slot (`title, headline, subhead, metaA, metaB, caption, logo, footer, dateline, index, body,
116
+ byline, source`; `\n` for line breaks).
117
+ - **`poster_from_text`** `{ text }` — paste any blob; layout + look + copy chosen automatically.
118
+ - **`generate_layout`** `{ document, seed? }` — synthesize a brand-new content-fit layout.
119
+ - **`bento_poster`** `{ document, seed?, smart?, tries? }` — best-of-N bento grid composition.
120
+ - **`resonate`** `{ document, vibe?, seed? }` — mood-match palette/type/scale (vibes: `bold ·
121
+ calm · warm · cool · editorial · vintage · minimal · luxe · playful`).
122
+
123
+ ### Vary — no key
124
+
125
+ - **`shuffle_poster`** `{ document, seed? }` — best-of-N re-roll of the current style.
126
+ - **`surprise_poster`** `{ document, seed? }` — a new layout + fresh style.
127
+ - **`explore_variations`** `{ document, direction?, count?, seed? }` — a graded, diverse
128
+ shortlist (directions: `surprise · bold · calm · warm · cool · mono · editorial · image ·
129
+ minimal`). Returns each variant render + its document.
130
+ - **`morph_posters`** `{ documentA, documentB, t?, steps? }` — blend two designs (layout +
131
+ palette + scale) at `t∈[0,1]`, or `steps` evenly-spaced points.
132
+
133
+ ### Refine — no key
134
+
135
+ - **`art_direct`** `{ document, strength?, seed? }` — elevate the whole composition to the best
136
+ variation that is **never worse** than the original (`strength`: `subtle · balanced · bold`).
137
+ - **`critique_poster`** `{ document }` — score (contrast/hierarchy/alignment/balance, 0–100) +
138
+ located issues.
139
+ - **`harmonize_palette`** `{ baseHex, scheme?, dark?, document? }` — a four-role palette from
140
+ one hex (`scheme`: `complementary · analogous · triadic · split`); pass a `document` to apply it.
141
+
142
+ ### Format — no key
143
+
144
+ - **`resize_poster`** `{ document, formatId? | ratio? | width?+height?, orientation?, stretch? }`
145
+ — adapt the layout to a new format/ratio/custom size (reflows to the new aspect; `stretch`
146
+ keeps the grid).
147
+
148
+ ### Output — no key
149
+
150
+ - **`render_poster`** `{ document, format?, scale?, transparent? }` — PNG/SVG (+ transparent
151
+ sticker crop).
152
+ - **`export_pdf`** `{ document, dpi?, widthMm?, cropMarks? }` — print-ready PDF (returns an
153
+ embedded `application/pdf` resource), optional trim + registration marks.
154
+ - **`export_jpg`** `{ document, scale?, quality? }` — a JPEG (smaller web file; opaque).
155
+ - **`batch_render`** `{ document, targets[], format?, scale? }` — render to many formats/sizes
156
+ in one call (each target = a `formatId`, a `ratio`, or `width`+`height`).
157
+
158
+ ### AI — needs an Anthropic key
159
+
160
+ Pass `apiKey` per call, or set `ANTHROPIC_API_KEY` in the server env. `model?` overrides the
161
+ default. With no key, these return a clear, non-fatal error (no tokens spent).
162
+
163
+ - **`compose_poster`** `{ brief }` — a brief → AI writes copy, picks a layout + palette.
164
+ - **`design_poster`** `{ brief }` — a full design: also picks the typeface, type scale, and motion.
165
+ - **`write_copy`** `{ kind, context, count? }` — on-brand copy variants (`headline · subhead ·
166
+ tagline · cta · caption · hashtags · concept`).
167
+ - **`translate_poster`** `{ document, languages }` — localize every line (1–8 **Latin-script**
168
+ languages) → a document per language.
169
+ - **`brief_to_campaign`** `{ brief, count?, seed? }` — a brief → a designed base, then N on-brand
170
+ compositional variations (same palette/type, distinct layouts).
171
+ - **`critique_and_fix`** `{ document, strength? }` — the AI tightens the lead line, then the
172
+ engine applies never-worse art-direction; returns before/after scores + renders.
173
+
174
+ ## Resources & prompts
175
+
176
+ **Resources** (browse without a tool call):
177
+
178
+ - `gridform://catalog/{layouts,looks,formats,palettes,fonts,vibes}` — the vocabulary as JSON.
179
+ - `gridform://guide` — this guide.
180
+ - `gridform://specimen/{looks,palettes,fonts}.png` — rendered specimen sheets (PNG).
181
+ - `gridform://specimen/layout/{layoutId}.png` — any single layout rendered (id autocompletes).
182
+
183
+ **Prompts** (reusable scaffolds):
184
+
185
+ - `design_brief` `{ topic, audience?, tone? }` — turn a topic into a ready brief.
186
+ - `critique_request` `{ document }` — renders the poster + asks for a design critique.
187
+ - `campaign_plan` `{ brief, channels? }` — a multi-channel campaign request.
188
+ - `localize` `{ document, languages }` — a translation request.
189
+
190
+ ## A worked example
191
+
192
+ > **You:** Design a poster for a late-night jazz set, then make me a print PDF and an
193
+ > Instagram set.
194
+
195
+ A capable assistant chains:
196
+
197
+ 1. `design_poster {brief:"a late-night jazz set at a downtown loft"}` → a fully-designed
198
+ document + PNG. *(or `compose_poster` without a key for copy+layout+palette.)*
199
+ 2. `critique_poster {document}` → a score; if needed, `art_direct {document}` to elevate it.
200
+ 3. `export_pdf {document, cropMarks:true}` → a print-ready PDF.
201
+ 4. `batch_render {document, targets:[{formatId:"social-ig-square"},{formatId:"social-ig-story"}]}`
202
+ → both Instagram sizes in one call.
203
+
204
+ No-key flow: `poster_from_text` → `bento_poster` / `shuffle_poster` → `resize_poster` →
205
+ `export_pdf`. To explore directions: `explore_variations {direction:"editorial", count:4}`.
206
+
207
+ ## Determinism, fonts & keys
208
+
209
+ - **Deterministic.** Engine tools are pure: identical inputs + `seed` always produce the
210
+ identical poster. Re-render or re-edit any returned `document`.
211
+ - **Fonts.** Output uses the self-hosted typefaces that ship inside the package (`fonts/`);
212
+ set `GRIDFORM_FONTS_DIR` only to point at a custom directory. The typefaces are
213
+ open-licensed (OFL / Apache and similar) and remain under their own licences. For CJK /
214
+ RTL, take the translated copy and apply a matching font yourself.
215
+ - **Keys.** Your Anthropic key is sent directly to Anthropic from the server process, never
216
+ to any third party. Prefer the `env` block (or per-call `apiKey`) over committing it.
217
+
218
+ ## Developing from source
219
+
220
+ Working in the Gridform repo itself:
221
+
222
+ ```bash
223
+ cd mcp
224
+ npm install
225
+ npm run build # → dist/server.mjs (and dist/smoke.mjs); syncs fonts/ + LICENSE
226
+ npm run smoke # renders SVG/PNG/JPG/PDF + specimen sheets in Node; writes dist/sample.png
227
+ npm test # spawns the server and drives all tools/resources/prompts over stdio
228
+ ```
229
+
230
+ Point a client at the local build with `"command": "node"` and the absolute path to
231
+ `mcp/dist/server.mjs` in `args`.
232
+
233
+ ## Troubleshooting
234
+
235
+ - **Tools don't appear** — confirm Node 20+ is on the PATH the client app sees (GUI apps
236
+ don't always inherit your shell PATH), then fully restart the client. The first run
237
+ downloads the package (~15 MB) plus its three dependencies and caches them in
238
+ `~/.npm/_npx`; give it a moment on a slow connection.
239
+ - **"No Anthropic API key"** — set `ANTHROPIC_API_KEY` in the `env` block, or pass `apiKey`.
240
+ - **Blank text in a PNG** — the font directory wasn't found; unset `GRIDFORM_FONTS_DIR`
241
+ (the packaged `fonts/` is the default) or point it at a directory of woff2 files.
242
+ - **A large batch / PDF is slow or heavy** — lower `scale`, fewer `targets`, or a lower `dpi`.
243
+ - **Protocol errors** — only JSON-RPC may go to stdout; the server logs to stderr by design.
244
+ Don't pipe other output into stdout.
package/LICENSE ADDED
@@ -0,0 +1,31 @@
1
+ Gridform — Proprietary Software License
2
+ Copyright (c) 2026 Gridform (0xDragoon). All rights reserved.
3
+
4
+ This software, including its source code, design, layouts, generated assets, and
5
+ all associated materials (the "Software"), is the proprietary and confidential
6
+ property of the copyright holder. ALL RIGHTS ARE RESERVED.
7
+
8
+ No license or right is granted, by implication, estoppel, or otherwise, to use,
9
+ copy, reproduce, modify, merge, publish, distribute, sublicense, sell, rent,
10
+ lease, host, reverse engineer, decompile, disassemble, scrape, or create
11
+ derivative works of the Software, in whole or in part, except with the prior
12
+ express written permission of the copyright holder.
13
+
14
+ Use of the publicly hosted application is additionally governed by the in-app
15
+ Terms of Use and Privacy Policy.
16
+
17
+ DISCLAIMER OF WARRANTY. THE SOFTWARE IS PROVIDED "AS IS" AND "AS AVAILABLE",
18
+ WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT
19
+ LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
20
+ PURPOSE, TITLE, AND NONINFRINGEMENT.
21
+
22
+ LIMITATION OF LIABILITY. TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL
23
+ THE AUTHOR OR COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER
24
+ LIABILITY, INCLUDING ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25
+ CONSEQUENTIAL DAMAGES (INCLUDING THIRD-PARTY API OR SERVICE CHARGES), WHETHER IN
26
+ AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION
27
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28
+
29
+ Third-party names such as "Anthropic" and "Claude" are trademarks of Anthropic,
30
+ and other product names are trademarks of their respective owners; they are used
31
+ for identification only and no affiliation or endorsement is implied.
package/README.md ADDED
@@ -0,0 +1,86 @@
1
+ # Gridform MCP server
2
+
3
+ A [Model Context Protocol](https://modelcontextprotocol.io) server that exposes the
4
+ Gridform poster engine to any MCP client (Claude Desktop, IDEs, agents). It generates,
5
+ renders, and translates Swiss-style posters **headlessly in Node** — the same single
6
+ inline SVG the web app renders, rasterised to PNG with [`resvg`](https://github.com/yisibl/resvg-js).
7
+ No browser, no second render path.
8
+
9
+ Most tools need **no API key**. The AI tools call Anthropic with a key you provide (per call
10
+ or via the environment).
11
+
12
+ > **New here? Read the [full guide](GUIDE.md)** — setup, Claude Desktop config, every tool
13
+ > with examples, and troubleshooting.
14
+
15
+ ## Use it
16
+
17
+ With **Node 20+** installed, add the server to any stdio MCP client — nothing to clone or
18
+ build; `npx` fetches the published package on first run and caches it. For Claude Desktop,
19
+ add to `claude_desktop_config.json` (macOS: `~/Library/Application Support/Claude/`):
20
+
21
+ ```json
22
+ {
23
+ "mcpServers": {
24
+ "gridform": {
25
+ "command": "npx",
26
+ "args": ["-y", "gridform-mcp"],
27
+ "env": { "ANTHROPIC_API_KEY": "sk-ant-…" }
28
+ }
29
+ }
30
+ }
31
+ ```
32
+
33
+ The `ANTHROPIC_API_KEY` is optional — the engine tools work without it, and the AI tools
34
+ also accept an `apiKey` argument per call. Then ask, e.g. *"make a poster for a jazz night,
35
+ 16:9"* or *"translate it into Spanish and French"*.
36
+
37
+ ## Tools (29)
38
+
39
+ **Discovery** (no key): `list_layouts` · `list_looks` · `list_formats` · `list_palettes` · `list_fonts` · `list_vibes` — browse the design vocabulary.
40
+
41
+ **Generate** (no key): `create_poster` (text → poster) · `poster_from_text` (paste a blob → a finished poster) · `generate_layout` (synthesize a content-fit layout) · `bento_poster` (best-of-N bento grid) · `resonate` (mood-match palette / type / scale).
42
+
43
+ **Vary** (no key): `shuffle_poster` · `surprise_poster` · `explore_variations` (a graded shortlist) · `morph_posters` (blend two designs).
44
+
45
+ **Refine** (no key): `art_direct` (never-worse elevation) · `critique_poster` (score + located issues) · `harmonize_palette` (one hex → four roles).
46
+
47
+ **Format** (no key): `resize_poster` (adapt the layout to any format / ratio / custom size).
48
+
49
+ **Output** (no key): `render_poster` (PNG/SVG + transparent crop) · `export_pdf` (print-ready, DPI + crop / registration marks) · `export_jpg` · `batch_render` (many formats in one call).
50
+
51
+ **AI** (Anthropic key): `compose_poster` · `design_poster` (full design incl. typeface + motion) · `write_copy` · `translate_poster` · `brief_to_campaign` (brief → N on-brand variations) · `critique_and_fix` (AI tightens the copy, the engine art-directs).
52
+
53
+ Everything renders the **same SVG** the web app uses — PNG/JPG via resvg, PDF via the same resvg PNG embedded with pdf-lib. Deterministic by `seed`.
54
+
55
+ ## Resources & prompts
56
+
57
+ - **Resources:** JSON catalogs `gridform://catalog/{layouts,looks,formats,palettes,fonts,vibes}`, a `gridform://guide`, rendered **specimen sheets** `gridform://specimen/{looks,palettes,fonts}.png`, and a templated `gridform://specimen/layout/{layoutId}.png` (with id autocompletion).
58
+ - **Prompts:** `design_brief`, `critique_request`, `campaign_plan`, `localize`.
59
+
60
+ ## Developing in this repo
61
+
62
+ ```bash
63
+ cd mcp
64
+ npm install
65
+ npm run build # bundles dist/server.mjs (+ dist/smoke.mjs) and syncs fonts/ + LICENSE
66
+ npm run smoke # headless render self-check (writes dist/sample.png)
67
+ npm test # spawns the server and drives it over stdio
68
+ ```
69
+
70
+ Point a client at the local build with `"command": "node", "args": ["…/mcp/dist/server.mjs"]`
71
+ instead of the npx config.
72
+
73
+ ## Notes
74
+
75
+ - **Same SVG as the app.** Rendering reuses `serializePosterArt` → `<PosterArt>`; the
76
+ self-hosted woff2 typefaces ship inside the package (`fonts/`), embedded as base64
77
+ (override the directory with `GRIDFORM_FONTS_DIR`). PNGs match the web export by
78
+ construction.
79
+ - **Bundled typefaces.** The `fonts/` woff2 files are open-licensed typefaces (OFL / Apache
80
+ and similar); they remain under their own licences. The package licence covers the server
81
+ only.
82
+ - **Latin-script translation.** `translate_poster` targets languages the bundled fonts cover
83
+ (Spanish, French, German, Portuguese, Italian, …). For CJK / RTL, take the returned copy and
84
+ set a matching font.
85
+ - **Determinism.** Engine tools are pure: the same inputs + `seed` always produce the same poster.
86
+ - `stdout` is the JSON-RPC channel; all logs go to `stderr`.