Metadata-Version: 2.4
Name: dailycode
Version: 1.0.0
Summary: Encode, decode, wrap, and run Python source with reversible codecs.
Author-email: JustVallxyz <rhevaldyoctavianharis@gmail.com>
License-Expression: MIT
Keywords: codec,encoding,python,sandi kata harian
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# dailycode

`dailycode` adalah library Python untuk meng-encode, decode, membungkus, dan menjalankan source code menggunakan codec yang dapat dibalik. Paket ini menyediakan API Python dan CLI `dailycode`.

> **Peringatan:** fungsi `run()` dan `run_source()` menjalankan kode Python dengan `exec`. Gunakan hanya payload yang berasal dari sumber tepercaya. Codec `dailycode` bukan enkripsi dan tidak menyediakan kerahasiaan.

## Instalasi

```bash
python -m pip install dailycode
```

`dailycode` memerlukan Python 3.10 atau lebih baru dan tidak memiliki dependency runtime.

## Penggunaan API

```python
from dailycode import decode, encode, make_script

source = "print('halo dari dailycode')"
payload = encode("base64", source)

assert decode("base64", payload) == source

wrapped = make_script(source, method="kata_harian")
print(wrapped)
```

## CLI

Setelah instalasi, command `dailycode` tersedia secara langsung. CLI juga dapat dipanggil dengan `python -m dailycode`.

```bash
dailycode methods
dailycode encode --method base64 "halo"
dailycode decode --method base64 "aGFsbw=="
dailycode wrap source.py --method kata_harian --output wrapped.py
dailycode unwrap wrapped.py --output recovered.py
```

Perintah yang tersedia:

- `wrap`: membuat script Python yang dapat dijalankan dari sebuah file `.py`.
- `unwrap`: mengambil kembali source code dari script hasil `wrap` tanpa menjalankannya.
- `encode`: mengubah teks menggunakan codec yang dipilih.
- `decode`: mengembalikan teks dari payload codec yang dipilih.
- `methods`: menampilkan daftar codec yang tersedia.

## Codec

`base64`, `base32`, `hex`, `url`, `rot13`, `binary`, `zlib_b64`, dan `kata_harian`.

## Keamanan

- Semua codec dapat dibalik dan tidak cocok untuk melindungi rahasia.
- Jangan menjalankan script atau payload dari sumber yang tidak dikenal.
- Gunakan `unwrap` jika Anda hanya ingin melihat kembali source code.
- Script yang dibuat oleh `wrap` menjalankan source code ketika dijalankan.

## Lisensi

MIT
