Timeline via Markdown
via npm:
$ npm install markline -g
via spm:
$ spm install markline --save
$ markline server data.md
Server Started 127.0.0.1:8000
$ markline server -p 80 data.md
Server Started 127.0.0.1:80
$ markline server -w data.md
Server Started 127.0.0.1:8000
$ markline build data.md
$ markline build data.md --dist _site
build pages in dist
directory by default, you can set --dist
argument for custom.
var Markline = require('markline');
var $ = require("jquery");
$.get("./data/timeline.md", function(markdown){
var line = new Markline("#timeline", markdown);
line.render();
});
Markline Constuctor.
Params:
Object element
: markline container element, Need HTMLElement, jQuery Object, or Selector.String markdown
: markdown content.
Render timeline into container.
Markdown is so easy, and so powerful, you can use it to build the timeline graph.
Markline use subsets of markdown now:
* 1986 for year.
* 1986/06 for month.
* 1986/06/28 is a good day.
* 1986-06-28 you also can use this date format.
* 2012~2014 year to year.
* 2012~2014/02 year to year.
* 1986/06/28~1986/08/14 from date to another date.
* 2012~ year to now.
# title
## h2 group name
### h3 group name
#### h4 group name
##### h5 group name
###### h6 group name
Between title and group or lines, we can set meta data in markdown by key-value pair.
# title
- age: show
- date: 2014/01/01
- author: @hotoo
- mention: https://twitter.com/{@mention}
----
# Group 1
* 2014 line 1.
Now we support meta data:
-
age
: show age after year in top header line. default is hide, if want show, set:- age: show
-
mention
: set mention enable, and mention base url. default mention is disable.# @Mention Demo - mention: https://github.com/{@mention} ---- - 2014 @hotoo mention @lizzie
{@mention}
is placeholder for mention name. -
hashtag
: custom hashtag styles.# #HashTag Demo - hashtag: - tag-name: text-color, background-color - life: yellow, #f00 - job: rgb(255,255,255), rgba(255,0,0,0.5) ---- - 2014 this is my #life
following meta data support come soon.
-
theme
: set different theme, by build-in theme name, or theme css file url.- theme: light - theme: http://www.example.com/theme.css
-
year-length
: set date column width. -
date-type
: show date type byyear
,month
, ordate
-
author
: set author information.
* 2014 list item
* 2014/01 sub list item
- 2014 another list item
- 2014/01 another sub list item
for anonymous group.
* 2014 line 1
----
* 2015 line 2
* 2014 this is a [link](url)
* 2014 this is an image: ![alt](image-url)
* 2014 this is **strong** text.
* 2014 this is __another strong__ text.
* 2014 this is _emphasized_ text.
* 2014 this is *another emphasized* text.
* 2014 this is ~delete~ text.
* 2014 this is ~~another delete~~ text.
Want more markdown syntax feature? make issues, fork and pull request.
# document name(title)
## group name (optional)
* 2012~2014 list 1
- 2012/02 sub list 2.1
- 2013/08/02~2013/12/20 sub list 2.2
* 2012/02 list 2
* 2012/02/02 list 3
## another group
- 2013 another list item.
- 2013-05-05 yet another list item.
- I like cheeaun/life but I want more.
- I don't like cheeaun/life repo's code.
- cheeaun/life's date format is not good for me. (IETF-compliant RFC 2822 timestamps)
- But Thanks @cheeaun for anyway.
- Convert cheeaun/life.md for markline
MIT