Package: mdfy
mdfyTransform text into beautiful markdown, effortlessly.🌟 FeaturesSimplicity: Just a few lines of code and voila! An intuitive architecture made simple.Modulability: Each module is highly independent, making it easy to use on its own.Customizable: Extensible design allowing for easy customization.Highly Tested: Robust unit tests ensure reliability.🚀 Getting StartedInstallationpipinstallmdfyUsageHere's a quick start guide to get you up and running!frommdfyimportMdfier,MdText,MdHeader,MdTablecontents=[MdHeader("Hello, MDFY!"),MdText("[Life:bold] is [like:italic] a bicycle."),MdTable(["head1":"content","head2":"content"])]Mdfier("markdown.md").write(contents)# or use a with statement to write iterativelywithMdfier("markdown.md")asmd:forcontentincontents:md.write(MdText(text))# => markdown.md## # Hello, MDFY!# **Life** is *like* a bicycle.Each mdfy element is string-convertible and can operate independently!frommdfyimportMdText,MdHeader,MdTableprint(MdHeader("Hello, MDFY!"))print(MdText("[Life:bold] is [like:italic] a bicycle."))print(MdTable(["head1":"content","head2":"content"]))# => result## # Hello, MDFY!# **Life** is *like* a bicycle.# | head1 | head2 |# | --- | --- |# | content | content |MdText FormatWith MdText, you can flexibly specify text styles in a way similar to python's string formatting.MdText("[a family:quote] of [plain-text formatting syntaxes:bold] that optionally can be [converted to [formal:italic] [markup languages:bold]:not] such as [HTML:strong]")a familyofplain-text formatting syntaxesthat optionally can beconverted toformalmarkup languagessuch asHTMLSeeMdText documentfor detailsMdTableMdTable offers a flexible way to convert a Python dict to a Markdown table.data=[{"precision":0.845,"Recall":0.662},{"precision":0.637,"Recall":0.802},{"precision":0.710,"Recall":0.680},]print(MdTable(data))# The result will be# | precision | Recall |# | --- | --- |# | 0.845 | 0.662 |# | 0.637 | 0.802 |# | 0.71 | 0.68 |To transpose a table, all you need to do is pass True to the transpose parameter.print(MdTable(data,transpose=True))# | Key | Value 0 | Value 1 | Value 2 |# | --- | --- | --- | --- |# | precision | 0.845 | 0.637 | 0.71 |# | Recall | 0.662 | 0.802 | 0.68 |# And you can specify header labels when transposelabels=["Metrics","Model 1","Model 2","Model 3"]print(MdTable(data,transpose=True,labels=labels))# | Metrics | Model 1 | Model 2 | Model 3 |# | --- | --- | --- | --- |# | precision | 0.845 | 0.637 | 0.71 |# | Recall | 0.662 | 0.802 | 0.68 |You can also specify the precision of float values.data=[{"precision":0.84544,"Recall":0.662765},{"precision":0.63743,"Recall":0.802697},{"precision":0.718203,"Recall":0.6802435},]labels=["Metrics","Model 1","Model 2","Model 3"]print(MdTable(data,transpose=True,labels=labels,precision=3))# | Metrics | Model 1 | Model 2 | Model 3 |# | --- | --- | --- | --- |# | precision | 0.845 | 0.637 | 0.718 |# | Recall | 0.663 | 0.803 | 0.680 |SeeMdTable documentfor details📖 DocumentationCheck out ourfull documentationfor detailed guides and API references.✅ TestingTo run the tests:python-mpytest💡 ContributingWe welcome contributions!📜 LicenseThis project is licensed under the MIT License. See theLICENSEfile for details.