semvec/pypi-packages huggingface dataset:
fundamentals 2.7.8
Some fundamental tools required by most self-respecting python-packages bundled in one place. Very opinionated project setup tools including logging, plain-text settings files and database connections.
License: MIT
Keywords: logging, database

# fundamentals


[![](https://zenodo.org/badge/DOI/10.5281/zenodo.8037509.svg)](https://zenodo.org/doi/10.5281/zenodo.8037509) 

<!-- INFO BADGES -->  

[![](https://img.shields.io/pypi/pyversions/fundamentals)](https://pypi.org/project/fundamentals/)
[![](https://img.shields.io/pypi/v/fundamentals)](https://pypi.org/project/fundamentals/)
[![](https://img.shields.io/conda/vn/conda-forge/fundamentals)](https://anaconda.org/conda-forge/fundamentals)
[![](https://pepy.tech/badge/fundamentals)](https://pepy.tech/project/fundamentals)
[![](https://img.shields.io/github/license/thespacedoctor/fundamentals)](https://github.com/thespacedoctor/fundamentals)

<!-- STATUS BADGES -->  

[![](http://157.245.42.153:8080/buildStatus/icon?job=fundamentals%2Fmaster&subject=build%20master)](http://157.245.42.153:8080/blue/organizations/jenkins/fundamentals/activity?branch=master)
[![](http://157.245.42.153:8080/buildStatus/icon?job=fundamentals%2Fdevelop&subject=build%20dev)](http://157.245.42.153:8080/blue/organizations/jenkins/fundamentals/activity?branch=develop)
[![](https://cdn.jsdelivr.net/gh/thespacedoctor/fundamentals@master/coverage.svg)](https://raw.githack.com/thespacedoctor/fundamentals/master/htmlcov/index.html)
[![](https://readthedocs.org/projects/fundamentals/badge/?version=master)](https://fundamentals.readthedocs.io/en/master/)
[![](https://img.shields.io/github/issues/thespacedoctor/fundamentals/type:%20bug?label=bug%20issues)](https://github.com/thespacedoctor/fundamentals/issues?q=is%3Aissue+is%3Aopen+label%3A%22type%3A+bug%22+)

*Some fundamental tools required by most self-respecting python-packages bundled in one place. Very opinionated project setup tools including logging, plain-text settings files and database connections*.

Documentation for fundamentals is hosted by [Read the Docs](https://fundamentals.readthedocs.io/en/master/) ([development version](https://fundamentals.readthedocs.io/en/develop/) and [master version](https://fundamentals.readthedocs.io/en/master/)). The code lives on [github](https://github.com/thespacedoctor/fundamentals). Please report any issues you find [here](https://github.com/thespacedoctor/fundamentals/issues).

## Features

* 

## How to cite fundamentals

If you use `fundamentals` in your work, please cite using the following BibTeX entry: 

```bibtex
@software{Young_fundamentals,
    author = {Young, David R.},
    doi = {10.5281/zenodo.8037509},
    license = {GPL-3.0-only},
    title = {{fundamentals. Fundamental tools required by most self-respecting python-packages bundled in one place}},
    url = {https://zenodo.org/doi/10.5281/zenodo.8037509}
}
```
slackblocks 1.2.3
Python wrapper for the Slack Blocks API
License: MIT
Requires Python: >=3.8.1
Keywords: slackblocks, slack, messaging, message generation, slack blocks, blocks

# slackblocks <img src="https://github.com/nicklambourne/slackblocks/raw/master/docs_src/img/sb.png" align="right" width="250px"/>

![Licence: MIT](https://img.shields.io/badge/License-MIT-green.svg)
![Licence: BSD-3-Clause](https://img.shields.io/badge/License-BSD_3_Clause-green.svg)
![Python Versions](https://img.shields.io/pypi/pyversions/slackblocks)
[![PyPI](https://img.shields.io/pypi/v/slackblocks?color=yellow&label=PyPI&logo=python&logoColor=white)](https://pypi.org/project/slackblocks/#history)
[![Downloads](https://static.pepy.tech/badge/slackblocks)](https://pepy.tech/project/slackblocks)
[![Build Status](https://github.com/nicklambourne/slackblocks/actions/workflows/unit-tests.yml/badge.svg?branch=master)](https://github.com/nicklambourne/slackblocks/actions)
[![Docs](https://img.shields.io/badge/Docs-8A2BE2.svg)](https://nicklambourne.github.io/slackblocks)

## What is it?
`slackblocks` is a Python API for building messages in the fancy Slack [Block Kit API](https://api.slack.com/block-kit)

## Documentation
Full documentation is provided [here](https://nicklambourne.github.io/slackblocks/latest/).

## Requirements
`slackblocks` requires Python >= 3.8.

As of version 0.1.0 it has no dependencies outside the Python standard library.

## Installation
```bash
pip install slackblocks
```

## Basic Usage
```python
from slackblocks import Message, SectionBlock


block = SectionBlock("Hello, world!")
message = Message(channel="#general", blocks=block)
message.json()

```

Will produce the following JSON string:
```json
{
    "channel": "#general",
    "mrkdwn": true,
    "blocks": [
        {
            "type": "section",
            "block_id": "992ceb6b-9ad4-496b-b8e6-1bd8a632e8b3",
            "text": {
                "type": "mrkdwn",
                "text": "Hello, world!"
            }
        }
    ]
}
```
Which can be sent as payload to the Slack message API HTTP endpoints.

Of more practical use is the ability to unpack the objects directly into 
the [(Legacy) Python Slack Client](https://pypi.org/project/slackclient/) in order to send messages:

```python
from os import environ
from slack import WebClient
from slackblocks import Message, SectionBlock


client = WebClient(token=environ["SLACK_API_TOKEN"])
block = SectionBlock("Hello, world!")
message = Message(channel="#general", blocks=block)

response = client.chat_postMessage(**message)
```

Or the modern Python [Slack SDK](https://pypi.org/project/slack-sdk/):
```python
from os import environ
from slack_sdk import WebClient
from slackblocks import Message, SectionBlock


client = WebClient(token=environ["SLACK_API_TOKEN"])
block = SectionBlock("Hello, world!")
message = Message(channel="#general", blocks=block)

response = client.chat_postMessage(**message)
```

Note the `**` operator in front of the `message` object.

## Can I use this in my project?
Yes, please do! The code is all open source and dual BSD-3.0 and MIT licensed
    (use what suits you best).