Topics

Intenté migrar de microCMS a EmDash + Cloudflare.

¿Qué es EmDash?

Cloudflare anunció un CMS que considera el sucesor espiritual de WordPress.
Se trata de un CMS completo que utiliza una arquitectura moderna, combinando varios recursos de Cloudflare (D1/R2/Workers) con Astro, ¡un CMS que realmente forma parte del ecosistema de Cloudflare!
Para ver qué sucedía, migré experimentalmente un blog implementado con microCMS a EmDash.

El sitio migrado está aquí.Yurulog
Este es solo un sitio experimental, así que por ahora estoy usando el tema predeterminado. Más adelante aplicaré un diseño diferente.

Proceso de configuración

1. Creación del proyecto

npm create emdash@latestEjecuta el proceso. Se te harán varias preguntas de forma interactiva, así que selecciona las opciones adecuadas.

2. Crear recursos de Cloudflare

Crear bases de datos y sistemas de almacenamiento de esta manera facilita la implementación.

npx wrangler login
npx wrangler d1 create my-site
npx wrangler r2 bucket create my-site-media
npm run build && npm run deploy

3. Desarrollo local

npx emdash devEsto pondrá en marcha su entorno local.
Pantalla de administraciónhttp://localhost:4321/_emdash/adminAcceda a [sitio web/enlace] y realice la configuración.

4. Despliegue y configuración inicial

npx wrangler deployLuego se implementa para los trabajadores,https://[name].workers.devSe lanzará en [nombre de la plataforma].
Debido a que las bases de datos locales y remotas son independientes, se requiere una configuración inicial (creación de una cuenta de administrador) incluso al utilizar la pantalla de administración remota.

Al vincularlo con un repositorio de GitHub, también puede automatizar las implementaciones mediante push (Panel de control de Cloudflare → Trabajadores → Configuración → Compilación → Vincular con repositorio Git).

5. Migración de artículos desde microCMS

Crea un script de migración para recuperar todos los artículos de la API de microCMS → EmDash CLIcontent createLo añadí.

punto

  • Convierta el editor enriquecido de microCMS (HTML) a Markdown y luego impórtelo.
  • Las imágenes se migraron inicialmente mediante URL externas y posteriormente se subieron a R2, donde se actualizaron las referencias.
  • npx emdash seedNo  npx emdash content createUtilice   (debido a que seed no crea revisiones, el artículo no se mostrará)

De hecho, lo probé.

Este CMS combina la facilidad de configuración e implementación de un CMS headless con la comodidad del control integral de un CMS full-stack, ofreciendo lo mejor de ambos mundos.
Lo mejor de todo es que, al estar basado en Astro, puedes aprovechar tus conocimientos previos, lo cual es fantástico. Parece ideal para blogs pequeños y medianos.

Sin embargo, dado que todavía está en fase beta,

  • La vista previa del borrador no funciona de forma predeterminada (ver más abajo).
  • La alineación al centro y a la derecha no se refleja en WYSIWYG.
  • Al editar elementos en los menús, las rutas relativas provocan un error.
  • Los campos personalizados no se pueden ordenar.
  • No se pueden invitar usuarios

Había algunos puntos preocupantes, como los mencionados anteriormente (a partir de la versión 0.1.0).

Acerca de la vista previa del borrador

Aunque en la pantalla de edición aparece un botón de "Vista previa del borrador", no es posible previsualizar los artículos en formato de borrador.

EmDash tiene un mecanismo de vista previa, pero no parece estar habilitado por defecto, por lo que fueron necesarios los siguientes pasos.

  1. variables ambientalesPREVIEW_SECRETEstablezca una clave secreta arbitraria (npx emdash auth secret(Se puede generar con)
  2. En la página del artículoverifyPreviewTokenUtilice este método para obtener el borrador.
import { getEmDashEntry, verifyPreviewToken } from "emdash";

const preview = await verifyPreviewToken({
  url: Astro.url,
  secret: import.meta.env.PREVIEW_SECRET,
});

const { entry, isPreview } = await getEmDashEntry("posts", slug, { preview });

Ahora puedes ver tus borradores de artículos desde el botón "Previsualizar borrador" en el panel de administración.

resumen

Esta vez, lo implementé como una aplicación full-stack según los fundamentos, pero parece que también podría usarse como un "CMS sin interfaz gráfica" recibiendo artículos con fetch y creando un SSG, así que me gustaría probarlo la próxima vez.

Todavía es una versión beta muy reciente. ¡Tengo muchas ganas de ver cómo evoluciona!

Escrito por

Pasó de la maquetación al mundo web y rápidamente se convirtió en un maestro de la artesanía, con un dominio del marcado, el diseño front-end, la dirección y la accesibilidad. Ha estado activo en diversos campos desde la fundación de Liberogic y ahora es un diccionario viviente dentro de la empresa. Recientemente, se ha obsesionado con explorar mejoras de eficiencia mediante indicaciones, preguntándose: "¿Podemos confiar más en la IA para la accesibilidad?". Su tecnología y su pensamiento siguen evolucionando.

Futa

Especialista certificado en accesibilidad web (WAS) de IAAP / Ingeniero de marcado / Ingeniero de interfaz / Director web

Vea el artículo de este miembro del personal

Nos enorgullecemos de nuestra confiable estructura de equipo y de nuestra rápida capacidad de respuesta.

En Liberogic, nuestro experimentado personal impulsa los proyectos de forma proactiva, por lo que gozamos de gran prestigio entre nuestros clientes.
Nos aseguramos de que los gerentes y directores de proyecto estén correctamente asignados para asegurar el progreso fluido de todo el proyecto. Evitamos aumentos innecesarios de costos por compromisos completos y asignamos recursos a las personas adecuadas en los puestos adecuados. Somos reconocidos por la rapidez con la que comprendemos el contenido del trabajo, creamos y presentamos presupuestos.

Tenga en cuenta que no participamos activamente en trabajos de campo al estilo del SES.

Somos compatibles con casi todas las principales herramientas de gestión de proyectos y chat, incluidas Slack, Teams, Redmine, Backlog, Asana, Jira, Notion, Google Workspace, Zoom y Webex.

En proyectos a gran escala que utilizan SES y plataformas offshore¿Tiene algún problema técnico o inquietud sobre cómo abordarlo?

Estudio de caso