Expected on March 6:
RSC is cooking as well. React Router is set for rapid improvements this year.
Observations while developing web applications and creating great software.
Philipp Oppermann:
This blog series creates a small operating system in the Rust programming language. Each post is a small tutorial and includes all needed code, so you can follow along if you like.
See also: Build a RISC-V operating system in 1,000 lines by Seiya Nuta and Compiler Explorer by Matt Godbolt.
Changing public APIs is okay. Accept you will not get it right the first time. Very thankful so many developers just use Semantic Versioning.
As a solution to this problem, we propose a simple set of rules and requirements that dictate how version numbers are assigned and incremented. These rules are based on but not necessarily limited to pre-existing widespread common practices in use in both closed and open-source software. For this system to work, you first need to declare a public API. This may consist of documentation or be enforced by the code itself. Regardless, it is important that this API be clear and precise. Once you identify your public API, you communicate changes to it with specific increments to your version number. Consider a version format of X.Y.Z (Major.Minor.Patch). Bug fixes not affecting the API increment the patch version, backward compatible API additions/changes increment the minor version, and backward incompatible API changes increment the major version.
We call this system “Semantic Versioning.” Under this scheme, version numbers and the way they change convey meaning about the underlying code and what has been modified from one version to the next.
Ignore calls for vanity versioning.
Vincent Niehues created this library for using Next.js style routes in a React Router 7 application.
import { type RouteConfig } from "@react-router/dev/routes";
import { generateRouteConfig, appRouterStyle } from "rr-next-routes";
const autoRoutes = generateRouteConfig({
...appRouterStyle,
print: "tree",
});
export default [
...autoRoutes,
route("some/path", "./some/file.tsx"),
] satisfies RouteConfig;
React Router’s routes.ts file allows for creating your own route generator functions and merging them with other routes, including React Router’s fs-routes or anything you want.