-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Write Guidelines for Markdown structure #25
Comments
Check out http://archieml.org: a structured text format optimized for human writability. |
Nice. Purpose built and oh so minimal. Archieml is definitely plucking at my heartstrings... On the other end of the "mediated experience" continuum, Carol stumbled upon PubPub last week. At the moment, it's heavily optimized for traditional documents, but it seems to have a lot going for it. Think collaborative, Markdown-based medium.com. It's supposed to be "open sourced within the month" but the developer seems quite responsive. And those includes (e.g. Anyway, my username is 'poser' and Carol's is 'Cee Dub'. We can add you as collaborators if you track us down. I added an orphaned, half-written Security in-a-Box guide for testing and Carol added something from LevelUp. |
Good chatting earlier about structure @poser Here's few things that came up and could be of interest for similar use cases for re-usable bits of content (snippets) being included (transcluded) into documents. The specific use case here was to have the same document (let's call it the master document), contextualised with different snippets. In that case:
A few things I've added with regards to linking:
I've added PubPub in the discussion on editors #5 and I'll muse about transclusion in #12 and maybe will create a new issue about which ways to extend what. @elationfoundation I had seen ArchieML before and did really like the more resistant white-spacing aspect and generally resilient approach! Definitely to add on the list of supported metadata formats for contentascode (I've created an issue for that #29) ! |
After looking at a few, I prefer the Hercules Markdown transclusion syntax which is But here are a few for reference:
What I like about I like about
In addition the format used by Hercules https://github.com/jamesramsay/hercule which is also including things like providing context |
Have you checked out restructuredText. I just started playing with it on a project and then watched this video and think it might have built in a lot of the internal metadata and semantic structure that is required in your comments. https://www.youtube.com/watch?v=eWNiwMwMcr4 |
@Coccodrillo @poser @houndbee
Here's some thoughts about the approach to exporting existing content in a "content as code"
Structure
One of the driving principles is to focus on AX (the Author's Experience). Therefore the content should be in a simple file structure that strongly reflect the organisation of the content in "its natural habitat" i.e. where it's meant to be displayed in the end. This will make it easy to find content. Here's an example of this with Open Mentoring
The content on the app here :
The file structure on prose/github is very similar:
The UX could be improved more by dealing with titles better. (Here Dealing with Emergencies is practice-1-emergencies and Getting Started is 0-getting-started).
Here's an example of how the file structure is on the Open Mentoring app:
Granularity
Another important consideration is how the content is broken down. Currently in Open Mentoring the approach is to have "stacks" be Markdown files. Read more about in the openmentoring MODEL.md doc.
Multiple stacks are then aggregated into single pages on the web:

And an individual stack (here under the Scenario heading) is actually split (using
<br>
as the token right now) into cards on the mobile app like this:And this is what it looks like on Prose
The source Markdown for this is here:
https://github.com/iilab/openmentoring-content/edit/master/en/topics/practice-1-emergencies/1-seeking-help/2-scenario.md
What I'd like is to maintain a AX focused approach here, but this probably means allowing authors to switch context depending on what they want to look at (web view, mobile view,...). Right now there's a trade off in Open Mentoring in order to make it easy
Open Questions
Currently the openmentoring-curation layer also allows to specify metadata that will be inherited by the children files, which helps DRY for instance the
source
metadata key in the index.md file here will be applied to all the stacks in the same folder.Also to avoid having to add frontmatter metadata (or companion metadata files - like having a content.md with only markdown and content.json or content.yaml with only metadata) openmentoring uses keywords in file names to create metadata keys (which is also described in the MODEL.md file).
There will be cases where particular pieces of content are reused in different places in the app. My current thinking is to have these reusable components included via symlinks for content that's in a file, or some kind of block level include syntax (see middlematter discussion in #12) which could also work for including remote content.
The usability of this completely depends on building on top of a content authoring tool like prose, developing plugins to deal with middlematter, symlinks or remote includes in a way that is natural for authors.
The text was updated successfully, but these errors were encountered: