ReeWeb · MIT · Beta

Statične strani brez ceremonij

ReeWeb je odprtokodni generator statičnih strani pod licenco MIT, na voljo v javnem repozitoriju GitHub.

ReeWeb je v beta različici in že poganja to spletno stran. API-ji, predloge in struktura projekta se lahko do različice 1.0 še spremenijo.

Vse, kar vsebinska stran potrebuje, nič drugega

Odprtokoden in celovit

Celovit izdelek sam zase, na voljo v javnem repozitoriju pod licenco MIT.

Poganja ga Bun

bun dev za razvoj v živo s samodejnim osveževanjem, bun ssg za generiranje statične strani v ./dist. Brez webpacka, brez vite - samo Bun.

i18n prek JSON-ov

Večjezičnost od prvega dne: JSON datoteke s prevodi za vsak jezik, lokalizirane poti, hreflang in verige nadomestnih prevodov.

Brez odvisnosti

"dependencies": {} - .ree predloge, markdown, RSS in sitemapi so vgrajeni. Ničesar ni treba pregledovati ali nadgrajevati.

Ustvari, pripravi in zaženi

Enkrat poimenujte mapo projekta in vsi ukazi se posodobijo. bun create prenese začetni projekt in ga pripravi - namestitev se izvede samodejno - nato začnite razvijati:

bun create reepolee/reeweb __PROJECT_DIR__
cd __PROJECT_DIR__
# razvoj v živo s samodejnim osveževanjem
bun dev

Namestitvena naloga se izvede samodejno kot del bun create in pripravi začetni projekt. bun dev omogoča razvoj v živo; bun ssg zapiše končano statično stran v ./dist.

Dokaz z uporabo: ta spletna stran je generirana z ReeWebom.

Predloge, ki jih lahko berete

.ree predloge so HTML s peščico oznak - ubežan izpis, prevodi, zanke, postavitve in komponente. Markdown živi zraven.

{#layout("layout")}
<main>
	<h1>{_ home.title }</h1>
	{#each props.posts as post}
		<article-card title="{= post.title }">{@ md_content }</article-card>
	{/each}
</main>

Potrebujete CMS? Dodajte Reepolee - brez selitve

Ko projekt preraste zgolj statično stran - želite uredniško zaledje, bazo, dinamično vsebino - ne pišete znova. Namestite ogrodje Reepolee vzporedno in postane strežnik za ReeWeb. ReeWeb vključuje fetch_collection(), ki med razvojem in generiranjem statične strani povleče zbirke iz delujočega strežnika Reepolee naravnost v vaše predloge:

// src/public/blog/index.ts - teče med razvojem in generiranjem statične strani
import { fetch_collection } from "../lib/reepolee_api";

export async function load_template_data({ locale }: { locale: string }) {
	const result = await fetch_collection("/admin/articles", locale);
	return { posts: result.data };
}

Isti pogon, iste konvencije, iste predloge. Vaša statična stran postane izrisna fasada CMS-a tisti dan, ko ga potrebujete - in niti dan prej.

Zakaj je zgrajen tako

ReeWeb je majhno orodje s premišljenimi odločitvami. Pismo ustanoviteljev pojasnjuje razmislek: zakaj generator statičnih strani nima nobenih odvisnosti med izvajanjem, zakaj večjezičnost sodi v cevovod in ne v vtičnik ter zakaj predloge ostanejo berljive.

Beta. Zgrajen za naslednji korak.

Ustvarite projekt z ukazom bun create reepolee/reeweb - namestitev se izvede samodejno - in začnite z bun dev. Z Reesync preglejte in izberite posodobitve začetnega repozitorija.