Thanks

I want to thank everyone who spends their time building and maintaining the open source software I rely on for my work, and the makers of the tools and services I use every day. Maintaining an open source package is oftentimes a thankless sacrifice of one's lifetime.
Below are some of the tools I love, plus an automated treemap of the open source packages used in my projects.
THANK YOU to every maintainer, every contributor, and everyone who takes the time to file an issue.

Pledges, manifests & great initiatives for the digital world

I joined or signed the following initiatives:

member
  • Open Invention Network

    Protect the internet: OIN provides mutual protection against software patents to important open source communities and users.

signed
  • Sustainable Web Manifesto

    Committed to creating a greener web that is good for people and planet. This can be achieved by making all of our online work and activities as clean, efficient, open, honest and regenerative as possible.

  • Public Money = Public Code. by FSFE

    Why is software created using taxpayers’ money not released as Free Software? We want legislation requiring that publicly financed software developed for the public sector be made publicly available under a Free and Open Source Software licence.

  • Declaration of Digital Independence.

    Digital sovereignty for Europe: take back control over digital technology

supporting
  • Bits of Freedom

    Dutch non-profit advocacy group defending digital rights such as the right to privacy and communication.

Dependency treemap

all libraries used in 2 or more of my projects (413)
  1. react/57
  2. @types/*/47
  3. typescript/42
  4. eslint/42
  5. vite/40
  6. axios/44
  7. tailwindcss/31
  8. svelte/35
  9. @sveltejs/kit/34
  10. lucide-react/25
  11. next/27
  12. dotenv/27
  13. clsx/22
  14. postcss/23
  15. tailwind-merge/21
  16. autoprefixer/21
  17. zod/18
  18. @sveltejs/vite-plugin-svelte/18
  19. prettier/18
  20. eslint-config-prettier/15
  21. typescript-eslint/14
  22. @radix-ui/react-dialog/14
  23. class-variance-authority/14
  24. express/19
  25. framer-motion/13
  26. svelte-check/12
  27. firebase-admin/14
  28. date-fns/13
  29. globals/11
  30. embla-carousel-react/12
  31. @sendgrid/mail/12
  32. sharp/10
  33. react-router-dom/15
  34. react-hook-form/11
  35. googleapis/11
  36. convex/9
  37. eslint-plugin-react-hooks/10
  38. tailwindcss-animate/10
  39. @eslint/eslintrc/10
  40. prettier-plugin-svelte/8
  41. @playwright/test/8
  42. deepmerge/11
  43. @vitejs/plugin-react/8
  44. @google-cloud/storage/11
  45. moment/11
  46. tsx/8
  47. concurrently/8
  48. ai/7
  49. knex/9
  50. @hookform/resolvers/8
  51. react-scripts/17
  52. @prismicio/client/7
  53. @prismicio/react/7
  54. firebase/9
  55. mysql/9
  56. jszip/7
  57. react-image-crop/8
  58. @tailwindcss/typography/7
  59. @react-pdf/renderer/8
  60. turbo/7
  61. jspdf/7
  62. gh-pages/11
  63. @fontsource/fira-mono/7
  64. prettier-plugin-tailwindcss/6
  65. styled-components/9
  66. @tiptap/starter-kit/6
  67. vaul/7
  68. eslint-plugin-svelte/6
  69. markdown-it/7
  70. nodemon/8
  71. @inquirer/prompts/7
  72. @tailwindcss/forms/6
  73. slugify/7
  74. sass/6
  75. classnames/8
  76. vitest/5
  77. web-push/5
  78. bits-ui/5
  79. convex-svelte/5
  80. puppeteer/6
  81. react-use/7
  82. recharts/6
  83. workbox-precaching/6
  84. node-fetch/7
  85. @upstash/ratelimit/6
  86. @upstash/redis/6
  87. browser-image-compression/6
  88. culori/6
  89. encoding/6
  90. geist/6
  91. html-to-image/6
  92. react-pdf/6
  93. react-pdf-tailwind/6
  94. react-textarea-autosize/6
  95. react-to-print/6
  96. usehooks-ts/6
  97. zod-to-json-schema/6
  98. chalk/6
  99. @internationalized/date/5
  100. mysql2/6
  101. react-color/6
  102. glob/5
  103. zustand/5
  104. eslint-plugin-react/6
  105. js-cookie/6
  106. deep-diff/6
  107. hashids/6
  108. markdown-it-anchor/6
  109. markdown-it-video/6
  110. slice-machine-ui/5
  111. better-sqlite3/5
  112. eslint-plugin-react-refresh/5
  113. png-to-ico/4
  114. @prismicio/next/5
  115. objection/5
  116. bcryptjs/4
  117. @capacitor/app/4
  118. @capacitor/cli/4
  119. html2canvas/5
  120. react-colorful/5
  121. react-contenteditable/5
  122. react-hotkeys-hook/5
  123. react-icons/5
  124. react-konva/5
  125. react-moveable/5
  126. react-selecto/5
  127. uuid/5
  128. openai/6
  129. jose/4
  130. @hashgraph/sdk/8
  131. @anthropic-ai/sdk/4
  132. @mollie/api-client/6
  133. eslint-plugin-import/6
  134. @sparticuz/chromium/4
  135. web-vitals/9
  136. jsonwebtoken/5
  137. haversine-distance/4
  138. xlsx/4
  139. sonner/4
  140. lodash/5
  141. bcrypt/5
  142. sitemap/5
  143. yesvelte/4
  144. @testing-library/jest-dom/10
  145. @testing-library/react/10
  146. @testing-library/user-event/10
  147. react-markdown/4
  148. moment-timezone/4
  149. @headlessui/react/4
  150. @heroicons/react/4
  151. geolib/4
  152. request/4
  153. remark/4
  154. svelte-dnd-action/3
  155. @vite-pwa/sveltekit/3
  156. @convex-dev/agent/3
  157. @convex-dev/workflow/3
  158. tw-animate-css/3
  159. svelte-splitpanes/4
  160. leaflet/3
  161. @react-google-maps/api/4
  162. tailwind-variants/3
  163. cors/5
  164. vercel/3
  165. vite-plugin-pwa/3
  166. @convex-dev/better-auth/3
  167. @mmailaender/convex-better-auth-svelte/3
  168. better-auth/3
  169. xml2js/4
  170. @tanstack/react-table/3
  171. libphonenumber-js/3
  172. react-resizable-panels/3
  173. nodemailer/3
  174. speakeasy/3
  175. @fullcalendar/list/3
  176. chart.js/3
  177. @tabler/icons-react/3
  178. node-cron/3
  179. csv-parser/4
  180. papaparse/3
  181. @deepgram/sdk/3
  182. next-themes/3
  183. env-app-yaml/4
  184. @sentry/nextjs/3
  185. friendsofphp/php-cs-fixer/3
  186. react-cookie/4
  187. rimraf/4
  188. svelte-preprocess/3
  189. @neoconfetti/svelte/4
  190. @floating-ui/react/3
  191. @prisma/client/3
  192. @tiptap-pro/extension-ai-agent/3
  193. @tiptap-pro/extension-ai-changes/3
  194. @tiptap-pro/extension-ai-suggestion/3
  195. ai-sdk-tools/3
  196. diff-match-patch/3
  197. ollama-ai-provider-v2/3
  198. prisma/3
  199. firebase-functions/5
  200. prop-types/3
  201. @eslint/config-array/3
  202. canvas/3
  203. konva/3
  204. lru-cache/3
  205. use-image/3
  206. react-type-animation/3
  207. react-helmet/4
  208. react-sortable-hoc/4
  209. husky/3
  210. lint-staged/3
  211. remark-html/3
  212. jsonrepair/3
  213. decimal.js/3
  214. @strapi/strapi/3
  215. bookshelf/3
  216. express-promise-router/3
  217. js-levenshtein/3
  218. metaphone/3
  219. morgan/3
  220. remove-markdown/3
  221. stopword/3
  222. turndown/3
  223. csv-parse/3
  224. @rollup/plugin-node-resolve/4
  225. next-seo/3
  226. next-sitemap/3
  227. react-gtm-module/3
  228. eslint-plugin-prettier/3
  229. css-loader/4
  230. style-loader/4
  231. webpack/4
  232. webpack-cli/4
  233. @sanity/client/2
  234. @sanity/image-url/2
  235. groq/2
  236. multer/3
  237. @auth/core/2
  238. dotenv-cli/2
  239. @vercel/analytics/2
  240. node-html-parser/2
  241. messagebird/3
  242. pg/2
  243. qrcode/2
  244. @capacitor/assets/2
  245. react-redux/8
  246. redux/8
  247. @fastify/cookie/2
  248. @fastify/rate-limit/2
  249. fastify/2
  250. fast-diff/3
  251. google-map-react/3
  252. react-admin/3
  253. react-admin-import-csv/3
  254. react-clear-cache/3
  255. react-dnd/3
  256. react-markdown-editor-lite/3
  257. react-scroll-into-view-if-needed/3
  258. react-sortable-tree/3
  259. recompose/3
  260. @supabase/supabase-js/2
  261. pino-pretty/2
  262. vaul-svelte/2
  263. maplibre-gl/2
  264. @faker-js/faker/2
  265. @xyflow/react/2
  266. dagre/2
  267. knip/2
  268. mammoth/2
  269. pdf-lib/2
  270. pdfjs-dist/2
  271. rollup-plugin-visualizer/2
  272. shadcn/2
  273. pdfkit/2
  274. react-confetti/2
  275. canvas-confetti/2
  276. resend/2
  277. @prismicio/helpers/3
  278. @prismicio/slice-simulator-react/3
  279. eslint-plugin-svelte3/2
  280. @convex-dev/resend/2
  281. convex-helpers/2
  282. html-webpack-plugin/3
  283. webpack-dev-server/3
  284. unified/2
  285. unist-util-visit/2
  286. shadcn-svelte/2
  287. eslint-plugin-unused-imports/2
  288. @fullcalendar/resource-timeline/2
  289. dayjs/2
  290. dexie/2
  291. litepicker/2
  292. luxon/2
  293. patternomaly/2
  294. tippy.js/2
  295. redux-persist/7
  296. redux-saga/7
  297. @dnd-kit/core/2
  298. date-fns-tz/2
  299. mixpanel-browser/2
  300. handlebars/2
  301. twig/2
  302. google/auth/2
  303. guzzlehttp/guzzle/2
  304. runes/2
  305. fast-xml-parser/3
  306. eslint-plugin-only-warn/3
  307. he/3
  308. @svgr/webpack/3
  309. cmdk/2
  310. input-otp/2
  311. langfuse/2
  312. react-day-picker/2
  313. file-saver/2
  314. @babel/core/5
  315. node-sass/4
  316. @hotjar/browser/2
  317. country-list/2
  318. highcharts/2
  319. owasp-password-strength-test/2
  320. @emotion/react/3
  321. @mui/material/3
  322. rollup/3
  323. @cloudflare/kv-asset-handler/2
  324. remark-gfm/2
  325. http/4
  326. @ai-sdk-tools/memory/2
  327. drizzle-orm/2
  328. @lottiefiles/svelte-lottie-player/2
  329. @strapi/icons/2
  330. vite-bundle-visualizer/2
  331. doctrine/annotations/2
  332. @altano/satori-fit-text/2
  333. postcss-preset-env/4
  334. history/6
  335. sveaflet/2
  336. svelte-resize-observer-action/2
  337. npm/2
  338. use-debounce/2
  339. jsdom/2
  340. solc/2
  341. @codemirror/lang-css/2
  342. @codemirror/lang-html/2
  343. @codemirror/lang-javascript/2
  344. codemirror/2
  345. firebase-functions-test/3
  346. twig/twig/3
  347. @sveltestack/svelte-query/2
  348. broadcast-channel/2
  349. svelte-forms-lib/2
  350. javascript-time-ago/2
  351. scroll-into-view-if-needed/2
  352. crypto/3
  353. compression/2
  354. ts-node/3
  355. eslint-plugin-jest-dom/2
  356. eslint-plugin-testing-library/2
  357. rollup-plugin-svelte/2
  358. babel-loader/3
  359. nanoid/2
  360. mime-types/2
  361. cookie/2
  362. psr/simple-cache/2
  363. symfony/finder/2
  364. google/cloud-storage/2
  365. deepl-node/2
  366. html-minifier/2
  367. sanitize-filename/2
  368. stream/2
  369. transliteration/2
  370. turndown-plugin-gfm/2
  371. xml-escape/2
  372. html-to-text/2
  373. @fullhuman/postcss-purgecss/2
  374. @tailwindcss/aspect-ratio/2
  375. build/2
  376. interweave/2
  377. next-slicezone/2
  378. postcss-import/2
  379. prismic-reactjs/2
  380. react-device-detect/2
  381. @vercel/style-guide/2
  382. jest/2
  383. react-intersection-observer/2
  384. connected-react-router/4
  385. clean-webpack-plugin/2
  386. caniuse-lite/2
  387. image-size/2
  388. postcss-flexbugs-fixes/2
  389. simple-oauth2/2
  390. https/2
  391. @material-ui/core/3
  392. async/2
  393. aws-sdk/2
  394. codeclimate/php-test-reporter/2
  395. johnkary/phpunit-speedtrap/2
  396. lambda-audio/2
  397. socket.io/2
  398. matthiasmullie/minify/2
  399. eslint-config-airbnb/2
  400. react-dropzone/2
  401. tslint/2
  402. babel-eslint/2
  403. file-loader/2
  404. image-webpack-loader/2
  405. mini-css-extract-plugin/2
  406. postcss-loader/2
  407. sass-loader/2
  408. stylelint/2
  409. stylelint-config-standard/2
  410. stylelint-order/2
  411. terser-webpack-plugin/2
  412. squizlabs/php_codesniffer/2
  413. opn/2