<div align="center">
<br><img src="https://github.com/ThiagoPanini/gluesnake/blob/feature/repo-first-organization/docs/assets/imgs/header-readme.png?raw=true" alt="gluesnake-logo">
</div>
<div align="center">
<br>
[![PyPI](https://img.shields.io/pypi/v/gluesnake?color=purple)](https://pypi.org/project/gluesnake/)
![PyPI - Downloads](https://img.shields.io/pypi/dm/gluesnake?color=purple)
![PyPI - Status](https://img.shields.io/pypi/status/gluesnake?color=purple)
![GitHub commit activity](https://img.shields.io/github/commit-activity/m/ThiagoPanini/gluesnake?color=purple)
![GitHub Last Commit](https://img.shields.io/github/last-commit/ThiagoPanini/gluesnake?color=purple)
<br>
![CI workflow](https://img.shields.io/github/actions/workflow/status/ThiagoPanini/gluesnake/ci-main.yml?label=ci)
[![Documentation Status](https://readthedocs.org/projects/gluesnake/badge/?version=latest)](https://gluesnake.readthedocs.io/pt/latest/?badge=latest)
[![codecov](https://codecov.io/gh/ThiagoPanini/gluesnake/branch/main/graph/badge.svg?token=zSdFO9jkD8)](https://codecov.io/gh/ThiagoPanini/gluesnake)
</div>
## Table of content
- [Table of content](#table-of-content)
- [O que é a biblioteca gluesnake?](#o-que-é-a-biblioteca-gluesnake)
- [Funcionalidades](#funcionalidades)
- [Contatos](#contatos)
- [Referências](#referências)
## O que é a biblioteca gluesnake?
A biblioteca gluesnake proporciona uma forma fácil, rápida e eficiente para o desenvolvimento de aplicações Spark a serem submetidas como jobs Glue na AWS. Consolidando uma série de funcionalidades envolvendo ambas as ferramentas, gluesnake centraliza classes, métodos e funções codificadas em pyspark que visam simplificar ao máximo a jornada de imersão em jobs Glue.
> **Note**
> Agora a biblioteca *gluesnake* possui uma **documentação oficial** no readthedocs! Acesse o [seguinte link](https://gluesnake.readthedocs.io/pt/latest/) e confira detalhes técnicos de usabilidade, exemplos práticos e muito mais!
## Funcionalidades
- 🤖 Simplificação de construção de aplicações Spark através de classes e métodos já codificados
- 🌟 Consolidação de funcionalidades mais comuns envolvendo processos de ETL em pyspark
- ⚙️ Abstração do todo o processo de *setup* de um *job* Glue através de uma linha de código
- 👁️🗨️ Aprimoramento do *observability* da aplicação através de mensagens detalhadas de log no CloudWatch
- 🛠️ Tratamento de exceções já embutidos nos métodos da biblioteca
___
## Contatos
- [Thiago Panini - LinkedIn](https://www.linkedin.com/in/thiago-panini/)
- [paninitechlab @ hashnode](https://panini.hashnode.dev/)
___
## Referências
**Python**
- [Python - Packaging Python Projects](https://packaging.python.org/en/latest/tutorials/packaging-projects/)
**Docs**
- [Eduardo Mendes - Live de Python 189 - MkDocs](https://www.youtube.com/watch?v=GW6nAJ1NHUQ&t=2s&ab_channel=EduardoMendes)
- [MkDocs](https://www.mkdocs.org/)
- [pmdown-extensions](https://facelessuser.github.io/pymdown-extensions/)
- [GitHub - MkDocs Themes](https://github.com/mkdocs/mkdocs/wiki/MkDocs-Themes)
- [GitHub - Material Theme for MkDocs](https://github.com/squidfunk/mkdocs-material)
- [Material for MkDocs - Setup](https://squidfunk.github.io/mkdocs-material/setup/changing-the-colors/)
**Github**
- [GitHub Actions - pypa/gh-action-pypi-publish](https://github.com/marketplace/actions/pypi-publish)
- [Medium - Major, Minor and Patch](https://medium.com/fiverr-engineering/major-minor-patch-a5298e2e1798)
- [Medium - Automate PyPI Releases with GitHub Actions](https://medium.com/@VersuS_/automate-pypi-releases-with-github-actions-4c5a9cfe947d)
**Tests**
- [Codecov - Setting Threshold](https://github.com/codecov/codecov-action/issues/554#issuecomment-1261250304)
- [Codecov - About the Codecov YAML](https://docs.codecov.com/docs/codecov-yaml)
- [Codecov - Status Checks](https://docs.codecov.com/docs/commit-status)
- [Codecov - codecov.yml Reference](https://docs.codecov.com/docs/codecovyml-reference)
- [Codecov - Ignore Paths](https://docs.codecov.com/docs/ignoring-paths)
Raw data
{
"_id": null,
"home_page": "https://github.com/ThiagoPanini/gluesnake",
"name": "gluesnake",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.0.0",
"maintainer_email": "",
"keywords": "Cloud,AWS,Python,Spark,pyspark",
"author": "Thiago Panini",
"author_email": "panini.development@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/7b/ac/01ecf9ba9a909f5d06edae9ef8ba14ee0abac9c0bc6b2f6f9824df07814b/gluesnake-0.1.1.tar.gz",
"platform": null,
"description": "<div align=\"center\">\n <br><img src=\"https://github.com/ThiagoPanini/gluesnake/blob/feature/repo-first-organization/docs/assets/imgs/header-readme.png?raw=true\" alt=\"gluesnake-logo\">\n</div>\n\n<div align=\"center\"> \n <br>\n \n [![PyPI](https://img.shields.io/pypi/v/gluesnake?color=purple)](https://pypi.org/project/gluesnake/)\n ![PyPI - Downloads](https://img.shields.io/pypi/dm/gluesnake?color=purple)\n ![PyPI - Status](https://img.shields.io/pypi/status/gluesnake?color=purple)\n ![GitHub commit activity](https://img.shields.io/github/commit-activity/m/ThiagoPanini/gluesnake?color=purple)\n ![GitHub Last Commit](https://img.shields.io/github/last-commit/ThiagoPanini/gluesnake?color=purple)\n <br>\n\n ![CI workflow](https://img.shields.io/github/actions/workflow/status/ThiagoPanini/gluesnake/ci-main.yml?label=ci)\n [![Documentation Status](https://readthedocs.org/projects/gluesnake/badge/?version=latest)](https://gluesnake.readthedocs.io/pt/latest/?badge=latest)\n [![codecov](https://codecov.io/gh/ThiagoPanini/gluesnake/branch/main/graph/badge.svg?token=zSdFO9jkD8)](https://codecov.io/gh/ThiagoPanini/gluesnake)\n\n</div>\n\n## Table of content\n\n- [Table of content](#table-of-content)\n- [O que \u00e9 a biblioteca gluesnake?](#o-que-\u00e9-a-biblioteca-gluesnake)\n- [Funcionalidades](#funcionalidades)\n- [Contatos](#contatos)\n- [Refer\u00eancias](#refer\u00eancias)\n\n\n## O que \u00e9 a biblioteca gluesnake?\n\nA biblioteca gluesnake proporciona uma forma f\u00e1cil, r\u00e1pida e eficiente para o desenvolvimento de aplica\u00e7\u00f5es Spark a serem submetidas como jobs Glue na AWS. Consolidando uma s\u00e9rie de funcionalidades envolvendo ambas as ferramentas, gluesnake centraliza classes, m\u00e9todos e fun\u00e7\u00f5es codificadas em pyspark que visam simplificar ao m\u00e1ximo a jornada de imers\u00e3o em jobs Glue.\n\n> **Note**\n> Agora a biblioteca *gluesnake* possui uma **documenta\u00e7\u00e3o oficial** no readthedocs! Acesse o [seguinte link](https://gluesnake.readthedocs.io/pt/latest/) e confira detalhes t\u00e9cnicos de usabilidade, exemplos pr\u00e1ticos e muito mais!\n\n\n## Funcionalidades\n\n- \ud83e\udd16 Simplifica\u00e7\u00e3o de constru\u00e7\u00e3o de aplica\u00e7\u00f5es Spark atrav\u00e9s de classes e m\u00e9todos j\u00e1 codificados\n- \ud83c\udf1f Consolida\u00e7\u00e3o de funcionalidades mais comuns envolvendo processos de ETL em pyspark\n- \u2699\ufe0f Abstra\u00e7\u00e3o do todo o processo de *setup* de um *job* Glue atrav\u00e9s de uma linha de c\u00f3digo\n- \ud83d\udc41\ufe0f\u200d\ud83d\udde8\ufe0f Aprimoramento do *observability* da aplica\u00e7\u00e3o atrav\u00e9s de mensagens detalhadas de log no CloudWatch\n- \ud83d\udee0\ufe0f Tratamento de exce\u00e7\u00f5es j\u00e1 embutidos nos m\u00e9todos da biblioteca\n\n___\n\n## Contatos\n\n- [Thiago Panini - LinkedIn](https://www.linkedin.com/in/thiago-panini/)\n- [paninitechlab @ hashnode](https://panini.hashnode.dev/)\n\n___\n\n## Refer\u00eancias\n\n**Python**\n\n- [Python - Packaging Python Projects](https://packaging.python.org/en/latest/tutorials/packaging-projects/)\n\n**Docs**\n\n- [Eduardo Mendes - Live de Python 189 - MkDocs](https://www.youtube.com/watch?v=GW6nAJ1NHUQ&t=2s&ab_channel=EduardoMendes)\n- [MkDocs](https://www.mkdocs.org/)\n- [pmdown-extensions](https://facelessuser.github.io/pymdown-extensions/)\n- [GitHub - MkDocs Themes](https://github.com/mkdocs/mkdocs/wiki/MkDocs-Themes)\n- [GitHub - Material Theme for MkDocs](https://github.com/squidfunk/mkdocs-material)\n- [Material for MkDocs - Setup](https://squidfunk.github.io/mkdocs-material/setup/changing-the-colors/)\n\n**Github**\n\n- [GitHub Actions - pypa/gh-action-pypi-publish](https://github.com/marketplace/actions/pypi-publish)\n- [Medium - Major, Minor and Patch](https://medium.com/fiverr-engineering/major-minor-patch-a5298e2e1798)\n- [Medium - Automate PyPI Releases with GitHub Actions](https://medium.com/@VersuS_/automate-pypi-releases-with-github-actions-4c5a9cfe947d)\n\n**Tests**\n\n- [Codecov - Setting Threshold](https://github.com/codecov/codecov-action/issues/554#issuecomment-1261250304)\n- [Codecov - About the Codecov YAML](https://docs.codecov.com/docs/codecov-yaml)\n- [Codecov - Status Checks](https://docs.codecov.com/docs/commit-status)\n- [Codecov - codecov.yml Reference](https://docs.codecov.com/docs/codecovyml-reference)\n- [Codecov - Ignore Paths](https://docs.codecov.com/docs/ignoring-paths)\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Funcionalidades Spark criadas para facilitar a cria\u00e7\u00e3o de jobs Glue na AWS",
"version": "0.1.1",
"split_keywords": [
"cloud",
"aws",
"python",
"spark",
"pyspark"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dedb84dff129bd21003666b9229e023a66331536b7a744cae461575792fc7539",
"md5": "34eacd89c9e546c5e7899663c0d86664",
"sha256": "c53ac54d3d52035899cceb45f27b321f5bc082581b3ad2cacf569d69cdb30c46"
},
"downloads": -1,
"filename": "gluesnake-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "34eacd89c9e546c5e7899663c0d86664",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.0.0",
"size": 19374,
"upload_time": "2023-03-11T00:58:07",
"upload_time_iso_8601": "2023-03-11T00:58:07.932923Z",
"url": "https://files.pythonhosted.org/packages/de/db/84dff129bd21003666b9229e023a66331536b7a744cae461575792fc7539/gluesnake-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7bac01ecf9ba9a909f5d06edae9ef8ba14ee0abac9c0bc6b2f6f9824df07814b",
"md5": "1ccb8308096fbd3121cbf576da5d2c90",
"sha256": "bb47810057dc174b2c95ba6bf21fb75e12bf00f6e29056385d0d93927e541fe5"
},
"downloads": -1,
"filename": "gluesnake-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "1ccb8308096fbd3121cbf576da5d2c90",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.0.0",
"size": 20429,
"upload_time": "2023-03-11T00:58:09",
"upload_time_iso_8601": "2023-03-11T00:58:09.118589Z",
"url": "https://files.pythonhosted.org/packages/7b/ac/01ecf9ba9a909f5d06edae9ef8ba14ee0abac9c0bc6b2f6f9824df07814b/gluesnake-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-03-11 00:58:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "ThiagoPanini",
"github_project": "gluesnake",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "gluesnake"
}