Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

blmarkdown

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

blmarkdown

Bear Au Jus Learning Markdown (blmarkdown) is a tool used to help you documenting your learning history in rich and flavored markdown.

  • 2.3
  • PyPI
  • Socket score

Maintainers
1

BLMARKDOWN

Bear Au Jus Learning Markdown (blmarkdown) is a tool used to help you documenting your learning history in rich and flavored markdown.

  • Github Directory https://github.com/bearaujus/blmarkdown
  • PyPI https://pypi.org/project/blmarkdown/

Latest Changelog

Release Date : 09/09/2021 v2.3

  • Bug Fixes

Installation

Get latest version of blmarkdown

pip install blmarkdown

How To Use

There is 2 main class is needed to import from blmarkdown

from blmarkdown import Learning, LearningData

Let's create our new learning variable

learning_subject = 'Python Fundamental'
author = 'Haryo Bagas Assyafah'

learning = Learning(learning_subject, author)

Now let's add some data to our learning variable

data = LearningData('Operator')
data.add('Addition')
data.add('Subtraction')
data.add('Multiplication')
data.add('Division')

learning.add(data)
data = LearningData('Control Structure', 'https://github.com/yourLink2')
data.add('Loop', ['For', 'While', 'Do While', 'For Each'])
data.add('Branching', ['If', 'Else If', 'Else'])

learning.add(data)

Let's grab the markdown from learning variable

learning.markdown()

Output

# Learning : Python Fundamental

### Learning 01 - Operator

+ Addition
+ Subtraction
+ Multiplication
+ Division

### Learning 02 - Control Structure
> Shortcut : [Link](https://github.com/yourLink2)

+ Loop
    - For
    - While
    - Do While
    - For Each
+ Branching
    - If
    - Else If
    - Else

**Haryo Bagas Assyafah** @2021 | Generated by [blmarkdown](https://github.com/bearaujus/blmarkdown) v2.3

Congratulations, you just learned how to generate markdown using blmarkdown !

But, those are just some of our features we had. You can look at List Function we had, or some example we just documented here. Happy Reading ! :D

Examples

List Function

A. Class Learning

  • A.1. Constructor
def __init__(self, learning_subject_title, credit_name, footer_data=dict()):
        self.learning_subject_title = learning_subject_title
        self.credit_name = credit_name
        self.footer_data = footer_data
        self.data = list()

Return Type : None

  • A.2. Add LearningData
def add(self, child):
        if isinstance(child, str):
            self.data.append(LearningData(child))
        elif isinstance(child, list):
            tmp = list()
            for data in child:
                if isinstance(data, LearningData):
                    tmp.append(data)
                elif isinstance(data, str):
                    tmp.append(LearningData(data))
                else:
                    raise Exception(
                        "data inside a list must an instance of 'LearningData' or 'str'")
            self.data = self.data + tmp
        elif isinstance(child, LearningData):
            self.data.append(child)
        else:
            raise Exception(
                "'child' must an instance of 'LearningData' or 'str' or 'list'")

Return Type : None

  • A.3. Preview Generated Markdown
# this function will open a new tab in your default browser for viewing the generated markdown
    def preview(self, keep_file_on_complete=False, file_name=''):
        Utill.compile_viewer(self.__generate(), keep_file_on_complete, file_name)

Return Type : None

  • A.4. Save Generated Markdown
def save_markdown(self, file_name=''):
        return Utill.save_markdown(self.__generate(), file_name)

Return Type : String

  • A.5. Get Markdown as Raw String
def get_markdown(self):
        return self.__generate()

Return Type : String

  • A.6. Print Generated Markdown
def markdown(self):
        print(self.__generate())

Return Type : None

  • A.7. Get Added Learning Data by Index
def get_child(self, index):
        return self.data[index]

Return Type : LearningData

  • A.8. Get All Index Data Inside Learning
def index(self):
        if not self.data:
            return {}
        else:
            return {idx: learning_data.title for idx, learning_data in enumerate(self.data)}

Return Type : Dict

B. Class LearningData

  • B.1. Constructor
def __init__(self, title, link=''):
        self.title = title
        self.link = link
        self.learning_data = dict()

Return Type : None

  • B.2. Add Subject
def add(self, subject, subject_data=list()):
        if not isinstance(subject, str):
            raise Exception(
                "'subject' must an instance of class 'string'. Example : Loop")
        elif not isinstance(subject_data, list):
            raise Exception(
                "'subject_data' must an instance of class 'list'. Example : ['For', 'While', 'For Each']")
        else:
            self.learning_data[subject] = subject_data

Return Type : None

  • B.3. Preview Generated Markdown
def preview(self, keep_file_on_complete=False, file_name=''):
        Utill.compile_viewer(self.__generate(),
                             keep_file_on_complete, file_name)

Return Type : None

  • B.4. Save Generated Markdown
def save_markdown(self, file_name=''):
        return Utill.save_markdown(self.__generate(), file_name)

Return Type : String

  • B.5. Get Markdown as Raw String
def get_markdown(self):
        return self.__generate()

Return Type : String

  • B.6. Print Generated Markdown
def markdown(self):
        print(self.__generate())

Return Type : None

Donation

Want bought us some coffee ? :D

  • Bitcoin (BTC)
1CCngoXD8sgbLVatc74fg1z54vbRKxTJn8
  • Ethereum (ETH)
0xec5b67e7ccffa41673e74a64d9f64ea72efc91bc

Credit

Bear Au Jus - ジュースとくま @2021

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc