ReadMeGenerator 1.0.0
dotnet add package ReadMeGenerator --version 1.0.0
NuGet\Install-Package ReadMeGenerator -Version 1.0.0
<PackageReference Include="ReadMeGenerator" Version="1.0.0" />
paket add ReadMeGenerator --version 1.0.0
#r "nuget: ReadMeGenerator, 1.0.0"
// Install ReadMeGenerator as a Cake Addin #addin nuget:?package=ReadMeGenerator&version=1.0.0 // Install ReadMeGenerator as a Cake Tool #tool nuget:?package=ReadMeGenerator&version=1.0.0
ReadMe Generator
One of the greatest hassle for developers is writing readme's and documentation. We all really just want to design and build awesome applications.
ReadMe-Generator is a library that will automatically generate a detailed and well-formatted readme file for you. Focus on writing the code, let ReadMe-Generator help you out with the documentation.
Author
Badges
What ReadME Sections Get Generated?
- Project title and description
- Author's name and url to author's portfolio or social media page
- Tech Stack
- Code Documentation
- RoadMap
Tech Stack
C#, .NetStandard2.1
How Do I Get Started
First, install NuGet. Then, install ReadMeGenerator from the package manager console:
NuGet\Install-Package ReadMeGenerator -Version 1.0.0
Or from the .NET CLI as:
dotnet add package ReadMeGenerator --version 1.0.0
Finally, import into the file where you want to use it:
using ReadMeGenerator;
Doc Reference
Tip: Using the readme generator works with some assembly attributes. For a cleaner code, you can optionally create a readme.cs
file where you will store assembly based attributes.
Table of Content
- The Project Attribute : Add Basic Project Details to ReadME
- The Method Attribute : Add Method Documentation to ReadME
- The Environment Variable Attribute: Add Environment Variables to ReadME
- The TechStack Attribute : Add TechStack to ReadME
- The RoadMap Attribute : Add RoadMap to ReadME
- Generate Read Me : Generate README File
The Project
Attribute: Add Basic Project Details to ReadME
The assembly-level project attribute allows you to add:
- Project Description
- Project title
- Author name
- Author portfolio URL
- How to deploy directive
How to use
Add this to the top level of either your program.cs
or a dedicated readme.cs
file:
[assembly: Project
(
Description = "Automatically generate ReadMEs",
AuthorProfileUrl = "https://www.linkedin.com/in/ogubuike-alex/",
AuthorName = "Ogubuike Alex",
ProjectName = "ReadMeGenerator",
Deploy = "npm run deploy"
)
]
Do not forget to change the details to match yours though😅
Parameter | Description | Is A Required Parameter |
---|---|---|
Description |
In few words tell us what your awesome project is about | Yes |
AuthorProfileUrl |
This can be a link to your portfolio, github url or social medai page | No |
AuthorName |
This is where you drop your legendary name | No |
ProjectName |
This is the name of your project | Yes |
Deploy |
Optional command for deploying your project | No |
The Method
Attribute: Add Method Documentation to ReadME
This is a method-level attribute that allows you add:
- Method Description
- Input parameters
- Return Type
- How-to-use sample code
How to use
Add this on top of the method to be documented:
- Method with two input strings
[Method(
output: typeof(Task<string>),
input: new Type[] {typeof(int), typeof(string)},
Description ="Get student name",
Example = "var result = await GetStudentName(1, "BASIC-ONE");")
]
public string GetStudentName(int id, string classCode)
{
//method body
}
Do not forget to change the details to match yours though😅
Parameter | Description | Is a required parameter? |
---|---|---|
Description |
What does the method do | No |
Example |
String that shows how to use your method | No |
output |
This is the your return type | Yes |
input |
An array of input parameter types | Yes |
The EnvironmentVariable
attribute: Add Environment Variables to ReadME
The assembly-level environment attribute allows you to add environment variables that you want to appear in your readme document
How to use
Add this to the top level of either your program.cs
or a dedicated readme.cs
file:
//declare like this
[assembly: EnvironmentVariable(Key : "Stuff", Value : "StuffValue")]
//or like this
[assembly: EnvironmentVariable("Two", "Number")]
Do not forget to change the details to match yours though😅
Parameter | Description | Is a required parameter? |
---|---|---|
Key |
Environment Variable Key | Yes |
Value |
Environment Variable Value | Yes |
The TechStack
attribute: Add TechStack to ReadME
The assembly-level tech stack attribute allows you to add the tech stack for your awesome project
How to use
Add this to the top level of either your program.cs
or a dedicated readme.cs
file:
[assembly: TechStack(".Net6.0", ".NetStandard2.1")]
Parameter | Description | Is a required parameter? |
---|---|---|
input | A comma-separated list of all the awesome tech you used | Yes |
The RoadMap
attribute: Add RoadMap to ReadME
The assembly-level road map attribute allows you to add the road map for your project.
Do you have awesome features or updates you wanna include in the project? Add it all here!
How to use
Add this to the top level of either your program.cs
or a dedicated readme.cs
file:
[assembly: RoadMap("Add AI to the spice", "Add end-to-end test")]
Parameter | Description | Is a required parameter? |
---|---|---|
input | A comma-separated list of upcoming plans | Yes |
Generate Read Me: Generate README File
In your program.cs
file.
- First import the library:
using ReadMeGenerator;
Next, get the assembly that contains the code you want to document and then pass your assembly as a parameter to the
GenerateReadMe()
methodExample:
var assembly = Assembly.GetAssembly(typeof(readme.cs));
GenerateReadMe(assembly);
- Run code to generate the readme file
- You can find the generated readme document in
..\bin\Debug\net7.0\ReadMe.Md
of the current project.
Roadmap
- Project-Type Based Generation
- Change generated text location
- Section Customization
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 231 | 2/21/2023 |