Cooklang
Cooklang es un lenguaje de marcado de código abierto para escribir recetas en texto plano — hace que ingredientes, utensilios y temporizadores sean legibles por máquinas mientras los archivos permanecen legibles y portables entre apps compatibles.
Cooklang es un lenguaje de marcado de código abierto diseñado específicamente para recetas. En lugar de almacenar recetas en bases de datos complejas o formatos propietarios, Cooklang te permite escribirlas como archivos de texto plano con anotaciones simples — y tú eres dueño de cada archivo. Cualquier app que entienda la especificación Cooklang puede extraer ingredientes, utensilios y temporizadores directamente del texto, habilitando funciones como listas de compras automáticas, escalado de recetas y modo cocina sin entrada manual de datos.
¿Cómo funciona Cooklang?
En Cooklang, escribes recetas como pasos naturales y marcas tres tipos de elementos:
| Símbolo | Elemento | Ejemplo | Lo que extrae el parser |
|---|---|---|---|
@ |
Ingrediente | @sal{2%cdta} |
Nombre: sal, Cantidad: 2, Unidad: cdta |
# |
Utensilio | #olla grande |
Equipo: olla grande |
~ |
Temporizador | ~{15%minutos} |
Duración: 15 minutos |
La sintaxis es intencionalmente mínima. Puedes leer un archivo Cooklang sin ningún software especial — es solo un archivo de texto que también resulta ser legible por máquinas.
Sintaxis de ingredientes en detalle
Los ingredientes son el elemento que se anota con más frecuencia. Cooklang maneja varios casos comunes:
| Caso | Sintaxis | Resultado |
|---|---|---|
| Nombre + cantidad + unidad | @harina{500%g} |
500 g de harina |
| Nombre + cantidad, sin unidad | @huevos{3} |
3 huevos |
| Solo nombre | @mantequilla |
mantequilla (sin cantidad) |
| Nombre con varias palabras | @aceite de oliva{2%cda} |
2 cda de aceite de oliva |
| Cantidad fraccionaria | @leche{1/2%taza} |
1/2 taza de leche |
Esta simplicidad significa que pasas tu tiempo cocinando, no formateando datos.
¿Cómo se ve una receta en Cooklang?
Hervir @agua{1%litro} en una #olla grande.
Añadir @pasta{400%g} y cocinar durante ~{12%minutos}.
Escurrir y mezclar con @aceite de oliva{2%cda} y @ajo{2%dientes}, picado.
Sazonar con @sal{1%cdta} y @pimienta negra{1/2%cdta}.
Servir inmediatamente con @parmesano{30%g}, rallado.
A partir de este texto plano, un parser de Cooklang puede generar automáticamente:
- Una lista de ingredientes completa con cantidades
- Una lista de compras agrupada por categoría
- Instrucciones paso a paso para el modo cocina
- Cantidades escaladas para cualquier número de porciones
¿Cómo se compara Cooklang con otros formatos de recetas?
| Característica | Cooklang | JSON-LD / Schema.org | Base de datos propietaria | Markdown |
|---|---|---|---|---|
| Legible por humanos | Sí — texto plano | No — datos estructurados | No — formato cerrado | Sí |
| Legible por máquinas | Sí — elementos parseados | Sí — datos estructurados | Sí — solo dentro de la app | No |
| Portable | Sí — archivos de texto | Parcialmente — embebido en HTML | No — dependencia del proveedor | Sí |
| Extracción de ingredientes | Automática | Entrada manual requerida | Entrada manual requerida | Manual |
| Control de versiones (Git) | Fácil | Posible pero verboso | Difícil | Fácil |
| Generación de lista de compras | Automática | Requiere lógica de app | Específica de la app | Manual |
La mayoría de los gestores de recetas almacenan tus datos en una base propietaria o usan formatos estructurados como JSON-LD, diseñados para motores de búsqueda en vez de para humanos. Cooklang toma un enfoque diferente: los archivos son legibles por humanos primero, por máquinas después. Puedes editar una receta Cooklang en cualquier editor de texto, guardarla en Git o moverla entre apps — sin problemas de importación ni dependencia de un proveedor.
¿Por qué Cooklang es útil para cocineros caseros?
No necesitas saber programar para beneficiarte de Cooklang. El formato resuelve problemas reales que todo cocinero enfrenta:
| Problema | Cómo ayuda Cooklang |
|---|---|
| Recetas dispersas entre apps, marcadores, capturas de pantalla | Un archivo de texto por receta, guardado donde quieras |
| Hacer la lista de compras toma una eternidad | Ingredientes extraídos automáticamente de las recetas |
| Escalar una receta = recalcular cada ingrediente | El escalado de recetas funciona automáticamente con cantidades parseadas |
| Recetas encerradas en una sola app | Los archivos de texto funcionan con cualquier app compatible con Cooklang |
| La planificación de meal prep es tediosa | Combina múltiples archivos de recetas para generar una lista de compras unificada |
| No hay forma de rastrear tus cambios | Los archivos de texto funcionan con control de versiones |
¿Cuáles son las funciones avanzadas de Cooklang?
Metadatos
Agrega información a nivel de receta al inicio de cualquier archivo Cooklang:
>> servings: 4
>> source: abuela
>> time: 45 minutos
Comentarios
Usa -- para comentarios en línea que el parser ignora:
Añadir @azúcar{200%g}. -- puedes reducir a 150g para menos dulzor
Recetas con múltiples pasos
Cada línea en un archivo Cooklang es un paso. Las líneas en blanco separan los pasos en grupos lógicos, haciendo que recetas complejas con docenas de pasos sean fáciles de seguir.
¿Cómo escribir tu primera receta en Cooklang?
- Abre cualquier editor de texto (Bloc de notas, VS Code, TextEdit)
- Escribe los pasos de tu receta como oraciones normales
- Marca ingredientes con
@nombre{cantidad%unidad} - Marca utensilios con
#nombre - Marca temporizadores con
~{duración%unidad} - Guarda con extensión
.cook - Abre en cualquier app compatible con Cooklang
La curva de aprendizaje es de unos cinco minutos. Si sabes escribir un mensaje de texto, sabes escribir en Cooklang.
¿Cómo maneja Cooklang las medidas?
Cooklang funciona con cualquier sistema de unidades. Ya sea que prefieras gramos y mililitros o tazas y cucharadas, el formato se adapta. Apps como Fond que soportan conversión de unidades pueden incluso cambiar entre sistemas automáticamente, y usar una balanza de cocina con recetas Cooklang basadas en peso da los resultados más precisos al escalar.
Cooklang en Fond
Fond usa Cooklang por debajo, así que cada receta que guardas queda estructurada automáticamente — ingredientes, cantidades, temporizadores, todo. Funciones como el escalado de recetas, las listas de compras, la planificación de meal prep y el modo cocina funcionan directamente, sin etiquetado manual. También puedes importar recetas de otras fuentes y Fond las convierte a Cooklang automáticamente. No tienes que pensar en el formato.
Para saber más sobre la especificación, visita cooklang.org.