Metadata-Version: 2.4
Name: suapy
Version: 1.3.0
Summary: Uma biblioteca Python incrível e em pt-BR focada na vida do aluno acessando a API do SUAP (IFRN).
Home-page: https://github.com/kellyson71/suapy
Author: Kellyson
Author-email: kellyson.m@escolar.ifrn.edu.br
License: MIT
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.25.0
Requires-Dist: rich>=10.0.0
Provides-Extra: pandas
Requires-Dist: pandas>=1.0.0; extra == "pandas"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

<div align="center">

<img src="https://readme-typing-svg.demolab.com?font=Fira+Code&size=32&pause=1000&color=2E9E4F&center=true&vCenter=true&width=500&lines=Suapy+%F0%9F%90%8D;Seu+SUAP%2C+em+Python%2C+em+portugu%C3%AAs." alt="Typing SVG" />

**A biblioteca Python feita para estudantes brasileiros que usam o SUAP.**  
Acesse faltas, notas, provas e muito mais — com código limpo e em português.

[![PyPI version](https://img.shields.io/pypi/v/suapy?color=2e9e4f&style=flat-square&label=suapy)](https://pypi.org/project/suapy/)
[![Python](https://img.shields.io/pypi/pyversions/suapy?style=flat-square&color=3572A5)](https://python.org)
[![License](https://img.shields.io/pypi/l/suapy?style=flat-square&color=orange)](LICENSE)
[![Downloads](https://img.shields.io/pypi/dm/suapy?style=flat-square&color=blueviolet)](https://pypi.org/project/suapy/)

</div>

---

## ✨ Por que o Suapy?

> Você quer saber **quantas faltas** tem antes de reprovar. Quer ver **quando é sua próxima prova**. Quer jogar suas notas num DataFrame do Pandas e entender de vez o semestre. O Suapy faz isso tudo — em português, com poucas linhas.

---

## 📦 Instalação

```bash
pip install suapy
```

<details>
<summary>🐼 Usando Pandas? Instale com o extra</summary>

```bash
pip install suapy[pandas]
```

</details>

---

## 🚀 Primeiros passos

```python
from suapy import Suap

suap = Suap()
suap.login("20201014040001", "sua_senha")

# 👤 Quem sou eu?
aluno = suap.ensino.obter_dados_aluno()
print(f"E aí, {aluno['nome_usual']}! 👋")

# 📅 Próxima prova
provas = suap.ensino.obter_proximas_avaliacoes()
if provas:
    p = provas[0]
    print(f"📌 Prova de {p['disciplina']} em {p['data_avaliacao']}")

# 📋 Situação das matérias
for d in suap.ensino.obter_diarios(2024, 1):
    print(f"• {d['disciplina']}: {d['numero_faltas']} faltas — {d['situacao']}")
```

---

## 🎒 O que você pode fazer com `suap.ensino`

| Função                            | O que retorna                                         |
| --------------------------------- | ----------------------------------------------------- |
| `obter_dados_aluno()`             | Matrícula, curso, cotas e contatos                    |
| `obter_diarios(ano, periodo)`     | Faltas, notas e situação por disciplina               |
| `obter_boletim(ano, periodo)`     | Médias finais e carga horária                         |
| `obter_proximas_avaliacoes()`     | Datas de provas e trabalhos cadastrados               |
| `obter_mensagens_aluno()`         | Recados do SUAP (`'lidas'`, `'nao_lidas'`, `'todas'`) |
| `obter_turmas_virtuais(ano, per)` | Links e participantes da turma virtual                |
| `obter_requisitos_conclusao()`    | Horas e matérias que faltam para formar               |

---

## 📊 Analisando suas notas com Pandas

```python
from suapy import para_dataframe

boletim = suap.ensino.obter_boletim(2024, 1)
df = para_dataframe(boletim)

media = df['media_final_disciplina'].astype(float).mean()
print(f"📈 Sua média geral: {media:.2f}")
```

---

## 🔐 Tratando erros de login

```python
from suapy import Suap, SuapAuthError

try:
    suap.login("usuario", "senha_errada")
except SuapAuthError:
    print("❌ Usuário ou senha incorretos.")
```

---

<div align="center">

Feito com 💚 para os estudantes do **IF** e de todas as instituições que usam o **SUAP**

_Não é afiliado ao IFRN nem ao projeto SUAP oficial._

</div>
