[HN Gopher] Show HN: Markwhen: Markdown for Timelines
___________________________________________________________________
Show HN: Markwhen: Markdown for Timelines
Author : koch
Score : 788 points
Date : 2024-12-01 17:58 UTC (1 days ago)
(HTM) web link (markwhen.com)
(TXT) w3m dump (markwhen.com)
| wild_egg wrote:
| Seems not right for the comments here to be empty but I don't
| have much to say other than this looks incredibly nice. Hope I
| have an excuse to use it at some point.
|
| Thanks for sharing!
| yawnxyz wrote:
| two years ago, this post got almost 400 points!
| https://news.ycombinator.com/item?id=31810876
| capnahab wrote:
| seconded.
| jbaber wrote:
| Is there support for date ranges? e.g. 2024-12-25 - 2025-01-06 ?
| ks2048 wrote:
| It's the second example in "Basic Syntax" on the right.
| snappr021 wrote:
| This looks very good.
|
| Is there syntax for dependent tasks in the timeline? In other
| words tasks that only start once prerequisites are done.
|
| If the date of the original tasks changes, the dependent tasks
| move accordingly automatically, without needing to edit a full
| list of dates for each dependent item.
| genezeta wrote:
| It's a _timeline_ that tracks events and periods. It doesn 't
| seem to have the concept of a _task_ in any way.
| KaoruAoiShiho wrote:
| It has checklists
| sleepyfran wrote:
| This looks amazing, will definitely try to incorporate it into my
| workflow!
| sprobertson wrote:
| Besides the tool itself that website typography is excellent.
| Guess I'll have to use Playfair in my next project.
|
| Edit: One thing I'd like to see with the basic syntax example is
| fiddle with your default dates to make it more obvious that the
| span is a span. At the time scale it is now, it just looks like
| another dot.
| koch wrote:
| Just edited the example so it looks like a span, thanks for the
| feedback!
| KaoruAoiShiho wrote:
| Any chance you can copy some of this for aesthetics?
| https://www.chronoflotimeline.com/timeline/shared/3118/Home-...
| owlglass wrote:
| Hopefully without the latency, it's slow to respond on a 2022
| M2 Macbook Air (tried Firefox and Safari)
| alexkearns wrote:
| That's weird. It works perfectly for men much older computers
| and also on my M2 Mac Pro. What version of OSX are you using?
| I created that product, btw.
| maleldil wrote:
| Not OP, but on Firefox 132, Sonoma 14.4, M1 Pro, it's quite
| janky. It's less so on Chrome and Safari, but it's still
| noticeable.
| dewey wrote:
| On a 3,2 GHz 6-Core i7 Mac Mini with Safari it also feels
| very laggy and unpleasant to use.
| alexkearns wrote:
| Ha! That's my product. Thanks for mentioning!
| neumann wrote:
| Just in case anyone else is out of the loop like me. This can be
| used as a plugin in obsidian!
| https://obsidian.md/plugins?search=markw
| accrual wrote:
| This is neat! It reminded me of this project by cheeaun that
| enables one to create a visual timeline based on a simple texted
| based format. The purpose was to plot one's life events in a
| visual way.
|
| https://github.com/cheeaun/life
|
| Sample file (from the repository): @USERNAME's
| life =============== - 24/02/1955 Born
| - ~1968 Summer job - 03/1976 Built a computer -
| 01/04/1976 Started a company - 04/1976-2011 Whole bunch
| of interesting events
| AlanYx wrote:
| That is a great project! I wonder if anyone has created a
| visualization that uses a "life in weeks" format (like
| https://waitbutwhy.com/2014/05/life-weeks.html) rather than a
| linear horizontal timeline.
| zimpenfish wrote:
| Rory Codes made a "life in days"[1] (which I shamelessly
| copied for my own amusement[2])
|
| [1] https://days.rory.codes
|
| [2] https://git.rjp.is/rjp/daysgo
| ta1243 wrote:
| What a depressing site!
| jvidalv wrote:
| I do :)
|
| https://jvidal.dev/memento-mori
| x1ph0z wrote:
| Really cool project, looking forward to using it in Obsidian.
| robinhowlett wrote:
| This looks excellent - i've been looking for a timeline-based,
| simple-entry tool like this. Well done.
| KaoruAoiShiho wrote:
| Does this work at all for fantasy timelines?
|
| Trying to build a timeline like this:
|
| title: History of the World
|
| 0: Foo Calendar's civilization founding.
|
| 124: Invention of the Foo Calendar
|
| 220: Founding of Bar
|
| 1310: Invention of GlooblyGock
|
| 5621: Demon invasion.
|
| Edit: After trying it don't think it works for this usecase.
| jiangplus wrote:
| This reminds me of blocks.md (https://blocks.md/), a Markdown
| based form builder.
| koch wrote:
| Creator here - glad to see people like markwhen!
|
| Been working on markwhen for a few years now, originally inspired
| by cheeaun's life timeline that another commenter posted about.
|
| At this point markwhen is available as a VS Code extension,
| Obsidian plugin, CLI tool, and web editor in Meridiem.
|
| Some recent markwhen developments:
|
| - Dial, a fork of bolt.new (Stackblitz's very cool tool that
| leverages AI to help quickly scaffold web projects): an in-
| browser editor that lets you edit existing markwhen
| visualizations like the timeline or calendar or make your own. I
| just released that yesterday so it's still rough but I have big
| plans for it (it's one of the visualizations in meridiem)
|
| - Event properties: each entry can have it's own "frontmatter" in
| the form of `key: value` pairs. I wanted this as I'm aiming for
| more iCal interoperability in the future, so each event could
| theoretically have things like "attendees" or google calendar ids
| or other metadata. This was released in the last month or two.
|
| - remark.ing: this one isn't ready yet by any means but it's like
| a twitter/bluesky/mastodon-esque aggregated blog site. So you
| write markwhen and each entry is a post. In this way "scheduling"
| a post is just writing a future date next to it, and you have all
| your blog in one file. This one is a major WIP
| mturk wrote:
| I used Markwhen recently to make an interactive Gantt chart for
| a proposal to a collaborator and it went swimmingly. (We got
| the gig!) So, thank you!
|
| For the record, I used the Obsidian plugin to develop, then
| deployed as static HTML.
| doctorhandshake wrote:
| Sorry if this is a dumb Q but what took that from
| Markwhen/down to HTML?
| mturk wrote:
| Not a dumb question! Markwhen has a CLI:
| https://docs.markwhen.com/cli that I used.
| doctorhandshake wrote:
| Oh I missed the rendering capability. Thanks for the
| link!
| maroonblazer wrote:
| I skimmed the documentation and didn't see any reference as
| to whether Markwhen supports dependencies? I.e. MSProject-
| style make one event dependent on another task ending or
| starting.
|
| Did you need/use that functionality?
| koch wrote:
| https://docs.markwhen.com/syntax/dates-and-
| ranges.html#relat...
|
| It doesn't look at task completion but you can base events
| on other events
| cheeaun wrote:
| Great to see this again. Amazing how this tool expanded so much
| over the years!
| Brajeshwar wrote:
| What is the difference between the free and the monthly
| subscription tier?
| d--b wrote:
| Looks very good.
|
| Just a note. It was _really_ hard to find how to sign up.
|
| EDIT: and I still haven't found how to sign in in the desktop
| app.
| makach wrote:
| Congratulations on your release! I've working on building
| exactly the same tool but you beat me to it... I cannot compete
| with this functionality, and completeness. Amazing work!
| jagermo wrote:
| pretty nifty tool. What license are you using for distribution?
| EarlOfCamden wrote:
| nice! I've been thinking I will need something like this in
| Obsidian at some point, good to know it already exists.
| RestartKernel wrote:
| Remark.ing sounds incredible. I've been considering building
| something like Memos but based on Markdown files rather than a
| relational database for personal use, but this comes really
| close to what I was looking for.
|
| Are you planning to open source it? I couldn't find it on your
| GitHub.
| tiffanyh wrote:
| Be careful.
|
| Gruber (who has trademark in "Markdown"), appears to not like
| people using his trademark name.
|
| https://blog.codinghorror.com/standard-markdown-is-now-commo...
| cal85 wrote:
| This has a different name.
| SllX wrote:
| Not only is this a different name, but that was an attempt to
| essentially expropriate Markdown. This is nothing even close to
| that.
| benatkin wrote:
| It's plausible that it could be a trademark issue, were
| "markdown" strongly enforced. "When" isn't the furthest from
| "down". However, the reason behind Gruber's issue with it has
| been misinterpreted and the Markdown name is very widely used
| without any arrangement with its creator, and a trademark for
| Markdown is not registered with the USPTO by its creator
| AFAICT.
| SllX wrote:
| > However, the reason behind Gruber's issue with it has
| been misinterpreted and the Markdown name is very widely
| used without any arrangement with its creator
|
| Correct. Not to get too in the weeds on a 10 year old
| controversy, but Gruber has gone on the record to say he is
| cool with things like GitHub-flavored Markdown but from
| what I gathered back then and since then whenever he spoke
| on the subject (which has not been a lot), his issue with
| the CommonMark project (as it would eventually be called)
| using any name that included "Markdown" in the name wasn't
| cool with him since they went ahead with an ask forgiveness
| instead of receiving permission approach on attempting to
| basically expropriate Markdown. GitHub-flavored Markdown
| and things like it don't do that, they just claim to be a
| different kind of Markdown.
|
| Also never understood why he didn't just go ahead and
| trademark it, but at this point would it even be
| enforceable? It's kind of generic now, but I don't know if
| it's generic enough to not be enforceable either, and maybe
| he doesn't want the obligation of having to enforce it.
|
| EDIT: anyway, point is, this is so far from being Markdown
| or claiming to be that I don't think there is a single
| issue with Markwhen as presented that would ruffle any
| feathers in Philly. The creator shouldn't have to worry and
| nobody should be telling him to worry. Like, seriously,
| none of this is relevant. Markwhen is just a cool looking
| thing that exists now and I like timelines.
| BonoboIO wrote:
| Wow ... John Gruber was also very upset, ... , that the word
| Markdown was not capitalized throughout the spec.
| BonoboIO wrote:
| I searched for a trademark for ,,Markdown", but I didn't find
| any. Can you show me the trademark?
| philipwhiuk wrote:
| Joel tried to write an IETF Standard by the backdoor for a
| thing he didn't invent.
|
| Having been kicked off the word standard, they immediately
| thought "how can we still do this while technically obeying
| it". So they picked the closest possible word to Standard,
| implying it really was the definitive version.
|
| Yeah, I'd be grumpy too.
|
| If he'd called it 'Atwood Flavoured Markdown' there wouldn't be
| an issue. But Joel wanted to own the definition of Markdown.
|
| As a group of tech CEOs they decided to co-opt someone's idea
| without even asking if it was okay.
|
| In fact kicking John off the project _was_ the point.
|
| You can do that, you just can't keep the name they created.
| dewey wrote:
| Here's the license (http://daringfireball.net/projects/download
| s/Markdown_1.0.1....) and I don't think Gruber mentioned
| anything about a "trademark"? It seems like it was mostly about
| the name of his project just being taken unethically. Just like
| if someone would take a open source project name and makes it
| look like an official for when it's not. Maybe not a trademark
| infringement, but certainly not nice or ethical.
| desireco42 wrote:
| OK, this is fantastic, like others mentioned. Now... to figure
| out how to use it in existing markdown... love the Obsidian
| integration.
| einpoklum wrote:
| > _for plainly writing logs , gantt charts , blogs , feeds ,
| notes , journals etc._
|
| So, how would this combine with markdown, for the content within
| dated blog/journal entries? And how would I use dates as plain
| dates rather than special markwhen entities?
| shepherdjerred wrote:
| I wonder how easy it is to render the timeline in a custom manner
| neoconomist wrote:
| Neat, something like this was missing in my text-based workflow.
| Thanks for building !
| ynx wrote:
| Meridiem seems to only have ARM builds, no Intel builds. Could
| you perhaps update it to include Intel?
| teo_zero wrote:
| Does it work with non-English dates?
| jusgu wrote:
| Nice, these "Markdown for X" tools are super neat. Wish this
| worked nicely with mobile view, seems like a lot of the text are
| overflowing and margins are squished in the demo
| atoav wrote:
| Note that Mermaid also supports timelines (if it is new enough):
| https://mermaid.js.org/syntax/timeline.html
|
| Mermaid is supported by gitlab/github and other markdown editors
| (within code blocks).
| otikik wrote:
| The charts you linked don't look like the same kind of chart to
| me. There's information about what happened after what, but the
| information about how much each task took seems missing.
| edvardas wrote:
| Mermaid Gannt[0] diagram type might be similar to what you
| have in mind.
|
| [0] https://mermaid.js.org/syntax/gantt.html
| pflenker wrote:
| Great project, I always felt that this was missing in Markdown.
|
| I wonder how we can "end" a timeline and start a new one in the
| same doc? So that I can write stuff like:
|
| # My important project.
|
| Description of the project goes here
|
| ## Timeline of the project.
|
| 2024-12-02: This is what I did today.
|
| 2024-12-01: This is what I did yesterday.
|
| # My other important project.
|
| Description of the project goes here.
|
| ## Timeline of the project.
|
| 2024-12-03: This is what I plan tomorrow.
|
| ---
|
| Some thoughts about what I have written above.
| _ink_ wrote:
| Awesome! I really would like to see a Discourse Plugin for that.
| dotancohen wrote:
| Again reimplementing Emacs Org mode. Nice work!
|
| This looks terrific, but honestly Markdown is a document markup
| language. Org mode, while superficially similar in scope, is
| actually a data storage and exchange format. The data
| manipulation and querying built around Org mode are unlikely to
| be replicated in Markdown.
| vslavkin wrote:
| Agree. This could be easily done in org. I feel that if org was
| more popular, a lot of these solutions would disappear, or
| would be a small project that just reads some org properties. I
| guess it would be key to have better support for easier
| editors, like vscode and maybe even a dedicated editor
| bergie wrote:
| This is pretty cool! I'm the developer of a semi-automatic
| electronic logbook system for sailboats:
| https://bergie.iki.fi/blog/electronic-logbook/
|
| Right now I'm using YAML for the file format, as I wanted
| something that would be reasonably readable for both humans and
| machines. Markwhen would also fit the bill nicely, so that's
| something to consider, at least as an export format. My entries
| have a lot of properties, though (stuff like wind speed, vessel
| coordinates, barometer, etc). Traditional ship's logbooks were
| done in a tabular manner to record all this. So I'm not sure if
| that would end up looking quite messy. Here is an example of a
| day of log entries in the current format:
| https://github.com/meri-imperiumi/log/blob/main/_data/logboo...
|
| I'm using these also for some data analysis, like watermaker
| membrane health, or sailed miles per crew member.
| noisy_boy wrote:
| This is neat. What I am waiting for is markdown for tables with
| cells supporting multiline content in an easy to use manner.
| dustedcodes wrote:
| Things like Markdown work because they are intuitive, but the
| date range syntax in Markwhen is anything but intuitive.
|
| Why 2025-01-22 / 2026-10-24?
|
| Why not 2025/01/22 - 2026/10/24?
| dimava wrote:
| Because this is ISO 8601 date format, the standard date format
| that intentionally uses dashes to not confuse 25/01/22,
| 01/22/25 and 22/01/26 which are the same date in different
| formats
|
| (that's why it uses dashes for dates, as for why it uses / for
| interval I have no idea)
| thunfisch wrote:
| It's using a slash because that's how ISO 8601 defines time
| intervals.
| https://en.wikipedia.org/wiki/ISO_8601#Time_intervals
| funnybeam wrote:
| Thanks for linking that. I'm a big proponent of using ISO
| 8601 but had either missed or completely forgotten about it
| specifying a format for intervals.
|
| Note that ISO also permits a double hyphen as the interval
| separator which is hugely preferable to me personally and
| also works with file names (as mentioned in that Wikipedia
| article)
| dustedcodes wrote:
| I know ISO 8601, but that doesn't answer my question. Let me
| rephrase this, why was a format intuitive to a machine chosen
| instead of a format which feels more intuitive to a human?
|
| I think YYYY/MM/DD - YYYY/MM/DD will mean the correct thing
| to many more people than YYYY-MM-DD / YYYY-MM-DD, which I
| suspect many will interpret as an OR and not a RANGE.
| zamadatix wrote:
| EDTF has advantages in less ambiguity. At the same time,
| Markwhen does also support non-EDTF dates too. The docs do
| a good job of explaining both
| https://docs.markwhen.com/syntax/dates-and-ranges.html
|
| Personally I think it goes a little over-flexible on
| support for non-strict formatted dates to the point it
| becomes difficult to figure out what a given date string is
| going to result in rather than feeling easier to use.
| That's probably part of the reason the primary example uses
| the clearer format.
| raziel2p wrote:
| Any time I see slashes in dates I do actually have to
| double-check whether it's DD/MM or MM/DD.
| keybored wrote:
| > intuitive to machines
|
| Because the "humans" messed up so bad that there weren't
| many options left for a simple enough standard.
|
| I would prefer ISO 8601 too over some slight variation
| which is allegedly more intuitive for homo sapiens sapiens.
| To keep it simple.
| keybored wrote:
| Hyphens.
| ramses0 wrote:
| Better: 2025-01-01..2025-01-31: (eg: git-log-ish format)
| dirkc wrote:
| I'd love something that can support uncertain timelines - I
| maintain a list of space events that I'm interested in, but I
| haven't yet figured out how to do the dates.
| SuperV1234 wrote:
| This is really cool, I wish there was some sort of life planner
| software where I can write down appointments, notes, ideas, and
| more in a simple format like Markdown, and automatically get
| notifications/reminders based on what I wrote.
| funnybeam wrote:
| Have you looked at org mode for eMacs? That does precisely this
| thomasreggi wrote:
| Just wanted to say congrats on the project. This is truly a
| masterpiece from the utility of it, the novelty, to execution
| with the vscode / meridian app, and sass. Brilliant execution!
| nivertech wrote:
| What shortcut used to preview Markwhen documents in Obsidian?
|
| I create a "Markwhen" folder and create a "test.mw" not there,
| but it doesn't render, and I can't an option for preview in the
| command palette.
| SamBam wrote:
| How would one go about creating Obsidian support for a timeline
| that was scattered across multiple files?
|
| I'm thinking like the network visualizer that Obsidian has, it
| would be great if it could find tagged dates in any file and
| display them on a common timeline.
| nemacol wrote:
| Big fan of timelines. I am going to use this for sure
|
| Have had an idea for a timeline search/visualization. Search a
| thing and that pulls pages and related pages with date/times from
| Wikipedia. With a zoom in/out to adjust resolution like google
| maps - weight nodes on timeline based on page views/edits/links.
| Have not gotten around to try to make something like it. I bring
| it up here just in case something already exists and I missed it.
| omnster wrote:
| Looks neat! Is there a way to make it work with pandoc?
___________________________________________________________________
(page generated 2024-12-02 23:01 UTC)