hacking on cool stuff rn
I'm learning Chinese and grew tired of rote memorization and the contrived examples found in many language-learning apps. I wanted to learn in a more natural context by reading content I was already interested in, such as articles on Hacker News.
So I built a tool that takes any article and partially translates it based on your self-reported HSK (Chinese Proficiency Test) level. The goal is for you to be able to read and understand the article while actively using the Chinese you already know.
If you forget a character, simply double-click or select it to get an instant definition. After finishing an article, click "done reading" and the tool tracks the words you knew and those you needed to look up over time.
My aim is to make language learning feel less like a chore and more like a natural extension of your existing reading habits.
I have plans to develop this into a Chrome extension for automatic translations as you browse. I also intend to introduce smarter vocabulary progression, for example, by sprinkling in HSK 4 words once you are comfortable with HSK 3.
The project is still in its early stages, so any feedback or questions would be greatly appreciated.
You can try it out here: https://trylinden.com/chinese/
Avichal lived this problem at a dental insurance startup, where he spent time fixing brittle Selenium scripts that broke on minor website updates. He was pulling data from dozens of legacy portals and the constant maintenance was a drain on engineering time.
The new AI browser tools had their own issues. We found them to be mostly black boxes, lacking the observability and control needed for business-critical pipelines.
We're building Linden with a different approach: AI isn't responsible for the core execution; instead it simply creates and maintains Playwright scripts for you. This makes the entire workflow transparent and robust.
Here's how it works:
1. Record the First Run: To start, the task is performed just once by our AI agent (or manually). As the task runs, we record the sequence of raw, deterministic actions, like click(selector) and fill(selector, value).
2. Export a Workflow: This action trace is saved as a clean Playwright script. You also get the raw steps in JSON, giving you a fully transparent workflow you can read, edit, and run yourself.
3. Execute the Script: All future runs execute this script directly. It’s cheaper, faster, and more stable than having an AI agent re-evaluate the page from scratch every time.
4. Self-Heal on Failure: When a step in the workflow fails (e.g., a selector becomes stale), an AI agent is invoked with a narrow scope: to fix only that one broken step. It then patches the workflow, and the updated script is saved for all future runs.
We’re still super early and we’d love your feedback. Also interested to hear about how people are currently dealing with browser automations at any scale.