Show HN: A user-friendly UI for viewing and editing Markdown files
marker.pages.dev
marker.pages.dev
Eg. If it is trying to be a generic markdown file editor, I wouldn't want it to insert yaml frontmatter without being more explicit about it. If it is trying to be a note taking tool, I'd expect to be able to interlink local markdown files and navigate files through them (I couldn't get that to work). If non technical users are the primary audience, the git integration may not be ideal sync solution for them. If it is for technical users, we would likely want to be able to edit the front matter ourselves (to add options specific to jekyll/pandoc or whatever else will use that markdown) etc.
* very clean interface: But too clean for my taste. I like WYSIWYG controls like BIU and I like to apply styles directly (like in Word/gdocs) as opposed to many md-Editors with a code/preview split.
* the HN-title implies that I can quickly edit a .md file, but it asks me to define a project first - no direct file opening.
* I opened an existing file with a h1-header on top, the app adds a title and subtitle on top anyway - not wanted. I couldn't find a way to remove them either.
* It seems I cant move the window by "pulling" the area where the titlebar would be. The window is stuck on a center-top position.
So far, the markdown editor that comes closest to my requirements is the vscode plugin "Markdown Editor" (https://marketplace.visualstudio.com/items?itemName=adameros...)
Thanks for your work and good luck!
Edit: Attempt to style my comment for better readability.
https://github.com/1943time/bluestone
https://apps.apple.com/us/app/bluestone-markdown/id645139147...
I myself am currently playing with WriterSide from JetBrains but it's still in experimental stage.
I use zettlr on more project related documents, that typically reside in a `doc` folder in the respective project directories rather than in my obsidian vault. This is much faster as usually I am already working in that directory, and opening things in an obsidian vault is too distracting then. I would say that in general compartmentalising between work within a project and the general context/structure of my notes helps me a lot with not interrupting my flow states, even if this just began because of different software conveniences.
Sometimes I also work on md files in my obsidian vault using zettlr because I like a bit more how it handles pasting images from clipboard memory (gives you the option to resize the image on the fly, not sure if this is possible somehow in obsidian).
Seriously now, why can’t we have normal desktop apps anymore…
Programs like TextEdit and Word should have a “save as Markdown” option, but it isn’t that important.
Yes, but visualizing the _rendered_ markdown is very helpful to debug the content.
The more things change...
[1] https://techcrunch.com/2014/05/14/george-r-r-martin-writes-e...
We reached a point in the consumer tech circus where storing text files locally is considered a “feature”.
It’s still useful to have a one-off editor but there are several programs that can fill that purpose well.
Marker looks a lot worse, though. I gave my 'project' a name and selected a folder—one containing a big hierarchy, tbf, but the app gave no guidance. All I get now is a blank window, even when I restart. There doesn't seem to be any menu item that will let me create a new project or recover from this state. I guess I'll have to reinstall...
This is the problem with the 'project' (or 'vault') approach, IMO—if I'm just opening a file, I know what that is, what it means. When your app revolves around some bespoke notion of whatever a 'project' is, and that's the first experience of your app I get, that's not great.
It's a native macOS app, so it starts instantly. I use it for everything – from writing articles to comments/messages, where I care a bit more about not making typos or accidentally sending before proofreading.
Notes is clumsy – I never can find what I want there. With folders, pinned notes, named notes, synced/unsynced etc, it's just a mess.
Drafts is just a super-reliable and fast editor that is better than any other textbox/editor. So I mostly use it for copy pasting. Even use it for HN comments that are longer than 10 lines.
That said, I have returned to it and am abandoning Drafts. Turns out that, once you have a substantial amount of stuff, finding stuff is just as bad as Notes and I do not actually use the automation.
Also, I want Rich Text, too. I believe in plain text but, in the end, I cannot live without being able to easily set text to be bold, colored or large so that I can see the important parts. Still, I am mad at Notes for not supporting Markdown because I do README and such often.
Since you're back to Notes, you might be interested to know that you can now scope searches in a bunch ways — folders, Smart Folder, tags, kind (i.e. limit to notes with checklists), date range, etc. You can even search "notes created last year" to see all of your notes created last year, etc. https://support.apple.com/en-au/guide/notes/not18ab658ed/mac
It is my view that the current market has coerced programmers to have free versions even though programmers cannot buy food or pay mortgages with free versions.
I consider it unethical to gain a benefit in my daily life without giving something in return. $20/year is almost too little.
One really nice feature it has is the ability to paste in images and have them automatically get put in a pre-defined folder, which is pretty crucial to static blog site deployment.
Typora + Blot.im have been hard to beat for me.
Slightly on a tangent, anyone knows of a good markdown reader library for the terminal in python?
Here’s a Go example: https://github.com/charmbracelet/glow
Btw, the Charm/charmbracelet projects are fantastic, wish there was something like that but in python
EDIT: Added the app isn't out yet (about a month more of hard work!)
Seems a bit disingenuous is all.
No, the intention is to build a waitlist to get feedback from target users. I'm following sort of a similar plan the Linear guys went with[1].
EDIT: It also gives me a lot of motivation to see people liking what I build and waiting to use it - which takes tremendous tall on me since I'm working on it 24/7 every day for the past 7 months.
[1] https://linear.app/blog/rethinking-the-startup-mvp-building-...
It feels dishonest? Like a bait and switch.
That being said, good luck.
{{kanban}}
# Todo
- [ ] todo 1
- [ ] todo 2
# In Progress
- [ ] todo 1
- [ ] todo 2
{{/kanban}}
Currently, Plume doesn't support collaboration. How do you think it can be an alternative to Trello?
My heavily used ones are: Markdown to HTML (copy), which lets you write and preview markdown and then copy+paste it as html into things like newsletters, CMS, etc. as a single step.
The other one is Markdown to PDF, which lets you organize a series of markdown files into a coherent structure and then spits out an ebook on command.
Any recommendations for extensions to help with authoring markdown in VSCode?
disclaimer: I am the maker of acreom
I just recently moved to Org Mode but if I were still in the Markdown ecosystem I would give this tool serious consideration.
it's local-first, all your data is stored on your device as regular markdown (no custom md flavor) and works fully offline.
the (optional) sync is free and E2E encrypted.
Too many companies have it on the roadmap and never deliver.
It's not the same as acreom (leaning more towards a CMS-like platform with API, real-time collab, etc.), but is well-suited for e.g. creating knowledge bases.
acreom is designed specifically for devs and makes it easy to bring all relevant context in one place, create and track progress on your projects and capture stuff quickly.
Every time I try to move a page to a new folder the app crashes, is this a know issue or do you want more info?
* create folder * create page in folder * create new page while this previous page was open * Observe that new page is not created in current folder. Go find page in all pages and open * Go to page info and try to change location * App crash
Happens every time for me
"Ship faster by organizing less acreom is the actionable knowledge base for 10x developers."
It'll great if you point me to one of those... Thanks.
But for some content I had to use escape hatches and use raw HTML. I wonder whether this app supports raw HTML.
YMMV, I always been pretty disappointed with VS Code's handling of markdown coming from Atom.
It features math, interpolated variables, theme-driven PDF output, and is cross-platform. Have a peek at the screenshots and tutorials:
* https://keenwrite.com/screenshots.html
* https://www.youtube.com/playlist?list=PLB-WIt1cZYLm1MMx2FBG9...
Document meta data and all variables are stored in an external YAML file. These variables can be edited directly within the editor. Variables can be used within the document and within text-based diagram descriptions (such as GraphViz and anything else supported by https://kroki.io/).
There's also a command-line interface for integrating into CI/CD pipelines or similar workflows.
https://gitlab.com/DaveJarvis/KeenWrite/-/blob/main/docs/cmd...
Nonetheless, if someone wants to use an existing site generator, they can do so while keeping their Markdown documents free of presentation logic. In Linux, it can be as simple as:
cat header.yaml source.md > combined.md
Then run the site generator on the combined output file.In the screenshots, the theme-driven PDF output shows the same content presented in two different PDF files: one with a ToC and one without. Whether a table of contents is included is presentation logic, dictated by the typesetting engine configuration. If you place the ToC controls in the YAML header for the document, then it means having to change the content to add or remove the ToC. That then presumes the type of transformations the Markdown will undergo, which, IMO, defeats the purpose of a plain text document.
KeenWrite is what-you-see-is-what-you-mean editor, similar to LyX. The preview panel shows the content having been converted to XHTML and formatted with CSS. When producing a PDF file, the XHTML is sent through the ConTeXt typesetting software and formatted according to the instructions associated with a user-defined (or user-selected) theme. While the XHTML preview is rendered in real-time, the typesetting is not real-time.
The main reason I’m interested in WYSIWYG editing for Markdown is that I find monospaced fonts to be too hard on the eyes for editing prose text of any length. But due to lists and code fragments and the like, just switching to a variable-width font in a plain-text editor is also not very practical.
[0] My `.lessfilter` configuration: https://gist.github.com/kpschoedel/62888f552dc9d920d600166e5...
[1] https://github.com/Orange-OpenSource/pandoc-terminal-writer
There may be a config option for this but I didn't keep it installed long enough to find out.
Look at this:
Moving notes to published articles would then be easy on the go, when the inspiration often comes.
Though still won't help with search ignoring markup
Too bad it doesn't have built-in math editor.
'“Marker.app” is damaged and can’t be opened. You should eject the disk image.'
This was on the Marker_1.0.0_aarch64.dmg build. I downloaded again and got the same.
No acknowledgement of predecessors or collaborators - or license?
And now, as I finish typing this comment, stars up to 189.
Definitely a good way to get reach.
It now has 196 stars.
Is it good or bad?
I’m building something in this space and I’m curious what’s the appeal of the former vs the latter?
The main thing is to have markdown as the output format and if I copy text from the editor that it pastes in markdown
(setq-default fill-column 79)
(global-set-key (kbd "C-'") #'imenu-list-smart-toggle)
(autoload 'markdown-mode "markdown-mode" nil t)
(autoload 'imenu-list "imenu-list" nil t)
(autoload 'imenu-list-minor-mode "imenu-list" nil t)
(autoload 'imenu-list-noselect "imenu-list" nil t)
(autoload 'imenu-list-smart-toggle "imenu-list" nil t)
[...]
(custom-set-variables
[...]
'(markdown-hide-urls t)
[...])
;; Note: These face colors assume black-on-white normal colors.
(custom-set-faces
[...]
'(markdown-blockquote-face ((t (:inherit nil :background "gray95" :foreground "gray25"))))
'(markdown-bold-face ((t (:inherit nil :slant normal :weight bold))))
'(markdown-header-delimiter-face ((t (:inherit markdown-markup-face))))
'(markdown-header-face ((t (:inherit nil :weight bold :family "sans"))))
'(markdown-header-face-1 ((t (:inherit markdown-header-face :height 2.0))))
'(markdown-header-face-2 ((t (:inherit markdown-header-face :height 1.6))))
'(markdown-header-face-3 ((t (:inherit markdown-header-face :height 1.2))))
'(markdown-header-face-4 ((t (:inherit markdown-header-face :height 1.1))))
'(markdown-header-face-5 ((t (:inherit markdown-header-face :height 1.0))))
'(markdown-highlight-face ((t (:foreground "blue" :underline t))))
'(markdown-html-attr-name-face ((t (:inherit markdown-markup-face))))
'(markdown-html-attr-value-face ((t (:inherit markdown-markup-face))))
'(markdown-html-tag-name-face ((t (:inherit markdown-markup-face))))
'(markdown-inline-code-face ((t (:inherit nil :foreground "green4"))))
'(markdown-italic-face ((t (:inherit nil :slant italic :weight normal))))
'(markdown-language-keyword-face ((t (:foreground "gray80"))))
'(markdown-link-face ((t (:inherit nil :foreground "blue3"))))
'(markdown-list-face ((t (:inherit nil :weight bold))))
'(markdown-pre-face ((t (:inherit markdown-inline-code-face :background "#f4fff4"))))
'(markdown-reference-face ((t (:weight bold))))
'(markdown-strike-through-face ((t (:inherit nil :strike-through t))))
'(markdown-table-face ((t (:inherit nil :background "#fafafa"))))
'(markdown-url-face ((t (:inherit markdown-markup-face))))
[...])Currently supports custom block elements and JSON-serializable attributes. Now looking into inline content and building an extension system to render custom previews for the nodes.
Check it out if you're interested - it's also open-source.
It's TipTap + Radix wrapped in tauri. No encryption / security features AFAICT.
https://github.com/ueberdosis/tiptap
Tiptap is immensely popular, supports both Vue and React, is super lightweight and has a huge community of extensions. I've been using this since 2019 and can't recommend it enough. A number of comments here are asking for functionality that is built in, easily available as an extension, or easily add-able!
Notepad++ : Scintilla
Notepad.exe : Win32 EDIT control
TextEdit.app : NSTextView
It’s not like you can download and run Tiptap as an application, right?Isn't Tiptap a wrapper around ProseMirror that does SaaS pricing?
I'm also working on a WYSIWYG editor and using TipTap. It's great, but on its own, it's not a ready editor, but a great framework.
There's a lot you can do with TipTap (and ProseMirror) to make your editor stand out and fit your use case better than others.
Adding a list of features would be nice. Does it support checkboxes? Mermaid? Folding? Does the editor it comes with support search and replace? Multi-caret editing?
Maybe it’s just me, but I have long stopped downloading stuff just in case it’s good. You have to convince me first, then I will download.