Open In App

What is README.md File?

A README file is an essential guide that gives other developers a detailed description of your GitHub project.

You may be wondering, Why anyone should spend time writing a README file. Well, here are some reasons to help convince you that it’s a good idea:



  1. A good README helps your project to stand out from other projects and should be as good as your project itself.
  2. It’s the first thing to notice while encountering your project, so it should be pretty brief but detailed.
  3. The quality of a README description differentiates a good project from bad ones.
  4. Many times README.md is hosted as a website; make sure your webpage looks as cool as your project!

Contents of Readme File:

The following are the general key components of a Readme file:



You can also add the following details in the Readme file:

  1. What was your motivation? Why did you build this project?
  2. What problem does the project solve? Or, what it does?
  3. Why you used specific technologies? If your project has a lot of many features, list them here.
  4. Mention some of the challenges you faced and features you hope to implement in the future.
  5. Mention anything that you think you are proud of building or having in that project
  6. What did you learn in the process?
  7. What’s next for the project?
  8. Mention languages, frameworks, databases, etc.
  9. Provide deploy links or any other required links

Before diving deep into our project’s readme, let’s discuss markdown language.

Markdown

  1. readme files
  2. Writing messages in online discussion forums
  3. Creating rich text using a plain text editor, emails, and technical documentation.

Why should we use Markdown?

  1. Easier for non-tech writers to produce documentation that can be both collaborative and flexible.
  2. Easy to pick up – It has a base of email formatting conventions that most of us are exposed to already.
  3. Easily readable (in its raw state), unlike HTML, which is full of tags.
  4. Platform-independent – which means you can create Markdown files in any text editor.
  5. Reusable skill: It’s versatile, and we can use it to take notes, create content for a website, or produce print-ready documents.

Now, let’s discuss elements of markdown language.

1. Headings:

Syntax:

# Heading level 1
## Heading level 2
### Heading level 3
#### Heading level 4
##### Heading level 5
###### Heading level 6

Formatted text:

2. Paragraphs:

Syntax:

Paragraph 1
Paragraph 2

3. Line breaks:

Syntax:

Line 1  
Line 2

4. Italics:

Example:

*one star on each side*
_This text is also italic_

Formatted text:

one star on each side
This text is also italic

5. Bold:

Example:

**two stars on each side**
__This text is also bold__

Formatted text:

two stars on each side
This text is also bold

6. Simultaneously Bold and Italic:

Example:

***This text is italic and bold.***
___This text is also italic and bold.___

Formatted text:

This text is italic and bold.
This text is also italic and bold.

7. Striking through:

Example:

~~strikethrough~~

Formatted text:

8. Links:

Example:

[This text links to gfg](https://write.geeksforgeeks.org/).

Formatted text:

This text links to gfg

9. Images:

Example:

![image](https://media.geeksforgeeks.org/wp-content/cdn-uploads/20210914130327/100-Days-of-Code-with-GFG-Get-Committed-to-a-Challenge.png)

Formatted image:

10. Unordered lists:

Syntax:

-Just add a dash first and then write a text.

-If you add another dash in the following line, you will have another item in the list.
    - If you add four spaces or use a tab key, you will create an indented list.
        - If you need sert an indenta list within an intended one, just press a tab key again.

Sometimes you want bullet points:

*Start a line with a star 
*Profit!

Output:

11. Ordered lists:

Example:

1. Just type a number follow by a dot.
2. If you want to add a second item, just type in another number followed by a dot.
1. If you make a mistake when typing numbers, fear not, Markdown will correct for you. 
    1. If you press a tab key or type four spaces, you will get an indented list and the numbering will start from scratch.
        1. If you want to insert an indented numbered list within an existing indented numbered one, just press the tab key again. 
            -If need be, you can also add an indented unordered list within an indented numbered one, by pressing a tab key and typing adash.

Formatted text:

12. Blockquotes:

Example:

> This is a blockquote
> This is a blockquote
> This is a blockquote

Formatted text:

13. Horizontal rules:

Example:

---
* * *
___

Formatted text:

14. Code snippets:

Example:

`This is a code snippet.`

Formatted text:

15. Code blocks:

Example:

```javascript

if (isAwesome){

 return true

}

```

Formatted text:

16. Escaping:

Syntax:

\ backslash
` backtick
* asterisk
_ underscore
{} curly braces
[] square brackets
() parentheses
# hash symbol
+ plus sign
– minus sign (hyphen)
. dot
! exclamation mark

Formatted text:

17. Lists within a blockquote:

Example:

> This is a blockquote
> * This is a list item within a blockquote
> * This is a list item within a blockquote
> * This is a list item within a blockquote

Formatted text:

18. Quotes:

Example:

> "I make Jessica Simpson look like a rock scientist."

> —Tara Reid, actress

Formatted text:

Since we are discussing readme.md, which is present in GitHub repositories, let’s discuss GitHub Flavored Markdown!

GitHub Flavored Markdown

1. Syntax highlighting:

Example:

Formatted code:

2. Task Lists:

Example:

- [x] @mentions, #refs, [links](), **formatting**, and <del>tags</del> supported
- [x] list syntax required (any unordered or ordered list supported) 
- [x] this is a complete item 
- [ ] this is an incomplete item 

Formatted text:

3. Tables:

Example:

First Header | Second Header 
 ------------ | ------------- 
Content from cell 1 | Content from cell 2 
Content in the first column | content in the second column 

Formatted text:

4.  Username @mentions:

5. Automatic linking for URLs :

6. Mathematical expressions :

Syntax:

$$<<mathematical expression>>$$

Example:

$$\sqrt{3}+1$$

Output:

√3+1

Since now you know everything about readme.md, the next time you make a repository don’t forget to add a perfect readme to your project!


Article Tags :