eureka icon indicating copy to clipboard operation
eureka copied to clipboard

🚀 A fast, simple and flexible blog framework, powered by Node.js and Vue.js. Eureka! 🤔

Eureka 🤔 Build Status

Eureka! you can record the first snapshots of a Eureka moment. 🤔

Note: It's entirely personal interest to do this project that feedback learning effects. The project is in development and will add the feature of generating static html files in the future.

🚀 Eureka is a fast, simple and flexible blog framework, powered by Vue.js and Node.js.

Screenshot

pc-posts

pc-article

posts-article-mobile

Easy to use

Write your content in Markdown files (or any other text format) or directly in Vue component. Implement your design with JavaScript files, using Vue.js.

The primary package that the project will use:

  • Technology Stack

Build Setup

You can use yarn or npm.

# install dependencies
yarn install # or npm install

# link eureka command
npm link

# serve with hot reload at localhost:8080
yarn run dev # or npm run dev

# build for production with minification
yarn run build # or npm run build

Quick Start

-** Create a new post **

It will create the {title}.md to the ** _source/_posts/{year}/{month} folder **

eureka new "Hello Eureka"
# _source/_posts/2016/12/Hello-Eureka.md

eureka new "Welcome to use Eureka" "custom"
# If no template is provided, eureka will use the default_template from _config.toml.

-** Generate data files **

It will generate the config, pages, posts, archive and tag data files separately to the site folder.

  • posts:
  • single post file: site/data/posts/{year}/{month}/{title}.json
  • post list: site/data/posts.json
  • archives:
    • site/data/archives.json
  • tags:
    • single tag file: site/data/tag/{tag}.json
    • tag list: site/data/tags.json
  • config:
    • site/data/config.json
  • pages:
    • site/data/pages/{page}.json - site/data/pages/about.json
eureka generate
# site/data/posts/2016/12/Hello-Eureka.json

Configuration

You can modify site settings in _source/_config.toml

[site]
name = 'Eureka' # display in the SideBar and <title>
desc = 'Eureka!' # display in the SideBar
url = '' # github page CNAME

# Logo, Favicon is stored in the '_src/static' folder.
logo = 'img/eureka.png' # _src/static/img/eureka.png
# Favicon _src/static/favicon.ico

# '_source/template/post.md'
default_template = 'post' # the default template of post.

[meta] # optional <meta>
# default 'Eureka,blog'
keywords = 'Eureka,blog'
# default
description = "Eureka!"

# github
[github]
url = 'https://github.com/eteplus'
show = true

License

MIT