Skip to content

DAVI3DS/Sinapse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

                                                         
              โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 
              โ–ˆโ–ˆ       โ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆ   โ–ˆโ–ˆ โ–ˆโ–ˆ   โ–ˆโ–ˆ โ–ˆโ–ˆ       โ–ˆโ–ˆ      โ–ˆโ–ˆ      
              โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆ โ–ˆโ–ˆ  โ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆ   โ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 
                   โ–ˆโ–ˆ  โ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ โ–ˆโ–ˆ โ–ˆโ–ˆ   โ–ˆโ–ˆ โ–ˆโ–ˆ    โ–ˆโ–ˆ โ–ˆโ–ˆ           โ–ˆโ–ˆ 
              โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ   โ–ˆโ–ˆ   โ–ˆโ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆ   โ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 
                                                                             

๐Ÿ” Modpack Analyzer

Diagnรณstico inteligente de modpacks โ€” incompatibilidades, dependรชncias ausentes e score de estabilidade.

Python PySide6 SQLite Modrinth CurseForge License Status



โœจ Funcionalidades

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  ๐ŸŽฏ Importaรงรฃo inteligente                                 โ”‚
โ”‚     Arraste sua pasta de mods, .zip (CurseForge), .mrpack  โ”‚
โ”‚     CSV ou TXT โ€” o scanner reconhece o formato.            โ”‚
โ”‚                                                             โ”‚
โ”‚  ๐Ÿ”ฌ Anรกlise profunda                                       โ”‚
โ”‚     Consulta APIs do Modrinth e CurseForge para detectar   โ”‚
โ”‚     dependรชncias obrigatรณrias e incompatibilidades.         โ”‚
โ”‚                                                             โ”‚
โ”‚  ๐Ÿ“Š Score de Estabilidade                                  โ”‚
โ”‚     Nota 0โ€“100 com indicador visual (๐ŸŸข Estรกvel /           โ”‚
โ”‚     ๐ŸŸก Moderado / ๐Ÿ”ด Instรกvel).                            โ”‚
โ”‚                                                             โ”‚
โ”‚  ๐Ÿ“‹ Relatรณrio detalhado                                    โ”‚
โ”‚     Lista de mods com status, problemas encontrados e       โ”‚
โ”‚     aรงรตes sugeridas (links para download).                  โ”‚
โ”‚                                                             โ”‚
โ”‚  ๐Ÿ“š Histรณrico de anรกlises                                  โ”‚
โ”‚     SQLite local guarda todo histรณrico. Compare a evoluรงรฃo  โ”‚
โ”‚     do seu modpack ao longo do tempo.                       โ”‚
โ”‚                                                             โ”‚
โ”‚  ๐Ÿ’พ Exportaรงรฃo                                             โ”‚
โ”‚     Exporte relatรณrio em JSON ou CSV, lista de mods em TXT. โ”‚
โ”‚                                                             โ”‚
โ”‚  ๐ŸŒ Offline-first                                          โ”‚
โ”‚     Cache local de metadados. Funciona sem internet para    โ”‚
โ”‚     consultar dados de anรกlises anteriores.                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿš€ Comeรงando

Prรฉ-requisitos

  • Python 3.12+
  • Pip

Instalaรงรฃo

# Clone
git clone https://github.com/seu-usuario/modpack-analyzer.git
cd modpack-analyzer

# Instale dependรชncias
pip install -r requirements.txt

# Rode!
python main.py

๐ŸŽฎ Como usar

                        โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
                        โ•‘   ๐ŸŸข 85/100 ESTAVEL   โ•‘
                        โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
                               โ”‚
     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
     โ”‚                         โ”‚                         โ”‚
     โ–ผ                         โ–ผ                         โ–ผ
 โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
 โ”‚ ๐Ÿ“       โ”‚          โ”‚ โš ๏ธ Problemas โ”‚          โ”‚ ๐Ÿ“‹ Relatรณrioโ”‚
 โ”‚ Importar โ”‚          โ”‚ OptiFine โ†”   โ”‚          โ”‚ Deps: 2    โ”‚
 โ”‚ Arraste  โ”‚          โ”‚ Sodium       โ”‚          โ”‚ Conflict: 1โ”‚
 โ”‚ a pasta  โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€> โ”‚ โŒ JEI โ†     โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€> โ”‚ Sugestรตes: โ”‚
 โ”‚ ou       โ”‚          โ”‚   Architect  โ”‚          โ”‚ Instalar   โ”‚
 โ”‚ .zip     โ”‚          โ”‚ โ„น๏ธ Inv.HUD   โ”‚          โ”‚ moonlit... โ”‚
 โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Passo a passo:

  1. Abra o aplicativo โ€” tela limpa com รกrea de importaรงรฃo
  2. Arraste a pasta do seu modpack ou clique em "Importar"
  3. Os mods aparecem na tabela com status "Aguardando anรกlise"
  4. Clique "๐Ÿ” Analisar Modpack"
  5. Pronto! Score, problemas detectados e relatรณrio detalhado
  6. Salve o histรณrico automaticamente e exporte quando quiser

๐Ÿง  Score de Estabilidade

Pontuaรงรฃo Rรณtulo Cor Significado
80โ€“100 Estavel ๐ŸŸข Confiรกvel, bem balanceado
50โ€“79 Moderado ๐ŸŸก Atenรงรฃo โ€” hรก riscos
0โ€“49 Instavel ๐Ÿ”ด Alto risco de conflitos e crashes

Penalidades aplicadas

Problema Penalidade
Dependรชncia obrigatรณria ausente โˆ’15 pts
Incompatibilidade crรญtica โˆ’10 pts
Incompatibilidade major โˆ’5 pts
Dependรชncia recomendada ausente โˆ’2 pts
Mod nรฃo identificado โˆ’2 pts

๐Ÿ—๏ธ Arquitetura

src/
โ”œโ”€โ”€ app.py                 # Entry point da aplicaรงรฃo PySide6
โ”œโ”€โ”€ db/
โ”‚   โ””โ”€โ”€ database.py        # Singleton SQLite com migraรงรตes
โ”œโ”€โ”€ api/
โ”‚   โ”œโ”€โ”€ base.py            # Cliente HTTP base (rate-limit, cache)
โ”‚   โ”œโ”€โ”€ modrinth.py        # API Modrinth v2
โ”‚   โ””โ”€โ”€ curseforge.py      # API CurseForge v1
โ”œโ”€โ”€ analysis/
โ”‚   โ”œโ”€โ”€ scanner.py         # Importa modpacks (.zip, .mrpack, pasta, CSV)
โ”‚   โ”œโ”€โ”€ resolver.py        # Motor de resoluรงรฃo de dependรชncias
โ”‚   โ””โ”€โ”€ scorer.py          # Calcula score de estabilidade
โ”œโ”€โ”€ models/
โ”‚   โ”œโ”€โ”€ mod.py             # Dataclass Mod
โ”‚   โ”œโ”€โ”€ modpack.py         # Dataclass Modpack
โ”‚   โ””โ”€โ”€ analysis.py        # Dataclass AnalysisResult / Issue
โ””โ”€โ”€ ui/
    โ”œโ”€โ”€ main_window.py     # Janela principal
    โ”œโ”€โ”€ import_widget.py   # Drag-and-drop + botรตes
    โ”œโ”€โ”€ score_card.py      # Gauge circular de estabilidade
    โ”œโ”€โ”€ mod_list.py        # Tabela de mods com indicadores
    โ”œโ”€โ”€ report_widget.py   # Relatรณrio detalhado em HTML
    โ”œโ”€โ”€ history_panel.py   # Histรณrico lateral
    โ”œโ”€โ”€ styles.py          # QSS dark moderno
    โ””โ”€โ”€ theme.py           # Paleta de cores

๐Ÿ—„๏ธ Banco de Dados (SQLite)

O banco local modpack_analyzer.db armazena:

Tabela Armazena
modpacks Perfis importados
mods Mods individuais com slugs/IDs
modpack_mods Relaรงรฃo modpack โ†” mods
dependencies Cache de dependรชncias
incompatibilities Cache de incompatibilidades
analysis_history Histรณrico de scores
analysis_details Issues de cada anรกlise

๐ŸŽจ Tema

Interface dark moderna com paleta:

Fundo:      #1a1a2e    โ”‚  Primรกria:    #0f3460
Superfรญcie: #16213e    โ”‚  Destaque:    #e94560
Texto:      #eaeaea    โ”‚  Sucesso:     #2ecc71
Secundรกrio: #8892b0    โ”‚  Warning:     #f1c40f
                                           ๐Ÿ”ด Erro: #e74c3c

๐Ÿงช Testes

Teste de integraรงรฃo ponta a ponta:

python -c "
from src.analysis.scanner import scan
from src.analysis.resolver import Resolver
from src.analysis.scorer import calculate

mods = scan('caminho/para/seu/modpack')
r = Resolver()
issues = r.analyze(mods)
result = calculate(issues, len(mods))
print(f'Score: {result.score}/100 โ€” {result.score_label}')
print(f'Problemas: {len(result.all_issues)}')
for i in result.all_issues:
    print(f'  [{i.issue_type}] {i.mod_name}: {i.description}')
"

๐Ÿ”ง Configuraรงรฃo CurseForge

Para usar a API da CurseForge (adicional), defina a variรกvel de ambiente:

# Windows (PowerShell)
$env:CURSEFORGE_API_KEY = "sua-chave-aqui"

# Linux/macOS
export CURSEFORGE_API_KEY="sua-chave-aqui"

๐Ÿ’ก A API do Modrinth รฉ pรบblica e nรฃo requer chave โ€” funciona direto.


๐Ÿ“ฆ Build (futuro)

Para gerar um executรกvel standalone:

pip install pyinstaller
pyinstaller --onefile --windowed --name "Synapse" main.py


Modpack Analyzer โ€” feito com โ˜•, ๐Ÿ Python e ๐Ÿ’™ pelo open source
Contribuiรงรตes, issues e sugestรตes sรฃo bem-vindas!

Star Bug Idea

About

Aplicativo python que verifica a estabilidade do ModPack

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages