Breve nota: Se parte de mi newsletter semanal. Va a estar enfocado compartir recursos increíbles sobre desarrollo frontend (Artículos, Videos, Noticias, etc.).

Actualmente el tener un blog es algo que te puede aportar muchos beneficios, expresando ideas, conocimiento y experiencias en la web, pero ¿Porqué crear un blog si ya hay bastantes?.

Darse a conocer, conectar con personas que tengan gustos similares o pasiones similares, es algo realmente extraordinario pues ¡Nadie puede publicar como tú!, cada persona tiene su propia identidad y eso se puede convertir en un blog exitoso. Compartir conocimiento es algo que te genera una satisfacción increíble ayudas a las personas y te das a conocer al mundo, ¿de que te sirve ser el mejor Frontend o el mejor Backend?, si nadie sabe de ti, lo que necesitas es decirle al mundo ¡Hey soy súper genial, conózcanme!.

¿Qué es Ghost?

Ghost es una poderosa plataforma, que a diferencia de WordPress u otro CMS, es que está dedicado a una sola cosa: Blogs, muy bien diseñado, es personalizable y completamente Open Source.
Ghost Tiene una gran comunidad activa, e incluso puedes chatear en tiempo real con usuarios a través de slack.

Node.js es el corazón de ghost, eso nos abre las puertas a una de las plataformas que más futuro tiene hoy en día, funcionando con JavaScript de servidor.

Tecnología - Ghost

Instalación

Ya que sabemos un poco sobre ghost, vamos a lo que nos interesa:

  1. Descarga la última versión de Ghost
  2. Descomprime el archivo .zip en la ubicación que deseas instalar
  3. Entra a tu terminal y ve a la ubicación donde descomprimiste
  4. Ejecuta npm install --production
  5. Inicia ghost: npm start

Ghost esta ya está funcionando, simplemente hay que entrar en la dirección: http://localhost:2368.

Ahora es cuando tú dices ¡wow!

Ghost - casper

Tip: Si los comandos no llegan a funcionar, hay que usar sudo antes de cada instrucción, en el caso de Windows tenemos que abrir la terminal (cmd) como administrador..

Configuración

Para empezar a configurar ghost hay que acceder a http://localhost:2368/ghost e insertar los datos que pide.

configurando ghost

Nota: Recuerda el Email y la contraseña, ya que serán tus datos de inicio de sesión en un futuro.

Una vez que introducimos estos datos, tenemos la interfaz del administrador en ghost.

inicio - ghost

En esta interfaz podrás ver tus posts, editarlos o agregar uno nuevo, aquí ocurre toda la magia y fluyen todas las ideas, en la pestaña de configuraciones (settings) vas a poder configurar la descripción de tu blog, logo, portada, usuarios, etiquetas, etc. Te recomiendo que le des una mirada a cada uno de ellos y experimentes todo.

Ahora tenemos que configurar tu dominio y tu email (No el mismo email que usaste al inicio), para ello hay que ir a la carpeta raíz de ghost y editar el archivo config.js. En el código tendrás un área de producción y una de desarrollo, por el momento solo cambiaremos la parte de desarrollo.

 development: {
        // The url to use when providing links to the site, E.g. in RSS and email.
        // Change this to your Ghost blogs published URL.
        url: 'http://localhost:2368',

        // Example mail config
        // Visit http://support.ghost.org/mail for instructions
        // ```
        //  mail: {
        //      transport: 'SMTP',
        //      options: {
        //          service: 'Mailgun',
        //          auth: {
        //              user: '', // mailgun username
        //              pass: ''  // mailgun password
        //          }
        //      }
        //  },

En la parte de url asignaremos nuestro dominio y en la parte de mail vamos a asignar los valores SMTP del servicio que usaremos, ya sea mailchimp, mandrill, mailgun, etc, será muy útil por si llegamos a olvidar nuestra contraseña o queremos empezar a tener suscriptores.

url: 'http://dominio.com',
mail: {
    transport: 'SMTP',
    options: {
        service: 'Mailgun',
        auth: {
            user: 'postmaster@tryghosttest.mailgun.org',
            pass: '123'
        }
    }
}

Si no te quedo muy claro este tema o eres nuevo, puedes ver la configuración que te proporciona ghost.

Temas y personalización

Una vez que ya tenemos la configuración de nuestro entorno de desarrollo, es el momento de decidir si deseamos crear un tema desde cero o utilizar el tema que tiene por defecto (casper).

No importa que elijas, solo debes asegurarte de que esta en la carpeta /content/themes/. Tu directorio debe contener los siguientes archivos: index.hbs, post.hbs y un package.json, que contiene el nombre y número de versión de tu tema, la estructura debe ser la siguiente:

.
├── /assets
├   └── /css
├       ├── screen.css
├   ├── /fonts
├   ├── /images
├   ├── /js
├── default.hbs 
├── index.hbs [requerido]
└── post.hbs [requerido]
└── package.json [requerido]

Mira que contiene cada archivo, explora, conoce, comete errores, date una vuelta por handlebars para que conozcas la sintaxis, pero lo más importante: "Aprende".

Una vez tengas todo en su lugar reinicia ghost (control + c) y ejecuta nuevamente (npm start), entra en http://localhost:2368/ghost/settings/general viaja a la parte final de la página, selecciona el tema que deseas usar y da click en el botón guardar (Save) de la parte superior.

Temas en ghost

Nota: Puedes optar por subir tu tema de Ghost, desde el administrador.

Ahora puedes ir nuevamente a http://localhost:2368 y ver los nuevos cambios, dependiendo de tu tema.

FiliSantillan 3.0.0

Si quieres usar ghost en el servidor, te recomiendo mucho DigitalOcean, ya que te da la opción de instalarlo por defecto.

Aplicaciones en DigitalOcean

Esto solo es un pequeño vistazo al verdadero poder que tiene ghost, así que date una vuelta por su documentación y conócelo, pues hay mucho que aprender.

En el caso de que quieras que hable más sobre ghost, puedes dejármelo en los comentarios y así empiece una guía más completa en mi blog.

Sé productivo, aprende algo nuevo y comparte tu conocimiento con el mundo ;) . . .