From 8ca89b75cde3fc3b75ad3ea479ffac2502e76f62 Mon Sep 17 00:00:00 2001 From: Michael Wolf Date: Mon, 17 Nov 2025 19:54:35 -0600 Subject: [PATCH] Rewrite README.md --- README.md | 63 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 54 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index f392fc6..d1ae7fe 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,63 @@ diachron +## Introduction + +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?) + +- 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](https://slack.engineering/taking-php-seriously/) and wish you had + something similar for Typescript? + +- Do you think that ORMs are not all that, and 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, but you're not willing to take the plunge and use a tool + like [nix](https://nixos.org)? + +- 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. + +## Getting started + +Different situations require different getting started docs. + +- [How to create a new project](docs/new-project.md) +- [How to work on an existing project](docs/existing-project.md) + ## Requirements -To run diachron, you currently need the following requirements: +To run diachron, you currently need to have a Linux box running x86_64 with a +new enough libc to run golang binaries. Support for other platforms will come +eventually. + +To run a more complete system, you also need to have docker compose installed. + +### Development requirements + +To hack on diachron itself, you need the following: - docker compose -- deno - -## Development requirements - -To hack on diachron, you need the following: - -- docker compose -- deno +- [fd](https://github.com/sharkdp/fd) - golang, version 1.23.6 or greater +- shellcheck +- shfmt