<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Chrono Blog: The Journey</title><subtitle>Latest updates from Chrono.</subtitle><link href="https://www.chronohq.com/blog/feed" rel="self"/><link href="https://www.chronohq.com/blog" rel="alternate" type="text/html"/><updated>2025-06-06T04:01:00Z</updated><id>https://www.chronohq.com/blog</id><entry><title>Introducing Custom Suffixes in Puff 0.5.0</title><link href="https://www.chronohq.com/blog/puff-custom-suffixes"/><id>https://www.chronohq.com/blog/puff-custom-suffixes</id><updated>2025-06-06T04:01:00Z</updated><summary>Puff 0.5.0 introduces custom suffixes for random value generation, making it easy to create organized file names and labeled identifiers in bulk. Learn how to get started.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Astro: Adding Meta Tags from Child Components</title><link href="https://www.chronohq.com/blog/inject-meta-tags-with-astro-slots"/><id>https://www.chronohq.com/blog/inject-meta-tags-with-astro-slots</id><updated>2025-06-05T21:04:00Z</updated><summary>Learn how to inject meta tags from child components in Astro using named slots. No clutter or prop drilling. This is how we handled it for our blog.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Rethinking SaaS Architecture</title><link href="https://www.chronohq.com/blog/rethinking-saas-architecture"/><id>https://www.chronohq.com/blog/rethinking-saas-architecture</id><updated>2025-04-25T09:38:28Z</updated><summary>We are building a local-first web application. Learn why we are approaching SaaS architecture differently and how we are committed to protecting user privacy.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Rebuilding with Astro</title><link href="https://www.chronohq.com/blog/rebuilding-with-astro"/><id>https://www.chronohq.com/blog/rebuilding-with-astro</id><updated>2025-02-13T06:19:00Z</updated><summary>We rebuilt the Chrono website with Astro. Discover why we switched and why Astro might be right for you.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>FSA Advisory: DMM Crypto Asset Heist</title><link href="https://www.chronohq.com/blog/fsa-crypto-asset-advisory"/><id>https://www.chronohq.com/blog/fsa-crypto-asset-advisory</id><updated>2025-01-10T09:45:00Z</updated><summary>Japanese authorities issued an advisory detailing a crypto asset heist of over $300M at DMM Bitcoin. This post explores the social engineering tactics used for the heist, and FSA recommended defensive measures.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Cross Platform File Locking with Go</title><link href="https://www.chronohq.com/blog/cross-platform-file-locking-with-go"/><id>https://www.chronohq.com/blog/cross-platform-file-locking-with-go</id><updated>2024-12-09T20:02:00Z</updated><summary>File locking controls concurrent access to files, preventing data corruption and inconsistent reads. Learn how to implement cross-platform, operating system level file locking using Go's build constraints mechanism.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Puff: Random Data at Your Fingertips</title><link href="https://www.chronohq.com/blog/introducing-puff"/><id>https://www.chronohq.com/blog/introducing-puff</id><updated>2024-09-05T21:09:00Z</updated><summary>Meet Puff, a command-line tool that generates random values in formats like UUID4, UUID7, hexadecimal and Base64, along with binary blobs.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Modular H2O Server Configuration</title><link href="https://www.chronohq.com/blog/modular-h2o-server-configuration"/><id>https://www.chronohq.com/blog/modular-h2o-server-configuration</id><updated>2024-07-12T08:48:00Z</updated><summary>Modularization can simplify configuration management. Learn how to structure the H2O server configuration file in a modular way.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Simplify Vite module imports with @-notation</title><link href="https://www.chronohq.com/blog/simplify-vite-imports-with-at-notation"/><id>https://www.chronohq.com/blog/simplify-vite-imports-with-at-notation</id><updated>2024-06-25T04:23:00Z</updated><summary>Learn how to use Vite's path aliases to simplify ES module imports, similar to Next.js, making the codebase more enjoyable to work on.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Efficient pagination with SWR</title><link href="https://www.chronohq.com/blog/efficient-pagination-with-swr"/><id>https://www.chronohq.com/blog/efficient-pagination-with-swr</id><updated>2024-06-11T20:40:00Z</updated><summary>Pagination is a crucial component in enhancing user experience and easing the load on backend systems. This blog post explores an efficient way to implement pagination in React applications using the useSWRInfinite hook from SWR.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Next.js: Route Groups and Global 404</title><link href="https://www.chronohq.com/blog/nextjs-route-groups-and-404"/><id>https://www.chronohq.com/blog/nextjs-route-groups-and-404</id><updated>2024-03-13T01:37:14Z</updated><summary>In Next.js, the Route Groups feature enables developers to enhance their project structure. This feature is particularly useful for managing and isolating multiple website layouts.</summary><author><name>Toru Maesaka</name></author></entry><entry><title>Announcing Chrono Technologies</title><link href="https://www.chronohq.com/blog/announcing-chrono"/><id>https://www.chronohq.com/blog/announcing-chrono</id><updated>2024-01-25T00:16:18Z</updated><summary>As we venture into the year ahead, I am thrilled to announce Chrono Technologies, a company devoted to building tools and services for creators and productivity-focused individuals, guided by the Unix philosophy of developing small, modular, and highly interoperable software.</summary><author><name>Toru Maesaka</name></author></entry></feed>
