maykin-common


Namemaykin-common JSON
Version 0.6.0 PyPI version JSON
download
home_pageNone
SummaryRe-usable utilities for Maykin Django projects, centrally maintained instead of in default-project.
upload_time2025-07-10 11:36:58
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseNone
keywords django maykin boilerplate
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Shared Django utilities
=======================

:Version: 0.6.0

|build-status| |code-quality| |ruff| |coverage| |docs|

|python-versions| |django-versions| |pypi-version|


Re-usable utilities for Maykin Django projects.

Maykin's Django projects all share a common base: `default-project`_ to provide a
consistent and recognizable structure accross projects. This library bundles some shared
utilities that are common in (most) projects but are too small/specific to warrant a
separate library.

maykin-common acts as a vehicle to quickly propagate changes and useful helpers to a
large number of projects that would otherwise all have to be updated manually and
one-by-one, a labour-intensive task.

**What's up with the name?**

A similar utility for the client side exists: https://github.com/maykinmedia/client-common
so we wanted to mimick this naming pattern. The NPM package has namespacing:
``@maykinmedia/client-common``, but this doesn't exist on PyPI, while using
``django-common`` as a PyPI package name *might* just be a bit arrogant.

So, the repository ``maykinmedia/django-common`` perfectly covers the contents and
purpose of the package, while the PyPI package keeps the imports short and focused:
``maykin_common``, while leaving room for potential future non-Django packages.

.. contents::

.. section-numbering::

Installation and usage
======================

See the documentation: https://maykin-django-common.readthedocs.io/en/latest/

Local development
=================

To install and develop the library locally, use:

.. code-block:: bash

    pip install -e .[tests,docs,release,pdf,mfa,axes,vcr]

When running management commands via ``django-admin``, make sure to add the root
directory to the python path (or use ``python -m django <command>``):

.. code-block:: bash

    export PYTHONPATH=. DJANGO_SETTINGS_MODULE=testapp.settings
    django-admin check
    # or other commands like:
    # django-admin makemessages -l nl

Run the tests with:

.. code-block:: bash

    tox

.. |build-status| image:: https://github.com/maykinmedia/django-common/workflows/Run%20CI/badge.svg
    :alt: Build status
    :target: https://github.com/maykinmedia/django-common/actions?query=workflow%3A%22Run+CI%22

.. |code-quality| image:: https://github.com/maykinmedia/django-common/workflows/Code%20quality%20checks/badge.svg
     :alt: Code quality checks
     :target: https://github.com/maykinmedia/django-common/actions?query=workflow%3A%22Code+quality+checks%22

.. |ruff| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
    :target: https://github.com/astral-sh/ruff
    :alt: Ruff

.. |coverage| image:: https://codecov.io/gh/maykinmedia/django-common/branch/main/graph/badge.svg
    :target: https://codecov.io/gh/maykinmedia/django-common
    :alt: Coverage status

.. |docs| image:: https://readthedocs.org/projects/maykin-django-common/badge/?version=latest
    :target: https://maykin-django-common.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

.. |python-versions| image:: https://img.shields.io/pypi/pyversions/maykin-common.svg

.. |django-versions| image:: https://img.shields.io/pypi/djversions/maykin-common.svg

.. |pypi-version| image:: https://img.shields.io/pypi/v/maykin-common.svg
    :target: https://pypi.org/project/maykin-common/

.. _default-project: https://bitbucket.org/maykinmedia/default-project

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "maykin-common",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "django, maykin, boilerplate",
    "author": null,
    "author_email": "Maykin Media <support@maykinmedia.nl>",
    "download_url": "https://files.pythonhosted.org/packages/3f/06/6b1c6e79d971e42bea6a00bffab65f6f946a883e6cf99a80def0e5474029/maykin_common-0.6.0.tar.gz",
    "platform": null,
    "description": "Shared Django utilities\n=======================\n\n:Version: 0.6.0\n\n|build-status| |code-quality| |ruff| |coverage| |docs|\n\n|python-versions| |django-versions| |pypi-version|\n\n\nRe-usable utilities for Maykin Django projects.\n\nMaykin's Django projects all share a common base: `default-project`_ to provide a\nconsistent and recognizable structure accross projects. This library bundles some shared\nutilities that are common in (most) projects but are too small/specific to warrant a\nseparate library.\n\nmaykin-common acts as a vehicle to quickly propagate changes and useful helpers to a\nlarge number of projects that would otherwise all have to be updated manually and\none-by-one, a labour-intensive task.\n\n**What's up with the name?**\n\nA similar utility for the client side exists: https://github.com/maykinmedia/client-common\nso we wanted to mimick this naming pattern. The NPM package has namespacing:\n``@maykinmedia/client-common``, but this doesn't exist on PyPI, while using\n``django-common`` as a PyPI package name *might* just be a bit arrogant.\n\nSo, the repository ``maykinmedia/django-common`` perfectly covers the contents and\npurpose of the package, while the PyPI package keeps the imports short and focused:\n``maykin_common``, while leaving room for potential future non-Django packages.\n\n.. contents::\n\n.. section-numbering::\n\nInstallation and usage\n======================\n\nSee the documentation: https://maykin-django-common.readthedocs.io/en/latest/\n\nLocal development\n=================\n\nTo install and develop the library locally, use:\n\n.. code-block:: bash\n\n    pip install -e .[tests,docs,release,pdf,mfa,axes,vcr]\n\nWhen running management commands via ``django-admin``, make sure to add the root\ndirectory to the python path (or use ``python -m django <command>``):\n\n.. code-block:: bash\n\n    export PYTHONPATH=. DJANGO_SETTINGS_MODULE=testapp.settings\n    django-admin check\n    # or other commands like:\n    # django-admin makemessages -l nl\n\nRun the tests with:\n\n.. code-block:: bash\n\n    tox\n\n.. |build-status| image:: https://github.com/maykinmedia/django-common/workflows/Run%20CI/badge.svg\n    :alt: Build status\n    :target: https://github.com/maykinmedia/django-common/actions?query=workflow%3A%22Run+CI%22\n\n.. |code-quality| image:: https://github.com/maykinmedia/django-common/workflows/Code%20quality%20checks/badge.svg\n     :alt: Code quality checks\n     :target: https://github.com/maykinmedia/django-common/actions?query=workflow%3A%22Code+quality+checks%22\n\n.. |ruff| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json\n    :target: https://github.com/astral-sh/ruff\n    :alt: Ruff\n\n.. |coverage| image:: https://codecov.io/gh/maykinmedia/django-common/branch/main/graph/badge.svg\n    :target: https://codecov.io/gh/maykinmedia/django-common\n    :alt: Coverage status\n\n.. |docs| image:: https://readthedocs.org/projects/maykin-django-common/badge/?version=latest\n    :target: https://maykin-django-common.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n\n.. |python-versions| image:: https://img.shields.io/pypi/pyversions/maykin-common.svg\n\n.. |django-versions| image:: https://img.shields.io/pypi/djversions/maykin-common.svg\n\n.. |pypi-version| image:: https://img.shields.io/pypi/v/maykin-common.svg\n    :target: https://pypi.org/project/maykin-common/\n\n.. _default-project: https://bitbucket.org/maykinmedia/default-project\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Re-usable utilities for Maykin Django projects, centrally maintained instead of in default-project.",
    "version": "0.6.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/maykinmedia/django-common/issues",
        "Documentation": "http://maykin-django-common.readthedocs.io/en/latest/",
        "Homepage": "https://github.com/maykinmedia/django-common",
        "Source Code": "https://github.com/maykinmedia/django-common"
    },
    "split_keywords": [
        "django",
        " maykin",
        " boilerplate"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "254c08d690c7e3450dc74c9f916ce620510a7a4d165b10afa6afcb33dd76a5bf",
                "md5": "11ea7b48547d5ed858d107e6970f6657",
                "sha256": "0ffa0e0d4cdc17ebd69157f4330a37fd7685ba4bac1d595cd307e4537d27d7b4"
            },
            "downloads": -1,
            "filename": "maykin_common-0.6.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "11ea7b48547d5ed858d107e6970f6657",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 24677,
            "upload_time": "2025-07-10T11:36:57",
            "upload_time_iso_8601": "2025-07-10T11:36:57.143309Z",
            "url": "https://files.pythonhosted.org/packages/25/4c/08d690c7e3450dc74c9f916ce620510a7a4d165b10afa6afcb33dd76a5bf/maykin_common-0.6.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3f066b1c6e79d971e42bea6a00bffab65f6f946a883e6cf99a80def0e5474029",
                "md5": "c549ec62b63486bc2db88a3e20be59ee",
                "sha256": "7b85b4803cbf2110840fe45871e20d6e25b14b1c147293d31ef008726358d6b4"
            },
            "downloads": -1,
            "filename": "maykin_common-0.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c549ec62b63486bc2db88a3e20be59ee",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 22839,
            "upload_time": "2025-07-10T11:36:58",
            "upload_time_iso_8601": "2025-07-10T11:36:58.328326Z",
            "url": "https://files.pythonhosted.org/packages/3f/06/6b1c6e79d971e42bea6a00bffab65f6f946a883e6cf99a80def0e5474029/maykin_common-0.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-10 11:36:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "maykinmedia",
    "github_project": "django-common",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "maykin-common"
}
        
Elapsed time: 1.59362s