Skip to main content

Sentieoslack

Project description

Sentieoslack

Black

How to run locally

  • To setup locally make sure pyenv, Poetry, and nox are installed
cd <project_directory>
  • To create virtual environment and install development dependencies
make develop
  • Run tests to ensure everything is setup
make test

Project overview

Files and directories

├── .cookiecutter.json                          # Cookiecutter attributes and values
├── .cruft.json                                 # Cruft info, used for updating project
├── .flake8                                     # Flake8 config
├── .gitattributes
├── .gitignore
├── .pre-commit-config.yaml                     # Pre commit hooks
├── .vscode                    ├── settings.json                           # Sample .vscode python setings   └── tasks.json                              # Test runner for VSCode unit test runner
├── Makefile                                    # Makefile to setup, test, and build the project
├── README.md   
├── noxfile.py                                  # Nox config file, defines test sessions
├── poetry.lock
├── pyproject.toml
├── src
│   └── sentieoslack
│       ├── __init__.py
│       └── py.typed                            # Marker file for PEP 561
└── tests                                       # Pytest unit tests
    ├── __init__.py
    └── test_main.py

Makefile Usage

Setup development environment

To install run:

make develop

To uninstall

make delete-env && make cleanup

Codestyle

Automatic formatting uses pyupgrade, isort and black.

To check formatting issues run

make check-format

To auto fix formatting issue

make format
Code security

This command launches Poetry integrity checks as well as identifies security issues with Safety and Bandit.

make check-safety

Type checks

Run mypy static type checker

make check-static-type

Run typeguard run time type checker

make check-run-type

To run both together, run

make check-type

Tests with coverage report

Run pytest

make test

Run nox session to test package in multiple python versions

make test-all

Linting

To run flake8 linting which will report issues

make check-issues

And to check for all linting, and typing, and safety issues

make check

Complexity

To generate code quality metric report using radon run

make code-metrics

Cleanup

Delete pycache files

make pycache-remove

Remove package build

make build-remove

Delete .DS_STORE files

make dsstore-remove

Remove .mypycache

make mypycache-remove

Or to remove all above run:

make cleanup

🎯 What's next

Well, that's up to you 💪🏻. I can only recommend the packages to use

  • Pydantic – data validation and settings management using Python type hinting.
  • Loguru makes logging (stupidly) simple.
  • IceCream is a little library for sweet and creamy debugging.
  • Returns makes you function's output meaningful, typed, and safe!
  • Dynaconf Configuration management for Python
  • FastAPI is a type-driven asynchronous web framework.

And stay up to date by following

Contributing

Contributions are very welcome.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sentieoslack-0.0.1.tar.gz (4.6 kB view hashes)

Uploaded Source

Built Distribution

sentieoslack-0.0.1-py3-none-any.whl (4.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page