Skip to content

Instantly share code, notes, and snippets.

View sgrove's full-sized avatar
💭
The real friends were the models we made along the way

Sean Grove sgrove

💭
The real friends were the models we made along the way
View GitHub Profile
@sgrove
sgrove / linzumi-investor-update-feb-2026.md
Last active February 9, 2026 20:30
Linzumi Investor Update - February 2026 (Dec + Jan catch-up)

Linzumi February Update (Dec + Jan catch-up)

TL;DR: Spec in → verified, working app out. On Feb 2nd our agents autonomously solved a hard problem through multiple implement/critique/judge cycles with zero human help. We can now watch specs compile into code in real-time. Demo in 2-3 weeks. 10-17 years runway.


Apologies for missing January - we were heads-down trying to ship and kept thinking "one more day and we can show something even more interesting." Bad habit, working on it. But hopefully this update and the attached screenshots give a good glimpse into what the system is becoming capable of.

Quick synopsis: We missed the Dec 22 holiday launch but got critical learnings on unstructured doc editing. We then pivoted to spec → coding agent compilation, and on Feb 2nd saw the first autonomous implementer/critic/judge cycles complete without human intervention. We now have a live report viewer and are 2-3 weeks from an end-to-end demo.

I would like you to translate TypeScript react components to Rescript react components, using some examples I will provide as a guide. Any time you are unsure as to the equivalency between a TypeScript construct and its Rescript counterpart, add it to a "Future examples to provide" list you output at the end after the code.
Let's begin!
Heres PromptEditor.tsx:
```
import React, { useState } from "react";
import { Button } from "@/components/ui/button";
import { Input } from "@/components/ui/input";

Reading the (already impressive) compiled output in helper.bs.js in the tutorial by Michele Riva on Calling ReasonML from TypeScript, I thought the output could be made nearly identical (bar comments and some weird nest paren wrapping) to what an experienced dev might write by hand

If we:

  1. have Flat-variants-(and polymorphic-variants)-as-strings (see
  2. Omit String(x) when x is already a string (already merged): rescript-lang/rescript#4293
  3. Propogate the variable names from destructuring a tuple to the output (see ideal_output_2.bs.js)
  4. Don't do nested parens inside of {j|$x foo $y bar $z baz|j} output

Then the output (minus the /* tuple */ comments) would be exactly what you'd write by hand!

type editor;
module Editor: {
[@react.component]
let make:
(
~width: string=?,
~height: string=?,
~value: string=?,
~defaultValue: string=?,
https://gist.github.com/sgrove/7c2da3ee8e4894017af98c80b6b5fbb6

Keybase proof

I hereby claim:

  • I am sgrove on github.
  • I am sgrove (https://keybase.io/sgrove) on keybase.
  • I have a public key whose fingerprint is 35A0 F67E AD5E 19C0 75B2 7F72 C0B8 0362 7E5F CE94

To claim this, I am signing this object:

@sgrove
sgrove / Example_queries.graphql
Created July 16, 2018 10:47
Example Descuri (URLHound?) Queries
{
descuri(url: "https://news.ycombinator.com/user?id=tlrobinson") {
twitter {
links
}
youTube {
uri
}
other {
uri
@sgrove
sgrove / google_maps.gql
Created July 14, 2018 01:29
Google Maps (Reverse+) Geolocation and Elevation API
{
google(auths: { googleMapsKey: "..." }) {
maps {
intersection: geolocation(address: "Eddy & Franklin St, San Francisco, CA") {
...fullMap
}
point: reverseGeolocation(
point: { lat: 37.7478646802915, lng: -122.4578673697085 }
) {
...fullMap
@sgrove
sgrove / onegraph.gql
Last active July 12, 2018 21:14
Example multi-service query with OneGraph and GraphQL
{
## Retrieve a YouTube video by its id
youTubeVideo(id: "YX40hbAHx3s") {
snippet {
# Pull out the title
title
# Jump to the channel the video was uploaded to
uploadChannel {
snippet {
# Get the title of the channel
[
{
"created_at": "Thu Apr 06 15:28:43 +0000 2017",
"id": 850007368138018817,
"id_str": "850007368138018817",
"text": "RT @TwitterDev: 1/ Today we’re sharing our vision for the future of the Twitter API platform!nhttps://t.co/XweGngmxlP",
"truncated": false,
"entities": {
"hashtags": [],
"symbols": [],