gustavo

by eggplanetio

eggplanetio /gustavo

👨 A (mostly) headless blogging platform built atop Nuxt & Gist.

131 Stars 10 Forks Last release: Not found 73 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

A (mostly) headless blogging platform built atop Nuxt & Gist.

Demo

Contents

Overview

Gustavo is an opinionated, (mostly) headless blogging platform built to use:

  • Github Gist
  • Nuxt (Vue 2.x)
  • Docker

Using a simple naming schema, Gustavo can create a whole blog for you in seconds. Don't believe me? Check out the gist that is my blog.

Creating content

You can create content for your blog by simply creating files in a gist that follow this schema:

| Type | Naming | Example | |-------------|-------------------------| --------------------------------------------------------------------------------------------------------------------| | post |

{name}.post.md
| link | | page |
{name}.page.md
| link | | navigation |
links.md
| link | | navigation |
links.txt
(deprecated)| link | | image | clone gist and upload | link | | draft |
{name}.post.draft.md
| |

Here is the gist that powers this blog.

Getting started

To create a blog, follow these steps:

  1. Create your gist and add some content.

  2. Create

    gustavo.config.js
    with the following:
module.exports = {
  title: 'My gustavo blog',
  gistId: '<< gist id >>',
  githubToken: '<< token >>', /* optional, recommended */
  googleAnalyticsId: 'UA-X-XXXXX'
}

Note: you'll want to create a personal access token on Github because Gustavo uses the Gist API, and without the token and although it will still work, your blog will be rate limited.

  1. Create a
    Dockerfile
    with the following:
FROM eggplanet/gustavo:latest
  1. Let's start it up:
$ docker build -t my-gustavo-blog .
$ docker run -p 3000:3000 my-gustavo-blog

Your blog will be running at http://localhost:3000

Deployment

Deploying gustavo is simple. The recommended method is Now by Zeit.

$ now secrets add gustavo-github-token 
$ now secrets add gustavo-gist-id 
$ now -e [email protected] -e [email protected] --docker
$ now alias my-gustavo-blog-wjdihnxorf.now.sh my-gustavo.blog

License

  • MIT

Credits

Releasing a new image

$ docker build -t eggplanet/gustavo:latest .
$ docker push eggplanet/gustavo:latest

Changelog

2.0.0

1.0.0

  • Initial release

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.