Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brendon3578/python-barcode
Projeto desenvolvido para a automação de códigos de barras para processos logísticos.
https://github.com/brendon3578/python-barcode
Last synced: about 1 month ago
JSON representation
Projeto desenvolvido para a automação de códigos de barras para processos logísticos.
- Host: GitHub
- URL: https://github.com/brendon3578/python-barcode
- Owner: Brendon3578
- Created: 2024-02-07T01:46:25.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-02-10T03:12:42.000Z (11 months ago)
- Last Synced: 2024-02-11T02:02:34.257Z (11 months ago)
- Language: Python
- Size: 59.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Python Barcode - Geração de código de barras
![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge&logo=python&logoColor=ffdd54)
![Flask](https://img.shields.io/badge/flask-%23000.svg?style=for-the-badge&logo=flask&logoColor=white)
## 👨🚀 Projeto
Esse projeto é uma aplicação backend (utilizada em um servidor) desenvolvido com Python durante a **Next Level Week - Expert**, voltado para a geração de etiquetas de códigos de barras de produtos, com ele é possível gerar o código de barras do tipo `CODE 128` que pode futuramente ser impressa e colada em um produto que será entregue.
## 🚀 Tecnologias
- [Python](https://www.python.org/): Linguagem de programação de alto nível, orientada a objetos e funcional utilizada para desenvolver essa aplicação
- [Flask](https://flask.palletsprojects.com/en/3.0.x/): Micro-Framework utilizado para a criação da aplicação web, usada como Backend
- [Python-Barcode](https://pypi.org/project/python-barcode/): Biblioteca usada para a criação das imagens dos códigos de barras
- [Pre-commit](https://pre-commit.com/): Framework utilizado para que antes de salvar o commit no Git, seja verificado problemas dentro da aplicação
- [Git](https://git-scm.com/): Sistema de versionamento de código utilizado para controlar as versões da aplicação## 🌕 Iniciar a aplicação
```bash
# Baixar os pacotes da aplicação
pip install requirements.txt# Ativar as variáveis ambientes do Python (Windows)
./.venv/Scripts/activate# Rodar a aplicação em python no modo DEBUG
python run.py# (não é necessário) Gerar as dependências dos pacotes da aplicação (Windows)
./.venv/Scripts/pip freeze > requirements.txt
```> Para ver como ativar o ambiente virtual do python (venv) em outras plataformas e sistemas operacionais, acesse
A aplicação estará disponível na porta 3000 (localhost:3000). Para gerar um código de barras, utilize o método POST no seguinte endpoint: `http://localhost:3000/create_tag`. Só é necessário enviar no endpoint uma requisição com o seguinte documento JSON no *body*:
```json
{
"product_code": "123-231-213"
}
```Também é possível via cURL:
```bash
curl --location --request POST '' \
--header 'Content-Type: application/json' \
--data-raw '{
"product_code": "123-231-213"
}'
```Será retornado na *response* o seguinte documento JSON, contenho o caminho da imagem de código de barras gerada:
```json
{
"data": {
"count": 1,
"path": "output/123-231-213.png",
"type": "Tag Image"
}
}```
Imagem gerada:
![Imagem de um código de barra gerado](./assets/123-231-213.png)
## 🧪 Testes unitários
Para a execução dos testes unitários da aplicação, foi utilizado a biblioteca **pytest**. Para a visualização destes testes, basta executar o seguinte comando no terminal:
```bash
# executar os testes dad aplicação
pytest# executar os testes e visualizar todos os testes individualmente no terminal
pytest -s -v
```
Feito com ☕ por Brendon Gomes