Wed. Nov 13th, 2024

Sphido: otro generador de sitios estáticos (SSG) de KISS, pero con velocidad sorprendente.

By admin Jan 29, 2024

Sphido es un increíble cohete de código abierto: generador de sitios estáticos rápido, liviano y flexible. Ofrece una multitud de beneficios tanto para desarrolladores como para usuarios. Con su enfoque minimalista, Sphido se centra en la simplicidad y la eficiencia. Al utilizar solo dos funciones, proporciona una experiencia perfecta para los creadores de sitios web.

La primera función, getPages(), le permite recuperar sin esfuerzo una lista completa de páginas dentro de su sitio web. Esto permite una fácil navegación y gestión de su contenido. La segunda función, allPages()va un paso más allá al permitirle recorrer cada página individualmente, facilitando experiencias dinámicas y personalizadas para sus usuarios.

Uno de los aspectos destacables de Sphido es su independencia. No depende de dependencias externas, lo que lo hace extremadamente confiable y fácil de usar desde el primer momento. Ya sea que sea un desarrollador experimentado o un principiante, Sphido está diseñado para mejorar su flujo de trabajo y permitirle crear sitios web impresionantes.

Características

  • código limpio
  • Fácil de configurar, usar e instalar
  • Soporte de rebajas
  • Soporte frontal
  • Soporte de hashtags
  • Compatibilidad con mapas del sitio con extensiones oficiales predeterminadas

Instalar

usando hilo.

yarn add @sphido/core

o con el MNP.

npm i @sphido/core

Inicio rápido

#!/usr/bin/env node

import {dirname, relative, join} from 'node:path';
import {getPages, allPages, readFile, writeFile} from '@sphido/core';
import slugify from '@sindresorhus/slugify';
import {marked} from 'marked';

const pages = await getPages({path: 'content'}, // ... extenders
(page) => {
page.slug = slugify(page.name) + '.html';
page.dir = dirname(page.path);
});

for (const page of allPages(pages)) {
page.output = join('public', relative('content', page.dir), page.slug);
page.content = marked(await readFile(page.path));

await writeFile(page.output, `<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="UTF-8">
<script src="https://cdn.tailwindcss.com?plugins=typography"></script>
<title>${page.name} | Sphido Example</title>
</head>
<body class="prose mx-auto my-6">${page.content}</body>
<!-- Generated by Sphido from ${page.path} -->
</html>
`);
}

Sphido requiere nodo 16.x y más nuevo. Para cargar un módulo ES, configure "type": "module" en el package.json o utilizar el .mjs extensión.

Ejecute y genere su sitio

Simplemente ejecuta: node index.js.

Licencia

  • Licencia MIT

Recursos

Etiquetas

Generador estático Código abierto Autohospedado Desarrolladores web basados ​​en web desarrollo web Biblioteca

By admin

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *