Metadata-Version: 2.1
Name: markyp-bootstrap4
Version: 0.1905.3
Summary: Bootstrap4 components built with markyp-html
Home-page: https://github.com/volfpeter/markyp-bootstrap4
Author: Peter Volf
Author-email: do.volfp@gmail.com
License: MIT
Description: # markyp-bootstrap4
        
        Bootstrap 4 higher order components built on [markyp](https://github.com/volfpeter/markyp) and [markyp-html](https://github.com/volfpeter/markyp-html).
        
        ## Installation
        
        The project is listed on the Python Package Index, it can be installed simply by executing `pip install markyp-bootstrap4`.
        
        ## Getting started
        
        If you are not familiar with the basic concepts of `markyp`, please start by having a look at its documentation [here](https://github.com/volfpeter/markyp).
        
        For a demo of the capabilities of `markyp-bootstrap4`, head over to the project's [GitHub Pages](https://volfpeter.github.io/markyp-bootstrap4). The source code of that page was generated by the `demo.py` script that you can find at the root of this repository.
        
        The following example shows how to create a login form using `markyp-bootstrap4`.
        
        ```Python
        from markyp_html import webpage
        from markyp_html.forms import form
        
        from markyp_bootstrap4 import req
        from markyp_bootstrap4.layout import container, one, col, margin, offset
        from markyp_bootstrap4.buttons import b_button
        from markyp_bootstrap4.forms import form_group, form_check, form_check_label, input_, text
        
        def login():
            return form(
                form_group(
                    text.h5("Email"),
                    input_.email(placeholder="Enter your email address")
                ),
                form_group(
                    text.h5("Password"),
                    input_.password(placeholder="Enter your password")
                ),
                form_check(
                    input_.checkbox(),
                    form_check_label("Remember Me"),
                    class_=margin(bottom=2)
                ),
                b_button.primary("Sign In", type="submit")
            )
        
        page = webpage(
            container(
                one(
                    login(),
                    md=6,
                    class_=offset(md=3)
                )
            ),
            page_title="markyp-bootstrap4 example",
            head_elements=[
                req.bootstrap_css,
                *req.all_js
            ]
        )
        
        print(page)
        ```
        
        Here is a list of things to notice in the example:
        
        - Bootstrap 4's requirements can be import with `from markyp_bootstrap4 import req`, and the required CSS and JavaScript imports should be added to the `head_elements` of the webpage.
        - The `layout` module contains the components you can use to define the layout of the webpage.
        - `markyp_bootstrap4` components are grouped the same way as components in Bootstrap 4's documentation. The only difference is here every module name is in plural form.
        
        ## Community guidelines
        
        In general, please treat each other with respect and follow the below guidelines to interact with the project:
        
        - _Questions, feedback_: Open an issue with a `[Question] <issue-title>` title.
        - _Bug reports_: Open an issue with a `[Bug] <issue-title>` title, an adequate description of the bug, and a code snippet that reproduces the issue if possible.
        - _Feature requests and ideas_: Open an issue with an `[Enhancement] <issue-title>` title and a clear description of the enhancement proposal.
        
        ## Contribution guidelines
        
        Every form of contribution is welcome, including documentation improvements, tests, bug fixes, and feature implementations.
        
        Please follow these guidelines to contribute to the project:
        
        - Make sure your changes match the documentation and coding style of the project, including [PEP 484](https://www.python.org/dev/peps/pep-0484/) type annotations.
        - `mypy` is used to type-check the codebase, submitted code should not produce typing errors. See [this page](http://mypy-lang.org/) for more information on `mypy`.
        - _Small_ fixes can be submitted simply by creating a pull request.
        - Non-trivial changes should have an associated [issue](#community-guidelines) in the issue tracker that commits must reference (typically by adding `#refs <issue-id>` to the end of commit messages).
        - Please write [tests](#testing) for the changes you make (if applicable).
        
        If you have any questions about contributing to the project, please contact the project owner.
        
        As mentioned in the [contribution guidelines](#contribution-guidelines), the project is type-checked using `mypy`, so first of all, the project must pass `mypy`'s static code analysis.
        
        The project is tested using `pytest`. The chosen test layout is that tests are outside the application code, see [this page](https://docs.pytest.org/en/latest/goodpractices.html#tests-outside-application-code) for details on what it means in practice.
        
        If `pytest` is installed, the test set can be executed using the `pytest test` command from within the project directory.
        
        If `pytest-cov` is also installed, a test coverage report can be generated by executing `pytest test --cov markyp_bootstrap4` from the root directory of the project.
        
        ## License - MIT
        
        The library is open-sourced under the conditions of the MIT [license](https://choosealicense.com/licenses/mit/).
        
Keywords: bootstrap html markup generator utility
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Markup :: HTML
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Requires-Python: >=3.6
Description-Content-Type: text/markdown
