Metadata-Version: 2.4
Name: andarlabs
Version: 2.1.1
Summary: Cross-platform network and security CLI toolkit
Author: Laurensius Andar Sakaleak
License-Expression: MIT
Keywords: network,security,cli,dns,diagnostics
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: System Administrators
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: MacOS
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: System :: Networking :: Monitoring
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: dnspython<3,>=2.4
Requires-Dist: rich<15,>=13
Dynamic: license-file

# Andarlabs

Andarlabs adalah toolkit CLI untuk pembelajaran dan pemeriksaan dasar sistem, jaringan, serta keamanan. Gunakan hanya pada perangkat atau jaringan yang Anda miliki atau yang sudah Anda dapatkan izinnya.

## Dukungan

- Windows
- Kali Linux
- Ubuntu
- macOS
- Python 3.10+

## Instalasi

```powershell
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
```

Untuk memasang sebagai command system:

```bash
pip install andarlabs
andarlabs --version
```

Untuk instalasi langsung dari source repository:

```bash
pip install .
```

Di Linux/macOS:

```bash
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```

## Menjalankan

```bash
python main.py
```

Setelah package dipasang, jalankan dengan:

```bash
andarlabs
```

Menu interaktif menyediakan informasi sistem/jaringan, DNS, ping, pemeriksaan port, HTTP headers, subnet, hashing, Base64, report, SSL/TLS, port range scan, dan traceroute.

## Mode CLI

```bash
python main.py --version
python main.py --dns example.com --record-type A
python main.py --hash "teks yang ingin dihitung"
python main.py --subnet 192.168.1.0/24
python main.py --report
python main.py --port-range 127.0.0.1 1 1024
python main.py --traceroute example.com
python main.py --subnet 192.168.1.0/24 --output json
python main.py --dns example.com --record-type AAAA --output json
python main.py --report --output json
```

Report disimpan di `exports/report.txt` dan `exports/report.json`. Error aplikasi dicatat di `logs/andarlabs.log`. Command DNS, hash, subnet, dan port range mendukung `--output json` untuk automation.

## Pengujian

```bash
python -m unittest discover -s tests -v
```

## Build dan publikasi package

Untuk membuat package:

```bash
python -m pip install -r requirements-dev.txt
python -m build
```

Hasil build berada di folder `dist/`. Uji dulu dengan TestPyPI atau virtual environment bersih. Setelah akun PyPI dan token sudah disiapkan:

```bash
python -m twine check dist/*
python -m twine upload dist/*
```

Setelah package berhasil diunggah, pengguna Linux dapat memasang Andarlabs dengan:

```bash
python3 -m pip install andarlabs
andarlabs
```

## Catatan keamanan

Port scanner dan traceroute menghasilkan traffic jaringan. Jalankan hanya terhadap target yang Anda miliki atau yang secara eksplisit mengizinkan pengujian.

MD5 hanya ditampilkan untuk kompatibilitas legacy dan tidak boleh digunakan sebagai hash keamanan. Gunakan SHA-256 atau algoritma modern lain untuk kebutuhan keamanan.

## License

Project ini dirilis di bawah [MIT License](LICENSE).
