Markdown & README
This content is for Frontend. Switch to the latest version for up-to-date documentation.
Markdown
Section titled “Markdown”Markdown is a lightweight markup language for creating formatted text using a plain-text editor. It was created by John Gruber in 2004 with the goal of being readable as-is, even without rendering.
Markdown is used everywhere in software development: README files, documentation, GitHub issues/PRs, wikis, blogs, and note-taking apps.
Why Markdown?
Section titled “Why Markdown?”- Simple: Easy to learn — you can pick up the basics in minutes.
- Portable: Plain text files work on every OS and tool.
- Universal: Supported by GitHub, GitLab, VS Code, Notion, Obsidian, Slack, Discord, and many more.
- Convertible: Can be converted to HTML, PDF, slides, and other formats.
Basic Syntax
Section titled “Basic Syntax”Headings
Section titled “Headings”# Heading 1
## Heading 2
### Heading 3
#### Heading 4Text Formatting
Section titled “Text Formatting”**bold text**_italic text_~~strikethrough~~`inline code`bold text, italic text, strikethrough, inline code
Links and Images
Section titled “Links and Images”[Link text](https://example.com)- Unordered item 1- Unordered item 2 - Nested item
1. Ordered item 12. Ordered item 2Blockquotes
Section titled “Blockquotes”> This is a blockquote.> It can span multiple lines.This is a blockquote.
Code Blocks
Section titled “Code Blocks”Use triple backticks with an optional language identifier for syntax highlighting:
```javascriptfunction greet(name) { return `Hello, ${name}!`;}```Tables
Section titled “Tables”| Name | Role || :---- | :-------- || Alice | Developer || Bob | Designer || Name | Role |
|---|---|
| Alice | Developer |
| Bob | Designer |
Horizontal Rule
Section titled “Horizontal Rule”---Task Lists (GitHub Flavored)
Section titled “Task Lists (GitHub Flavored)”- [x] Setup project- [x] Create database schema- [ ] Build API endpoints- [ ] Write tests- Setup project
- Create database schema
- Build API endpoints
- Write tests
Markdown Flavors
Section titled “Markdown Flavors”The original Markdown spec was intentionally minimal. Various platforms have extended it:
| Flavor | Used By | Extras |
|---|---|---|
| CommonMark | Standard reference | Unambiguous spec for core syntax. |
| GFM (GitHub Flavored Markdown) | GitHub, many tools | Tables, task lists, strikethrough, autolinks. |
| MDX | React, Astro, Next.js | Embed JSX components inside Markdown. |
README
Section titled “README”A README.md file is the front page of your project. It’s the first thing people see when they visit your repository on GitHub. A good README makes the difference between a project people use and one they skip.
Why Write a README?
Section titled “Why Write a README?”- First Impression: It’s the entry point for anyone discovering your project.
- Documentation: Explains what the project does, how to set it up, and how to use it.
- Onboarding: Helps new team members get started quickly.
- Professionalism: Shows that you care about your work.
README Template
Section titled “README Template”A solid README typically includes these sections:
# Project Name
A brief description of what this project does and who it's for.
## Features
- Feature 1- Feature 2- Feature 3
## Tech Stack
- **Frontend**: React, Tailwind CSS- **Backend**: Node.js, Express- **Database**: PostgreSQL
## Getting Started
### Prerequisites
- Node.js 20+- PostgreSQL 16+
### Installation
1. Clone the repo: ```bash git clone https://github.com/username/project.git cd project ```-
Install dependencies:
Terminal window npm install -
Set up environment variables:
Terminal window cp .env.example .env# Edit .env with your values -
Start the development server:
Terminal window npm run dev
Describe how to use the project or link to documentation.
Contributing
Section titled “Contributing”- Fork the repo
- Create a feature branch (
git checkout -b feature/amazing) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing) - Open a Pull Request
License
Section titled “License”Distributed under the MIT License. See LICENSE for more information.
### Tips for a Great README
- **Be concise**: Get to the point quickly. People scan, not read.- **Add screenshots or GIFs**: A visual is worth a thousand words for UI projects.- **Keep it updated**: An outdated README is worse than no README.- **Include badges**: Show build status, test coverage, or version at the top.- **Link to docs**: If your project has extensive documentation, link to it rather than putting everything in the README.
### README Badges
Badges are small status indicators commonly placed at the top of a README:
```markdownGenerate badges at shields.io.
Helpful Tools
Section titled “Helpful Tools”| Tool | Description |
|---|---|
| readme.so | Visual README editor with drag-and-drop sections. |
| Markdown Guide | Comprehensive reference for Markdown syntax. |
| Dillinger | Online Markdown editor with live preview. |
| VS Code built-in preview | Open any .md file and press Ctrl+Shift+V (or Cmd+Shift+V). |