Acabamos de publicar un tutorial sobre como crear temas personalizados en Content Island 🏝️ y actualizar la imagen corporativa de tu sitio sin tocar una sola línea de código.
Aquí lo tienes 👉 https://t.co/IwMlBMMQDK
Muy agradecidos si RT 🙌
🚀 Seguimos mejorando Content Island 🏝️ (HCMS)
Hoy toca: soporte multidioma 🌍
Ya puedes gestionar contenido en varios idiomas de forma sencilla.
📘 Tutorial paso a paso:
https://t.co/AkKjPOn34w
Muy agradecidos si RT 🙌
Hilo con migraciones de webs en 2025, para tener un repositorio SEO de ejemplos y poder aprender más.
1) Empiezo con una que se empezó en 2024 pero ya está cogiendo más ritmo... ¡la de Twitter a X!
Análisis e informes sobre cualquier tipo de consulta que se desee realizar.
Desde el propio prompt se pueden realizar ejecuciones de código de Keyword Research, análisis de contenido y muchas otras funciones además de la respuesta del análisis e informe realizado por Gemini.
Ya están activas las votaciones de la competencia de Gemini AI.
Mi presentación es una aplicación web la cual conecta la cuenta de Google Search Console del usuario con la API de Gemini pudiendo obtener en tiempo real y mediante Chatbot
https://t.co/SWnndpjcEQ
@bquintero@oxomuseo Diosss que recuerdos!!
Freddy Hardest!! De este juego ni me acordaba y jugué muchísimo.
Oxo es un paraíso para los que vivimos esto.
¿Cansado de escuchar palabros a lo Valle de la Silicona?
¡No os preocupéis! ¡Os traigo la traducción definitiva!
¡Allá vamos!
🤡 Startup = empresa, pero dicho de forma guay que te permita pillar pasta de algún incauto.
💪 Bootstrap = a pecho palomo.
🍺 Breakeven = escenario (normalmente imaginario) para una startup en la que comienza a funcionar como una empresa normal (como el bar de la esquina).
🎟️ ESOP = papelitos para empleados, los billetes del monopoly tienen más valor porque al menos están en papel de verdad.
⏳ Runway = el tiempo que queda hasta que vienen los "madres mías".
🧜♀️ Equity under the water = tienes unos papelitos con los que puedes limpiarte el c... "Baaaajoooo del mar, vives serena, siendo sirena..." 🎵
💸 Pre-money Valuation = lo que se inventan los fundadores que vale su startup.
💸 Post-money Valuation = lo anterior sumado a la pasta que ponen unos incautos.
😇 Business Angel = persona con pasta y que no saber qué hacer con ella.
🤥 Pre-producto = también conocido como "aquí tengo un power point que me lo aguanta todo".
🔫 Liquidation Preference = ve por el bote de vaselina de 1kg.
🫠 Non dilution = el bote de vaselina también, pero el de 2kg.
💼 Acqui-hire = os pongo en nómina y podéis dejar de hacer el gambitero con vuestro juguete.
🦄 Unicorn = empresa sobrevalorada que jamás dará un retorno a ninguno de sus inversores.
Bueno, paro aquí, aunque esto es infinito. ¡Te animo a añadir las tuyas! 😂
El equipo está ON FIRE!!! Hace años que nos piden poder cambiar las plantillas sin tener que pasar por Photoshop (Adobe, os queremos 😘), y ya tenemos para todos una forma sencillita de hacerlo. La mejor suite de AI del mundo, el mejor contenido y ahora editable de la forma más fácil. Nota: no voy a rapear. ALWAYS BE SHIPPING.
Me ha picado el gusanillo y en cuestión de 20 minutos viendo IG y TikTok me he convertido en especialista en Casas Reales y os traigo:
LA MOVIDA DE KATE MIDDLETON 👸
La mujer q tiene a medio Twitter jugando a CSI mientras probablemente se parte el c0ño en su casa.
🧵
¿Sabes cómo van a cambiar los resultados de Google en Europa a partir de marzo? 🤔 Explico y detallo lo que sabemos por ahora.
Qué: Google prepara nuevos módulos y filtros de resultados para adaptarse a la Digital Marketing Act (DMA) de la UE.
Por qué: La DMA obliga a los "gatekeepers" digitales (empresas guardianes de acceso de lo que los usuarios ven en internet a no favorecer sus propios resultados y facilitar la igualdad de oportunidad para todos los competidores.
Cuándo: las empresas como Google deben hacer cambios para cumplir la ley a partir del 1 de marzo de 2024.
Cómo: Google ha anunciado dos módulos concretos, el carrusel de agregadores, que es un resultado enriquecido y se alimenta con datos estructurados, y las unidades de agregadores, que no se alimenta de datos estructurados.
Los tipos de búsquedas en los que pueden aparecer estos módulos son las de viajes, locales, de empleos y de compra de productos.
Además, existirá una forma de refinar las búsquedas para que muestren sólo resultados de agregadores, en búsquedas de las temáticas dichas anteriormente.
Estos filtros tendrán forma de chip o burbuja y tendrán un emplazamiento destacado en las búsquedas.
Leer más: Todo lo que sabemos sobre los cambios anunciados por Google (con ejemplos de cómo se ven estos resultados en España y otros países), en mi post sobre el tema: https://t.co/bLU48VXZNP
Ya tenemos la version 0.1 :) https://t.co/M1gU9yhtnE un primer pasito :), ¿Qué te parece @skmruiz? Muchísimas gracias a los alumnos que estáis colaborando en este proyecto open source :)
CSS Tip! 🤙
You can use mask-composite and some JavaScript to create this pointer proximity following glow border ✨
.glow {
mask-composite: intersect;
mask-clip: padding-box, border-box;
mask:
linear-gradient(#0000, #0000),
conic-gradient(#0000 0deg, #fff, #0000 45deg);
}
The trick is to mask a background-image with a combination of mask layers. mask-composite: intersect; means the mask used will be the intersection of the layers 🔥 use source-in, xor; in browsers that don't support intersect;
In this demo, you can use pseudoelements and rely on scoped custom properties to do a lot of the heavy lifting for you 🙌
Once you've masked the background, you need to update the starting angle of the conic-gradient on pointermove 👆
You can work that out by getting the center point of each card and then calculating the angle between that and the pointer with Math.atan2 🤓
let ANGLE = Math.atan2(
event?.y - CARD_CENTER[1],
event?.x - CARD_CENTER[0]
) * 180 / Math.PI
ANGLE = ANGLE < 0 ? ANGLE + 360 : ANGLE;
CARD.style.setProperty('--start', ANGLE + 90)
You plug that into your conic-gradient mask as a custom property accounting for --spread ⚡️
conic-gradient(from calc((var(--angle) - (var(--spread) * 0.5)) * 1deg), #000 0deg, #fff, #0000 calc(var(--spread) * 1deg));
To get the blur, you apply a blur to the glow container on each card 🤙
.glows {
filter: blur(calc(var(--blur) * 1px);
}
That's it! Layers of masks that are clipped and composited before being blurred 😎 The added trick is to fade each one in when the pointer is in the defined proximity of the card. For example, don't show unless within 100px of a card. You can see that in the video. Check out the JavaScript code for that 🫶
Couldn't resist making this one 😁
@CodePen link below! 👇