Changelog

What shipped, and why.

Every release of every product I build, newest first, with the reason it went out. Follow it by RSS.

All releases

  1. PainSensev1.18.0

    • chore(pain-storecheck-001): Bring the repo's store checklists up to date from the 2026-10-17 console read (#100): Updates the two store checklists in docs/store/. Before this, every box was unticked even though both stores are mostly set up. Each tick now cites what the read-only read of Play Console and App Store Connect showed on 2026-10-17, and items the read didn't cover say so.
    • feat(pain-listing-002): Free-first store copy: the Play and App Store descriptions sell nothing that is Pro (#99): The Google Play short and full descriptions and the App Store description are rewritten for the free launch. The new text describes only what a free user can do in the app today, with no paid plan, and it keeps "not a medical device". Lines for the PDF report, 90-day trends and patterns are kept aside, outside the paste text, until Tek decides launch plan question 5.
    • feat(pain-count-001): Count two-week users without analytics: a server-side Firestore count, one number, no IDs out (#98): Adds an on-demand count of PainSense's goal number, two_week_users: how many accounts saved episodes on days at least 14 days apart. Tek runs one command (npm run -s count:two-week-users -- --project painmanagementapp-4c994 in functions/) and gets one number back. It reads Firestore with the Admin SDK on Tek's machine and sends nothing anywhere, which is needed now because PostHog was dropped and the goal had no way to be read.
    • feat(pain-freefirst-001): Hide Pro on the store builds for the free launch: one switch, off in the production EAS environment (#101): PainSense goes to the stores free first, but today every store build shows PRO badges and "Unlock" / "Upgrade to Pro" buttons that end in "Pro isn't available right now". A reviewer will hit that. This PR adds one build switch, EXPO_PUBLIC_PRO_ENABLED.
  2. ZenginUI@zenginui/adapter-css 0.6.1, @zenginui/adapter-shadcn 0.1.7, @zenginui/cli 0.11.0, @zenginui/engine 0.8.0, @zenginui/figma 0.3.2, @zenginui/hook 0.3.0, @zenginui/mcp 0.3.0, @zenginui/registry 0.5.4, @zenginui/rollup 0.1.7, create-zengin 0.2.0

    The Zengin CLI, the edit hook and the MCP server can now send anonymous usage counts to PostHog (app: "ZenginUI"), but only after the person running the CLI says yes to one question. Enter is no, and nothing is sent in CI, under DO_NOT_TRACK or before an answer. An event carries its name, the tool, its version, a random install id and whole-number counts.

  3. TekJobsv0.61.0

    The TekJobs marketing site (site/) now sends PostHog the open-source funnel: page views, docs read, the install command copied, and clicks through to GitHub, a release or npm, and Discussions. Every event carries app: "TekJobs site". md) joins that funnel with GitHub's clone counts and names one number for this stage.

  4. Timurtek.comv1.30.1

    Maintenance release

  5. Timurtek.comv1.30.0

    product=`. It reads the repos' GitHub Releases on the server. The page and each product view are static pages that regenerate every hour (ISR), so a version bump reaches the site without a deploy and without anyone writing anything.

  6. Timurtek.comv1.29.1

    Maintenance release

  7. TekJobsv0.60.0

    TekJobs is now measured, and its "There is no telemetry" promise still holds. The marketing site's existing GA4 is documented, with a capture showing that production sends a page_view. A small script, npm run traffic, reads the four GitHub counters Tek named (stars, forks, clones, release downloads) and prints them as a note ORG Brain can read.

  8. ZenginUI@zenginui/adapter-css 0.6.0, @zenginui/adapter-shadcn 0.1.6, @zenginui/cli 0.10.0, @zenginui/engine 0.7.0, @zenginui/figma 0.3.1, @zenginui/hook 0.2.3, @zenginui/mcp 0.2.0, @zenginui/registry 0.5.3, @zenginui/rollup 0.1.6, create-zengin 0.1.12

    • chore(zen-errors-001): Error reporting for ZenginUI (#36): com (the site and the docs) now sends its errors to PostHog's error tracking, each tagged with the release (Vercel's commit sha) and the surface (site or docs). It does nothing until you set VITE_POSTHOG_KEY, and it sends errors only, nothing that identifies a reader. Readers also get pages they can recover from: a crash shows Reload and a way back instead of a blank page, an unknown address gets a branded 404 with links home and to the docs, and the template catalog gets a "Try again" wh…
    • chore(zen-measure-001): Measure ZenginUI with PostHog (#35): com now sends product analytics to the org's PostHog project. Both pages (home and /why/) send a pageview, and pressing Copy on the npm create zengin@latest command sends install_command_copied, the venture's main action. Other snippet copies send code_copied.
    • A Claude Design adapter, and the third field test that is not shadcn (#34): ts` contracts, cross-checked against the export's own adherence config. It is proven the way the shadcn adapter was, with a field test on three real exports (FakeOrders, PainSense, AstroSense) that are not shadcn-descended. Running it surfaced four engine bugs in how fixes are suggested; those are fixed here too, each with a regression test.
  9. Timurtek.comv1.29.0

    Blog posts (and case studies, which share the MDX map) can now show a result as a chart, an interaction as a muted loop, a change as a before/after slider, a file as a code card, and a short process as a step diagram written in the post itself. Each one uses only the site's tokens, works in light and dark, and is accessible by keyboard and screen reader. They're documented in one place so the Content OS media rule table has something to link to.

  10. Timurtek.comv1.28.1

    The blog byline and author card, /links, and the Person image in the structured data (what Google and LinkedIn previews read) now show Tek's real photo, the same one as LinkedIn and /resume, instead of the stylised AI-looking portrait. png are deleted. svg is rebuilt from the footer's own paths, so agents reading the design system pick up Tek's actual signature.

  11. Timurtek.comv1.28.0

    Maintenance release

  12. TekJobsv0.59.0

    Maintenance release

  13. TekJobsv0.58.0

    Maintenance release

  14. TekJobsv0.57.0

    Maintenance release

  15. TekJobsv0.56.0

    Maintenance release

  16. TekJobsv0.55.3

    Maintenance release

  17. AstroSensev1.49.6

    Maintenance release

  18. ZenginUI@zenginui/adapter-css 0.5.1, @zenginui/adapter-shadcn 0.1.5, @zenginui/cli 0.9.0, @zenginui/engine 0.6.0, @zenginui/figma 0.3.0, @zenginui/hook 0.2.2, @zenginui/mcp 0.1.5, @zenginui/mock 0.1.0, @zenginui/registry 0.5.2, @zenginui/rollup 0.1.5, @zenginui/ui 0.2.4, create-zengin 0.1.11

    Maintenance release

  19. Timurtek.comv1.27.0

    Maintenance release

  20. Timurtek.comv1.26.0

    Maintenance release

  21. TekJobsv0.55.2

    Maintenance release

  22. TekJobsv0.55.1

    Maintenance release

  23. TekJobsv0.55.0

    Maintenance release

  24. AstroSensev1.49.5

    Maintenance release

  25. AstroSensev1.49.4

    Maintenance release

  26. AstroSensev1.49.3

    Maintenance release

  27. Timurtek.comv1.25.0

    Maintenance release

  28. Timurtek.comv1.24.0

    Maintenance release

  29. Timurtek.comv1.23.0

    Maintenance release

  30. Timurtek.comv1.22.3

    Maintenance release

  31. AstroSensev1.49.2

    Maintenance release

  32. TekJobsv0.54.0

    Maintenance release

  33. TekJobsv0.53.0

    Maintenance release

  34. TekJobsv0.52.1

    Maintenance release

  35. AstroSensev1.49.1

    Maintenance release

  36. TekJobsv0.52.0

    Maintenance release

  37. TekJobsv0.51.2

    Maintenance release

  38. Timurtek.comv1.22.2

    Maintenance release

  39. AstroSensev1.49.0

    Maintenance release

  40. TekJobsv0.51.1

    Maintenance release

  41. TekJobsv0.51.0

    Maintenance release

  42. TekJobsv0.50.0

    Maintenance release

  43. TekJobsv0.49.0

    Maintenance release

  44. TekJobsv0.48.0

    Maintenance release

  45. PainSensev1.17.0

    Maintenance release

  46. AstroSensev1.48.1

    Maintenance release

  47. TekJobsv0.47.0

    Maintenance release

  48. TekJobsv0.46.0

    Maintenance release

  49. TekJobsv0.45.0

    Maintenance release

  50. TekJobsv0.44.0

    Maintenance release

  51. Timurtek.comv1.22.1

    Maintenance release

  52. TekJobsv0.43.0

    Maintenance release

  53. Timurtek.comv1.22.0

    Maintenance release

  54. TekJobsv0.42.0

    Maintenance release

  55. PainSensev1.16.1

    Maintenance release

  56. Timurtek.comv1.21.0

    Maintenance release

  57. Timurtek.comv1.20.0

    Maintenance release

  58. Timurtek.comv1.19.0

    Maintenance release

  59. TekJobsv0.41.1

    Maintenance release

  60. TekJobsv0.41.0

    Maintenance release

  61. TekJobsv0.40.0

    Maintenance release

  62. TekJobsv0.39.0

    Maintenance release

  63. TekJobsv0.38.1

    Maintenance release

  64. TekJobsv0.38.0

    Maintenance release

  65. PainSensev1.16.0

    Maintenance release

  66. TekJobsv0.37.1

    Maintenance release

  67. TekJobsv0.37.0

    Maintenance release

  68. TekJobsv0.36.0

    Maintenance release

  69. TekJobsv0.35.2

    Maintenance release

  70. TekJobsv0.35.1

    Maintenance release

  71. TekJobsv0.35.0

    Maintenance release

  72. TekJobsv0.34.0

    Maintenance release

  73. TekJobsv0.33.0

    Maintenance release

  74. TekJobsv0.32.1

    Maintenance release

  75. TekJobsv0.32.0

    Maintenance release

  76. TekJobsv0.31.1

    Maintenance release

  77. TekJobsv0.31.0

    Maintenance release

  78. PainSensev1.15.2

    Maintenance release

  79. PainSensev1.15.1

    Maintenance release

  80. PainSensev1.15.0

    Maintenance release

  81. PainSensev1.14.1

    Maintenance release

  82. PainSensev1.14.0

    Maintenance release

  83. PainSensev1.13.8

    Maintenance release

  84. PainSensev1.13.7

    Maintenance release

  85. PainSensev1.13.6

    Maintenance release

  86. PainSensev1.13.5

    Maintenance release

  87. PainSensev1.13.4

    Maintenance release

  88. PainSensev1.13.3

    Maintenance release

  89. PainSensev1.13.2

    Maintenance release

  90. PainSensev1.13.1

    Maintenance release

  91. PainSensev1.13.0

    Maintenance release

  92. PainSensev1.12.0

    Maintenance release

  93. PainSensev1.11.0

    Maintenance release

  94. PainSensev1.10.0

    Maintenance release

  95. PainSensev1.9.0

    Maintenance release

  96. PainSensev1.8.1

    Maintenance release

  97. PainSensev1.8.0

    Maintenance release

  98. PainSensev1.7.2

    Maintenance release

  99. PainSensev1.7.1

    Maintenance release

  100. PainSensev1.7.0

    Maintenance release

  101. PainSensev1.6.3

    Maintenance release

  102. PainSensev1.6.2

    Maintenance release

  103. PainSensev1.6.1

    Maintenance release

  104. PainSensev1.6.0

    Maintenance release

  105. PainSensev1.5.1

    Maintenance release

  106. Timurtek.comv1.18.1

    Maintenance release

  107. PainSensev1.5.0

    Maintenance release

  108. PainSensev1.4.0

    Maintenance release

  109. PainSensev1.3.0

    Maintenance release

  110. PainSensev1.2.0

    Maintenance release

  111. PainSensev1.1.0

    Maintenance release

  112. PainSensev1.0.0

    Maintenance release

  113. Timurtek.comv1.18.0

    Maintenance release

  114. Timurtek.comv1.17.0

    Maintenance release

  115. Timurtek.comv1.16.0

    Maintenance release

  116. Timurtek.comv1.15.0

    Maintenance release

  117. Timurtek.comv1.14.0

    Maintenance release

  118. Timurtek.comv1.13.0

    Maintenance release

  119. TekJobsv0.30.0

    Maintenance release

  120. TekJobsv0.29.3

    Maintenance release

  121. TekJobsv0.29.2

    Maintenance release

  122. TekJobsv0.29.1

    Maintenance release

  123. TekJobsv0.29.0

    Maintenance release

  124. TekJobsv0.28.0

    Maintenance release

  125. Timurtek.comv1.12.0

    Maintenance release

  126. TekJobsv0.27.1

    Maintenance release

  127. Timurtek.comv1.11.0

    Maintenance release

  128. TekJobsv0.27.0

    Maintenance release

  129. TekJobsv0.26.1

    Maintenance release

  130. TekJobsv0.26.0

    Maintenance release

  131. TekJobsv0.25.0

    Maintenance release

  132. Timurtek.comv1.10.1

    Maintenance release

  133. TekJobsv0.24.2

    Maintenance release

  134. TekJobsv0.24.1

    Maintenance release

  135. TekJobsv0.24.0

    Maintenance release

  136. TekJobsv0.23.0

    Maintenance release

  137. TekJobsv0.22.0

    Maintenance release

  138. TekJobsv0.21.0

    Maintenance release

  139. TekJobsv0.20.0

    Maintenance release

  140. TekJobsv0.19.0

    Maintenance release

  141. TekJobsv0.18.2

    Maintenance release

  142. TekJobsv0.18.1

    Maintenance release

  143. TekJobsv0.18.0

    Maintenance release

  144. TekJobsv0.17.0

    Maintenance release

  145. TekJobsv0.16.0

    Maintenance release

  146. TekJobsv0.15.0

    Maintenance release

  147. TekJobsv0.14.0

    Maintenance release

  148. TekJobsv0.13.0

    Maintenance release

  149. TekJobsv0.12.0

    Maintenance release

  150. TekJobsv0.11.0

    Maintenance release

  151. TekJobsv0.10.0

    Maintenance release

  152. TekJobsv0.9.2

    Maintenance release

  153. TekJobsv0.9.1

    Maintenance release

  154. TekJobsv0.9.0

    Maintenance release

  155. TekJobsv0.8.0

    Maintenance release

  156. TekJobsv0.7.1

    Maintenance release

  157. TekJobsv0.7.0

    Maintenance release

  158. TekJobsv0.6.1

    Maintenance release

  159. TekJobsv0.6.0

    Maintenance release

  160. TekJobsv0.5.1

    Maintenance release

  161. TekJobsv0.5.0

    Maintenance release

  162. TekJobsv0.4.0

    Maintenance release

  163. TekJobsv0.3.0

    Maintenance release

  164. AstroSensev1.48.0

    Maintenance release

  165. Timurtek.comv1.10.0

    Maintenance release

  166. AstroSensev1.47.1

    Maintenance release

  167. AstroSensev1.47.0

    Maintenance release

  168. AstroSensev1.46.0

    Maintenance release

  169. Timurtek.comv1.9.1

    Maintenance release

  170. Timurtek.comv1.9.0

    Maintenance release

  171. AstroSensev1.45.1

    Maintenance release

  172. Timurtek.comv1.8.0

    Maintenance release

  173. Timurtek.comv1.7.0

    Maintenance release

  174. Timurtek.comv1.6.3

    Maintenance release

  175. Timurtek.comv1.6.2

    Maintenance release

  176. Timurtek.comv1.6.1

    Maintenance release

  177. Timurtek.comv1.6.0

    Maintenance release

  178. AstroSensev1.45.0

    Maintenance release

  179. Timurtek.comv1.5.4

    Maintenance release

  180. Timurtek.comv1.5.3

    Maintenance release

  181. Timurtek.comv1.5.2

    Maintenance release

  182. Timurtek.comv1.5.1

    Maintenance release

  183. Timurtek.comv1.5.0

    Maintenance release

  184. Timurtek.comv1.4.3

    Maintenance release

  185. Timurtek.comv1.4.2

    Maintenance release

  186. Timurtek.comv1.4.1

    Maintenance release

  187. Timurtek.comv1.4.0

    Maintenance release

  188. Timurtek.comv1.3.4

    Maintenance release

  189. Timurtek.comv1.3.3

    Maintenance release

  190. Timurtek.comv1.3.2

    Maintenance release

  191. Timurtek.comv1.3.1

    Maintenance release

  192. Timurtek.comv1.3.0

    Maintenance release

  193. Timurtek.comv1.2.8

    Maintenance release

  194. Timurtek.comv1.2.7

    Maintenance release

  195. Timurtek.comv1.2.6

    Maintenance release

  196. Timurtek.comv1.2.5

    Maintenance release

  197. Timurtek.comv1.2.4

    Maintenance release

  198. Timurtek.comv1.2.3

    Maintenance release

  199. Timurtek.comv1.2.2

    Maintenance release

  200. Timurtek.comv1.2.1

    Maintenance release

  201. Timurtek.comv1.2.0

    Maintenance release

  202. Timurtek.comv1.1.6

    Maintenance release

  203. Timurtek.comv1.1.5

    Maintenance release

  204. AstroSensev1.44.0

    Maintenance release

  205. Timurtek.comv1.1.4

    Maintenance release

  206. Timurtek.comv1.1.3

    Maintenance release

  207. Timurtek.comv1.1.2

    Maintenance release

  208. Timurtek.comv1.1.1

    Maintenance release

  209. Timurtek.comv1.1.0

    Maintenance release

  210. Timurtek.comv1.0.4

    Maintenance release

  211. Timurtek.comv1.0.3

    Maintenance release

  212. Timurtek.comv1.0.2

    Maintenance release

  213. Timurtek.comv1.0.1

    Maintenance release

  214. Timurtek.comv1.0.0

    Maintenance release

  215. AstroSensev1.43.2

    Maintenance release

  216. AstroSensev1.43.1

    Maintenance release

  217. AstroSensev1.43.0

    Maintenance release

  218. AstroSensev1.42.0

    Maintenance release

  219. AstroSensev1.41.0

    Maintenance release

  220. AstroSensev1.40.0

    Maintenance release

  221. AstroSensev1.39.0

    Maintenance release

  222. AstroSensev1.38.0

    Maintenance release

  223. AstroSensev1.37.0

    Maintenance release

  224. AstroSensev1.36.0

    Maintenance release

  225. AstroSensev1.35.0

    Maintenance release

  226. AstroSensev1.34.2

    Maintenance release

  227. AstroSensev1.34.1

    Maintenance release

  228. AstroSensev1.34.0

    Maintenance release

  229. AstroSensev1.33.0

    Maintenance release

  230. AstroSensev1.32.1

    Maintenance release

  231. AstroSensev1.32.0

    Maintenance release

  232. AstroSensev1.31.0

    Maintenance release

  233. AstroSensev1.30.0

    Maintenance release

  234. AstroSensev1.29.0

    Maintenance release

  235. AstroSensev1.28.1

    Maintenance release

  236. AstroSensev1.28.0

    Maintenance release

  237. AstroSensev1.27.0

    Maintenance release

  238. AstroSensev1.26.0

    Maintenance release

  239. AstroSensev1.25.0

    Maintenance release

  240. AstroSensev1.24.0

    Maintenance release

  241. AstroSensev1.23.0

    Maintenance release

  242. AstroSensev1.22.1

    Maintenance release

  243. AstroSensev1.22.0

    Maintenance release

  244. AstroSensev1.21.0

    Maintenance release

  245. AstroSensev1.20.0

    Maintenance release

  246. AstroSensev1.19.0

    Maintenance release

  247. AstroSensev1.18.0

    Maintenance release

  248. AstroSensev1.17.0

    Maintenance release

  249. AstroSensev1.16.0

    Maintenance release

  250. AstroSensev1.15.0

    Maintenance release

  251. AstroSensev1.14.4

    Maintenance release

  252. AstroSensev1.14.3

    Maintenance release

  253. AstroSensev1.14.2

    Maintenance release

  254. AstroSensev1.14.1

    Maintenance release

  255. AstroSensev1.14.0

    Maintenance release

  256. AstroSensev1.13.0

    Maintenance release

  257. AstroSensev1.12.0

    Maintenance release

  258. AstroSensev1.11.0

    Maintenance release

  259. AstroSensev1.10.0

    Maintenance release

  260. AstroSensev1.9.0

    Maintenance release

  261. AstroSensev1.8.0

    Maintenance release

  262. AstroSensev1.7.0

    Maintenance release

  263. AstroSensev1.6.0

    Maintenance release

  264. AstroSensev1.5.0

    Maintenance release

  265. AstroSensev1.4.0

    Maintenance release

  266. AstroSensev1.3.2

    Maintenance release

  267. AstroSensev1.3.1

    Maintenance release

  268. AstroSensev1.3.0

    Maintenance release

  269. AstroSensev1.2.0

    Maintenance release

  270. AstroSensev1.1.0

    Maintenance release

  271. AstroSensev1.0.0

    Maintenance release