Errors now show app frames highlighted with relative paths and library frames collapsed, both in ANSI on the console and as a styled HTML page in the browser. Process-level uncaughtException/unhandledRejection handlers also use the formatter. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
diachron
Introduction
-
Do you want to share a lot of backend and frontend code?
-
Are you tired of your web stack breaking when you blink too hard?
-
Have you read Taking PHP Seriously and do you wish you had something similar for Typescript?
-
Do you think that ORMs are not all that? Do you wish you had first class unmediated access to your database? And do you think that database agnosticism is overrated?
-
Do you think dev/testing/prod distinctions are a bad idea? (Hear us out on this one.)
-
Have you ever lost hours getting everyone on your team to have the exact same environment, yet you're not willing to take the plunge and use a tool like nix?
-
Are you frustrated by unclear documentation? Is ramping up a frequent problem?
-
Do you want a framework that's not only easy to write but also easy to get inside and debug?
-
Have you been bogged down with details that are not relevant to the problems you're trying to solve, the features you're trying to implement, the bugs you're trying to fix? We're talking authentication, authorization, XSS, https, nested paths, all that stuff.
Is your answer to some of these questions "yes"? If so, you might like diachron. (When it comes to that dev/test/prod one, hear us out first, ok?)
Getting started
Different situations require different getting started docs.
Requirements
To run diachron, you need Linux or macOS on x86_64. Linux requires a new enough libc to run golang binaries.
To run a more complete system, you also need to have docker compose installed.
Database
To connect to the database, you need psql (PostgreSQL client, for
./diachron/common.d/db)
- macOS:
brew install libpq(and follow the caveat to add it to your PATH), orbrew install postgresql - Debian/Ubuntu:
apt install postgresql-client - Fedora/RHEL:
dnf install postgresql
Development requirements
To hack on diachron itself, you need the following:
- bash
- docker and docker compose
- fd
- golang, version 1.23.6 or greater
- shellcheck
- shfmt