src/styles/motion.csscss
.ds-reveal-in {
  animation: ds-reveal-in var(--motion-base) var(--ease-enter) both;
}

@keyframes ds-reveal-in {
  from { opacity: 0; transform: translateY(4px); }
}
astro.config.tsts
export default defineConfig({
  site: "https://article.rottenth.cafe",
  build: { format: "directory" }, 
  build: { format: "file" }, 
  trailingSlash: "never"
});
Terminalsh
pnpm add astro
long.jsjs
const line1 = 1;
const line2 = 2;
const line3 = 3;
const line4 = 4;
const line5 = 5;
const line6 = 6;
const line7 = 7;
const line8 = 8;
const line9 = 9;
const line10 = 10;
const line11 = 11;
const line12 = 12;
const line13 = 13;
const line14 = 14;
const line15 = 15;
const line16 = 16;
const line17 = 17;
const line18 = 18;
const line19 = 19;
const line20 = 20;
const line21 = 21;
const line22 = 22;
const line23 = 23;
const line24 = 24;
const line25 = 25;
const line26 = 26;
const line27 = 27;
const line28 = 28;
A block longer than 20 lines starts folded.