Markdown logo
Text-to-HTML conversion tool/syntax for web writers, by John Gruber
5K
3.6K
966

What is Markdown?

Markdown is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting to HTML.
Markdown is a tool in the Languages category of a tech stack.

Who uses Markdown?

Companies
974 companies reportedly use Markdown in their tech stacks, including reddit, StackShare, and Asana.

Developers
3937 developers on StackShare have stated that they use Markdown.

Markdown Integrations

Showdown, Punch, Pelican, Wintersmith, and Hugo are some of the popular tools that integrate with Markdown. Here's a list of all 11 tools that integrate with Markdown.

Why developers like Markdown?

Here’s a list of reasons why companies and developers use Markdown
Markdown Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose Markdown in their tech stack.

Noah Zoschke
Noah Zoschke
Engineering Manager at Segment · | 29 upvotes · 81.4K views
atSegmentSegment
Swagger UI
ReadMe.io
Markdown
Postman
#QA
#Api
#Documentation

We just launched the Segment Config API (try it out for yourself here) — a set of public REST APIs that enable you to manage your Segment configuration. A public API is only as good as its #documentation. For the API reference doc we are using Postman.

Postman is an “API development environment”. You download the desktop app, and build API requests by URL and payload. Over time you can build up a set of requests and organize them into a “Postman Collection”. You can generalize a collection with “collection variables”. This allows you to parameterize things like username, password and workspace_name so a user can fill their own values in before making an API call. This makes it possible to use Postman for one-off API tasks instead of writing code.

Then you can add Markdown content to the entire collection, a folder of related methods, and/or every API method to explain how the APIs work. You can publish a collection and easily share it with a URL.

This turns Postman from a personal #API utility to full-blown public interactive API documentation. The result is a great looking web page with all the API calls, docs and sample requests and responses in one place. Check out the results here.

Postman’s powers don’t end here. You can automate Postman with “test scripts” and have it periodically run a collection scripts as “monitors”. We now have #QA around all the APIs in public docs to make sure they are always correct

Along the way we tried other techniques for documenting APIs like ReadMe.io or Swagger UI. These required a lot of effort to customize.

Writing and maintaining a Postman collection takes some work, but the resulting documentation site, interactivity and API testing tools are well worth it.

See more
Johnny Bell
Johnny Bell
Sr. Software Engineer at StackShare · | 10 upvotes · 173.5K views
atStackShareStackShare
styled-components
Emotion
Glamorous
Showdown
Ruby
GraphQL
React
Markdown
#StackDecisionsLaunch
#CssInJs
#Frontend

For Stack Decisions I needed to add Markdown in the decision composer to give our users access to some general styling when writing their decisions. We used React & GraphQL on the #Frontend and Ruby & GraphQL on the backend.

Instead of using Showdown or another tool, We decided to parse the Markdown on the backend so we had more control over what we wanted to render in Markdown because we didn't want to enable all Markdown options, we also wanted to limit any malicious code or images to be embedded into the decisions and Markdown was a fairly large to import into our component so it was going to add a lot of kilobytes that we didn't need.

We also needed to style how the markdown looked, we are currently using Glamorous so I used that but we are planning to update this to Emotion at some stage as it has a fairly easy upgrade path rather than switching over to styled-components or one of the other cssInJs alternatives.

Also we used React-Mentions for tagging tools and topics in the decisions. Typing @ will let you tag a tool, and typing # will allow you to tag a topic.

The Markdown options that we chose to support are tags: a, code, u, b, em, pre, ul, ol, li.

If there are anymore tags you'd love to see added in the composer leave me a comment below and we will look into adding them.

#StackDecisionsLaunch

See more
Tim Abbott
Tim Abbott
Founder at Zulip · | 10 upvotes · 3.6K views
atZulipZulip
Markdown

We've been incredibly happy with the choice of Markdown as the composition language for Zulip:

  • Everyone can write it, since it's just like email and many other products use it.
  • It has a WYSIWYG type experience, so we don't feel the need to integrate a fancy editor like Quill.
  • There are mature markdown processors for every programming language. Having compatible, high-quality implementations for Python and JavaScript is important for doing local echo properly (see our linked Markdown documentation for details of why is necessary).
  • Rendering to HTML is fast, easy to do automated tests for, and easy to debug.

We have had to customize our Markdown implementation somewhat for the chat context, because we don't have the guarantee that content is not split across multiple messages (a good example is that you don't want the "automatically change numbered lists to start at 1" feature in default markdown; you want to restrict that to numbered lists where all the numbers are 1, for example) .

See more
Johnny Bell
Johnny Bell
Sr. Software Engineer at StackShare · | 7 upvotes · 21.7K views
atStackShareStackShare
Markdown
GitHub
Trello
Jira
#Agile
#StoryPoints
#TrelloPowerUps
#StackDecisionsLaunch
#Startup
#Kanban
#Massive

So I am a huge fan of JIRA like #massive I used it for many many years, and really loved it, used it personally and at work. I would suggest every new workplace that I worked at to switch to JIRA instead of what I was using.

When I started at #StackShare we were using a Trello #Kanban board and I was so shocked at how easy the workflow was to follow, create new tasks and get tasks QA'd and deployed. What was so great about this was it didn't come with all the complexity of JIRA. Like setting up a project, user rules etc. You are able to hit the ground running with Trello and get tasks started right away without being overwhelmed with the complexity of options in JIRA

With a few TrelloPowerUps we were easily able to add GitHub integration and storyPoints to our cards and thats all we needed to get a really nice agile workflow going.

I'm not saying that JIRA is not useful, I can see larger companies being able to use the JIRA features and have the time to go through all the complex setup to get a really good workflow going. But for smaller #Startups that want to hit the ground running Trello for me is the way to go.

In saying that what I would love Trello to implement is to allow me to create custom fields. Right now we just have a Description field. So I am adding User Stories & How To Test in the Markdown of the Description if I could have these as custom fields then my #Agile workflow would be complete.

#StackDecisionsLaunch

See more
Markdown
Docker
JSON
TypeScript
Atom
Visual Studio Code
Angular 2
#Sass
#HTML
#Java
#Typescript

More than year ago I was looking for the best editor of Angular 2 application and I've tried Visual Studio Code and Atom. Atom had performance issues that put me off completely to use it again. Visual Studio Code became my main editor #Typescript files (and partly editor of #Java files). I'm happy with Visual Studio Code and I've never look back on Atom. There wasn't any reason to try Atom again, because Visual Studio Code fulfills my requirements very well. I use it for editing of TypeScript, #HTML, #Sass, JSON, Docker and Markdown.

See more
Jerome Dalbert
Jerome Dalbert
Senior Backend Engineer at StackShare · | 5 upvotes · 7.9K views
atStackShareStackShare
Rails
Ruby
Markdown
#StackDecisionsLaunch

I needed to make stack decisions accept a subset of Markdown, similarly to sites like Reddit or Stack Overflow.

I used the redcarpet Ruby gem for parsing, and Rails' sanitize helper made it very easy to only allow certain tags: links, bold, italics, lists, code blocks, paragraphs.

Problem solved! #StackDecisionsLaunch

See more

Markdown Alternatives & Comparisons

What are some alternatives to Markdown?
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
HTML5
HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). The previous version, HTML 4, was standardised in 1997.
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
See all alternatives

Markdown's Stats

- No public GitHub repository available -

Markdown's Followers
3629 developers follow Markdown to keep up with related blogs and decisions.
Tino Winkler
Massimiliano Pasquesi
John Ollhorn
Rinaldo Rex
Abhishek Jain
Alexandru Dinca
Beleren
Luís Zimmermann
Afrijal Dzuhri
Roberto Ghitti