DESIGN · CODE · EVERYDAY IDEAS

THE BERRY · Aries

Hi, I'm Berry Wahlberg.

I build tools for writing, creating, and working with AI — making complicated work feel a little more natural.

About Me

Based in Shanghai. Curious about how things work, and how they could work better.

I like making tools because a small improvement can change the feel of an entire task. Fewer repeated steps, a file that is easy to find, an idea you can pick up again: these are good reasons to build something. I enjoy following an idea all the way from the interface to the code underneath.

I get particular about the quiet details: whether a save feels certain, whether a shortcut keeps your train of thought, and whether an AI result shows where it came from. Lately, I’ve been exploring calmer writing spaces, ways to revisit creative work, and useful boundaries for agents.

36
Public repositories
25
Non-fork repositories
3
Product stories here

GitHub snapshot · 2026-09-06. Includes 11 forks, plus archived and empty repositories. Repository counts are not shipped-product counts. GitHub ↗

AriesENFP · Happy PupGentle Bottom
About Me

Building on GitHub

1,517 contributions in the last year

View on GitHub ↗
1,517 contributions in the last year2025-09-07 — 2026-09-06. Color levels represent daily contributions. 2025-09-07: 0 contributions2025-09-08: 0 contributions2025-09-09: 0 contributions2025-09-10: 0 contributions2025-09-11: 0 contributions2025-09-12: 0 contributions2025-09-13: 0 contributions2025-09-14: 0 contributions2025-09-15: 1 contribution2025-09-16: 0 contributions2025-09-17: 0 contributions2025-09-18: 0 contributions2025-09-19: 0 contributions2025-09-20: 0 contributions2025-09-21: 0 contributions2025-09-22: 0 contributions2025-09-23: 0 contributions2025-09-24: 0 contributions2025-09-25: 0 contributions2025-09-26: 0 contributions2025-09-27: 0 contributions2025-09-28: 0 contributions2025-09-29: 0 contributions2025-09-30: 0 contributions2025-10-01: 0 contributions2025-10-02: 0 contributions2025-10-03: 0 contributions2025-10-04: 0 contributions2025-10-05: 0 contributions2025-10-06: 0 contributions2025-10-07: 0 contributions2025-10-08: 0 contributions2025-10-09: 0 contributions2025-10-10: 0 contributions2025-10-11: 0 contributions2025-10-12: 0 contributions2025-10-13: 2 contributions2025-10-14: 0 contributions2025-10-15: 0 contributions2025-10-16: 0 contributions2025-10-17: 0 contributions2025-10-18: 0 contributions2025-10-19: 0 contributions2025-10-20: 0 contributions2025-10-21: 0 contributions2025-10-22: 0 contributions2025-10-23: 0 contributions2025-10-24: 0 contributions2025-10-25: 0 contributions2025-10-26: 0 contributions2025-10-27: 0 contributions2025-10-28: 0 contributions2025-10-29: 0 contributions2025-10-30: 0 contributions2025-10-31: 0 contributions2025-11-01: 0 contributions2025-11-02: 0 contributions2025-11-03: 0 contributions2025-11-04: 0 contributions2025-11-05: 0 contributions2025-11-06: 0 contributions2025-11-07: 0 contributions2025-11-08: 0 contributions2025-11-09: 0 contributions2025-11-10: 0 contributions2025-11-11: 0 contributions2025-11-12: 3 contributions2025-11-13: 0 contributions2025-11-14: 0 contributions2025-11-15: 0 contributions2025-11-16: 0 contributions2025-11-17: 0 contributions2025-11-18: 0 contributions2025-11-19: 0 contributions2025-11-20: 0 contributions2025-11-21: 0 contributions2025-11-22: 0 contributions2025-11-23: 0 contributions2025-11-24: 0 contributions2025-11-25: 0 contributions2025-11-26: 0 contributions2025-11-27: 0 contributions2025-11-28: 0 contributions2025-11-29: 0 contributions2025-11-30: 0 contributions2025-12-01: 0 contributions2025-12-02: 0 contributions2025-12-03: 0 contributions2025-12-04: 0 contributions2025-12-05: 0 contributions2025-12-06: 0 contributions2025-12-07: 0 contributions2025-12-08: 0 contributions2025-12-09: 0 contributions2025-12-10: 0 contributions2025-12-11: 0 contributions2025-12-12: 0 contributions2025-12-13: 0 contributions2025-12-14: 0 contributions2025-12-15: 0 contributions2025-12-16: 0 contributions2025-12-17: 0 contributions2025-12-18: 1 contribution2025-12-19: 0 contributions2025-12-20: 0 contributions2025-12-21: 0 contributions2025-12-22: 0 contributions2025-12-23: 0 contributions2025-12-24: 0 contributions2025-12-25: 0 contributions2025-12-26: 0 contributions2025-12-27: 0 contributions2025-12-28: 0 contributions2025-12-29: 0 contributions2025-12-30: 0 contributions2025-12-31: 0 contributions2026-01-01: 0 contributions2026-01-02: 0 contributions2026-01-03: 0 contributions2026-01-04: 0 contributions2026-01-05: 0 contributions2026-01-06: 1 contribution2026-01-07: 0 contributions2026-01-08: 0 contributions2026-01-09: 4 contributions2026-01-10: 6 contributions2026-01-11: 12 contributions2026-01-12: 6 contributions2026-01-13: 1 contribution2026-01-14: 0 contributions2026-01-15: 0 contributions2026-01-16: 0 contributions2026-01-17: 0 contributions2026-01-18: 0 contributions2026-01-19: 1 contribution2026-01-20: 0 contributions2026-01-21: 2 contributions2026-01-22: 0 contributions2026-01-23: 0 contributions2026-01-24: 0 contributions2026-01-25: 0 contributions2026-01-26: 0 contributions2026-01-27: 0 contributions2026-01-28: 0 contributions2026-01-29: 0 contributions2026-01-30: 7 contributions2026-01-31: 0 contributions2026-02-01: 2 contributions2026-02-02: 3 contributions2026-02-03: 1 contribution2026-02-04: 0 contributions2026-02-05: 0 contributions2026-02-06: 0 contributions2026-02-07: 0 contributions2026-02-08: 0 contributions2026-02-09: 0 contributions2026-02-10: 0 contributions2026-02-11: 0 contributions2026-02-12: 0 contributions2026-02-13: 0 contributions2026-02-14: 0 contributions2026-02-15: 0 contributions2026-02-16: 0 contributions2026-02-17: 0 contributions2026-02-18: 0 contributions2026-02-19: 0 contributions2026-02-20: 0 contributions2026-02-21: 0 contributions2026-02-22: 0 contributions2026-02-23: 0 contributions2026-02-24: 0 contributions2026-02-25: 0 contributions2026-02-26: 0 contributions2026-02-27: 0 contributions2026-02-28: 0 contributions2026-03-01: 0 contributions2026-03-02: 0 contributions2026-03-03: 0 contributions2026-03-04: 0 contributions2026-03-05: 0 contributions2026-03-06: 0 contributions2026-03-07: 0 contributions2026-03-08: 0 contributions2026-03-09: 0 contributions2026-03-10: 0 contributions2026-03-11: 0 contributions2026-03-12: 0 contributions2026-03-13: 0 contributions2026-03-14: 0 contributions2026-03-15: 0 contributions2026-03-16: 0 contributions2026-03-17: 0 contributions2026-03-18: 0 contributions2026-03-19: 0 contributions2026-03-20: 0 contributions2026-03-21: 0 contributions2026-03-22: 0 contributions2026-03-23: 0 contributions2026-03-24: 0 contributions2026-03-25: 0 contributions2026-03-26: 0 contributions2026-03-27: 0 contributions2026-03-28: 2 contributions2026-03-29: 0 contributions2026-03-30: 0 contributions2026-03-31: 0 contributions2026-04-01: 1 contribution2026-04-02: 0 contributions2026-04-03: 1 contribution2026-04-04: 1 contribution2026-04-05: 0 contributions2026-04-06: 0 contributions2026-04-07: 4 contributions2026-04-08: 0 contributions2026-04-09: 0 contributions2026-04-10: 0 contributions2026-04-11: 0 contributions2026-04-12: 0 contributions2026-04-13: 0 contributions2026-04-14: 0 contributions2026-04-15: 0 contributions2026-04-16: 0 contributions2026-04-17: 0 contributions2026-04-18: 0 contributions2026-04-19: 0 contributions2026-04-20: 0 contributions2026-04-21: 0 contributions2026-04-22: 0 contributions2026-04-23: 0 contributions2026-04-24: 0 contributions2026-04-25: 0 contributions2026-04-26: 0 contributions2026-04-27: 0 contributions2026-04-28: 0 contributions2026-04-29: 0 contributions2026-04-30: 0 contributions2026-05-01: 0 contributions2026-05-02: 0 contributions2026-05-03: 0 contributions2026-05-04: 0 contributions2026-05-05: 0 contributions2026-05-06: 0 contributions2026-05-07: 0 contributions2026-05-08: 1 contribution2026-05-09: 0 contributions2026-05-10: 0 contributions2026-05-11: 0 contributions2026-05-12: 0 contributions2026-05-13: 0 contributions2026-05-14: 0 contributions2026-05-15: 0 contributions2026-05-16: 0 contributions2026-05-17: 0 contributions2026-05-18: 0 contributions2026-05-19: 0 contributions2026-05-20: 0 contributions2026-05-21: 1 contribution2026-05-22: 0 contributions2026-05-23: 0 contributions2026-05-24: 0 contributions2026-05-25: 0 contributions2026-05-26: 0 contributions2026-05-27: 0 contributions2026-05-28: 0 contributions2026-05-29: 0 contributions2026-05-30: 0 contributions2026-05-31: 0 contributions2026-06-01: 0 contributions2026-06-02: 0 contributions2026-06-03: 0 contributions2026-06-04: 0 contributions2026-06-05: 0 contributions2026-06-06: 0 contributions2026-06-07: 0 contributions2026-06-08: 0 contributions2026-06-09: 0 contributions2026-06-10: 0 contributions2026-06-11: 0 contributions2026-06-12: 0 contributions2026-06-13: 0 contributions2026-06-14: 0 contributions2026-06-15: 0 contributions2026-06-16: 0 contributions2026-06-17: 0 contributions2026-06-18: 0 contributions2026-06-19: 0 contributions2026-06-20: 0 contributions2026-06-21: 0 contributions2026-06-22: 0 contributions2026-06-23: 0 contributions2026-06-24: 0 contributions2026-06-25: 0 contributions2026-06-26: 0 contributions2026-06-27: 0 contributions2026-06-28: 0 contributions2026-06-29: 0 contributions2026-06-30: 0 contributions2026-07-01: 0 contributions2026-07-02: 0 contributions2026-07-03: 0 contributions2026-07-04: 0 contributions2026-07-05: 0 contributions2026-07-06: 14 contributions2026-07-07: 1 contribution2026-07-08: 0 contributions2026-07-09: 7 contributions2026-07-10: 10 contributions2026-07-11: 7 contributions2026-07-12: 2 contributions2026-07-13: 0 contributions2026-07-14: 0 contributions2026-07-15: 0 contributions2026-07-16: 1 contribution2026-07-17: 7 contributions2026-07-18: 4 contributions2026-07-19: 1 contribution2026-07-20: 0 contributions2026-07-21: 4 contributions2026-07-22: 1 contribution2026-07-23: 3 contributions2026-07-24: 0 contributions2026-07-25: 0 contributions2026-07-26: 9 contributions2026-07-27: 17 contributions2026-07-28: 6 contributions2026-07-29: 9 contributions2026-07-30: 13 contributions2026-07-31: 12 contributions2026-08-01: 23 contributions2026-08-02: 23 contributions2026-08-03: 48 contributions2026-08-04: 25 contributions2026-08-05: 122 contributions2026-08-06: 83 contributions2026-08-07: 3 contributions2026-08-08: 0 contributions2026-08-09: 9 contributions2026-08-10: 0 contributions2026-08-11: 38 contributions2026-08-12: 6 contributions2026-08-13: 6 contributions2026-08-14: 10 contributions2026-08-15: 11 contributions2026-08-16: 7 contributions2026-08-17: 21 contributions2026-08-18: 8 contributions2026-08-19: 10 contributions2026-08-20: 5 contributions2026-08-21: 6 contributions2026-08-22: 0 contributions2026-08-23: 0 contributions2026-08-24: 49 contributions2026-08-25: 55 contributions2026-08-26: 19 contributions2026-08-27: 31 contributions2026-08-28: 35 contributions2026-08-29: 127 contributions2026-08-30: 4 contributions2026-08-31: 105 contributions2026-09-01: 67 contributions2026-09-02: 111 contributions2026-09-03: 40 contributions2026-09-04: 82 contributions2026-09-05: 42 contributions2026-09-06: 94 contributions

What I Build With

Tools in context — each one connected to work you can explore.

01

Desktop & local files

  • Tauri 2 · Rust
  • Atomic file saves in Taleno
  • SQLite media indexes in Berry AI Studio
02

Editing & interaction

  • SolidJS · Milkdown / ProseMirror
  • Vue 3 · virtual media grids
  • Reading, writing, and source-code views
03

Agents & services

  • Python · FastAPI · LangGraph
  • Costing and quotation workflows
  • Separate reference data and write permissions
04

Small web utilities

  • HTML · CSS · JavaScript
  • Canvas · image coordinates
  • JSON and SVG annotation exports

What I’m Exploring

A few questions connecting the things I’m building.

01
Writing

Can the interface follow your attention?

Taleno →

Reading, drafting, and checking syntax need different kinds of focus. I’m interested in making those transitions feel like working on one document, not operating three separate tools.

02
Creating

How do you revisit a set of variations?

Berry AI Studio →

One prompt can produce many images. I want to make it easier to return to those related attempts, look through the different versions, and keep track of the ones worth continuing.

03
Working with AI

Where should an agent stop?

Axiara →

An agent can gather information and help prepare a quote. Deciding what counts as an official price is a different responsibility. I’m exploring how to make that boundary explicit.

From the Notebook

Why I make things, the decisions along the way, and what the code has taught me.

Read all notes →

The Details I Care About

A few preferences that shape the tools I want to make.

01

Your work should stay yours.

I like ordinary files, understandable exports, and ways to move on without starting over. A tool should be useful enough that you choose to stay.

02

Small interactions deserve care.

Saving, switching views, finding something again — these happen all day. I want the interface to make their state clear without repeatedly asking for your attention.

03

Keep the depth. Clear the path.

Simple does not have to mean stripped down. Useful power can live one step deeper, ready when you need it, without crowding out the task in front of you.

Have something in mind?

Open-source collaboration, product design, tool building, or a shared interest — I’m happy to talk. A rough idea, a curious question, or just a hello is a good start.

berrywahlberg@gmail.com