# How to create calendar terminal app in .net core

### Intro:-

Calendars are used to display calendar data on the terminal. Spectre.Console is a .NET library which is used to create console applications. Spectre.Console is rendering the calendar on the terminal.

### Steps:-

with few commands and also a few lines of code, you can display a high visual calendar on the terminal. The steps are given below.

### Create Project

`>dotnet new console -o cliapp`

### Install Nuget Package

`>dotnet add package Spectre.Console`

### Create object

`var rule = new Rule("[red]Calendar CLI App [/]");`

### Add some styling code

`calendar.BorderStyle(Style.Parse("Magenta3"));` 

### Calendar Events   
You can add an event to the calendar. If a date has an event associated with it, the date gets highlighted in the calendar.   
`calendar.AddCalendarEvent(2023, 2, 5);`    
### api docs 
`Calendar AddCalendarEvent(int, int, int)`   
which is year, month  and date respectively.

### Render on console

`AnsiConsole.Write(calendar);`    



![](https://cdn.hashnode.com/res/hashnode/image/upload/v1675462042461/b7a08861-64d7-4123-939c-f1b1c01fffa4.png align="center")

### Conclusion:-

To render a calendar, create a calendar object, and add some styling code according to the app's requirement. Complete the app by passing the calendar to a console's `Write` method.  
The full source code is on GitHub.
