docs: Bahasa Malaysia wiki
Task: MIL-003#5
This commit is contained in:
@@ -0,0 +1,47 @@
|
|||||||
|
[English](Development) · [Dansk](Development-da) · **Bahasa Malaysia**
|
||||||
|
|
||||||
|
# Pembangunan
|
||||||
|
|
||||||
|
## Susun atur
|
||||||
|
|
||||||
|
| Folder | Kandungan |
|
||||||
|
| --- | --- |
|
||||||
|
| `src/password_manager/domain` | Rekod, penjana kata laluan dan ralat; tiada input atau output |
|
||||||
|
| `src/password_manager/application` | Kes guna dan port repositori |
|
||||||
|
| `src/password_manager/infrastructure` | Repositori JSON |
|
||||||
|
| `src/password_manager/presentation` | Paparan MVVM dan model paparan |
|
||||||
|
| `src/password_manager/constants.py` | Semua pemalar dan mesej |
|
||||||
|
| `tests/` | Ujian `unit`, `integration` dan `e2e` |
|
||||||
|
| `tools/` | `capture_screenshots.py` |
|
||||||
|
|
||||||
|
Import menuju ke dalam; hanya `main.py` menghubungkan lapisan.
|
||||||
|
|
||||||
|
## Ujian dan lint
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python -m pytest
|
||||||
|
python -m ruff format src tests tools
|
||||||
|
python -m ruff check src tests tools
|
||||||
|
```
|
||||||
|
|
||||||
|
## Dokumentasi kod sumber
|
||||||
|
|
||||||
|
Komen ditulis dalam gaya Doxygen. Bina HTML dengan `doxygen Doxyfile`; ia dibuka
|
||||||
|
di `docs/doxygen/html/index.html`.
|
||||||
|
|
||||||
|
## Tangkapan skrin
|
||||||
|
|
||||||
|
Pada Windows dengan persekitaran maya aktif:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python tools/capture_screenshots.py
|
||||||
|
```
|
||||||
|
|
||||||
|
Imej ditulis ke `docs/images/` daripada tetingkap sebenar dan fail data
|
||||||
|
sementara.
|
||||||
|
|
||||||
|
## Dokumen projek
|
||||||
|
|
||||||
|
Projek mengikut aliran kerja perancangan dahulu: Business Case, analisis
|
||||||
|
pemegang taruh, pelan projek dan pencapaian berada dalam `docs/`. Kerja
|
||||||
|
dilakukan pada satu cabang dan satu pull request bagi setiap pencapaian.
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
[English](Home) · [Dansk](Home-da) · **Bahasa Malaysia**
|
||||||
|
|
||||||
|
# Password Manager
|
||||||
|
|
||||||
|
Pengurus kata laluan Tkinter yang kecil daripada hari ke-30 kursus Udemy "100
|
||||||
|
Days of Code: The Complete Python Pro Bootcamp". Ia menjana kata laluan,
|
||||||
|
menyimpannya dalam fail JSON dan mencarinya mengikut laman web.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Fungsinya
|
||||||
|
|
||||||
|
- **Menjana** kata laluan rawak dan menyalinnya ke papan keratan.
|
||||||
|
- **Menambah** laman web, alamat e-mel dan kata laluan ke dalam `data.json`.
|
||||||
|
- **Mencari** laman web dan memaparkan alamat e-mel dan kata laluan yang
|
||||||
|
disimpan.
|
||||||
|
- Terus berjalan apabila `data.json` tiada, kosong atau rosak.
|
||||||
|
|
||||||
|
> **Nota keselamatan.** Kata laluan disimpan sebagai JSON biasa dan tidak
|
||||||
|
> disulitkan. Ini projek pembelajaran; jangan gunakannya untuk kata laluan
|
||||||
|
> sebenar.
|
||||||
|
|
||||||
|
## Halaman
|
||||||
|
|
||||||
|
- [Pemasangan](Installation-ms)
|
||||||
|
- [Penggunaan](Usage-ms)
|
||||||
|
- [Pembangunan](Development-ms)
|
||||||
|
|
||||||
|
Kod sumber dan isu: [repositori](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-password-manager).
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
[English](Installation) · [Dansk](Installation-da) · **Bahasa Malaysia**
|
||||||
|
|
||||||
|
# Pemasangan
|
||||||
|
|
||||||
|
## Keperluan
|
||||||
|
|
||||||
|
- Python 3.13 atau lebih baharu dengan Tkinter. Pada Debian atau Ubuntu pasang
|
||||||
|
`python3-tk`.
|
||||||
|
- `venv` dan `pip`, kedua-duanya sebahagian daripada Python.
|
||||||
|
- Tiada kebergantungan semasa dijalankan.
|
||||||
|
|
||||||
|
## Cipta persekitaran maya tempatan
|
||||||
|
|
||||||
|
Windows (PowerShell):
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
python -m venv .venv
|
||||||
|
.venv/Scripts/Activate.ps1
|
||||||
|
python -m pip install --upgrade pip
|
||||||
|
python -m pip install -e ".[dev]"
|
||||||
|
```
|
||||||
|
|
||||||
|
Linux dan macOS:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python3 -m venv .venv
|
||||||
|
source .venv/bin/activate
|
||||||
|
python -m pip install --upgrade pip
|
||||||
|
python -m pip install -e ".[dev]"
|
||||||
|
```
|
||||||
|
|
||||||
|
Tambahan `[dev]` memasang pytest dan ruff. Tinggalkannya
|
||||||
|
(`python -m pip install -e .`) jika anda hanya mahu menjalankan program.
|
||||||
|
|
||||||
|
## Semak pemasangan
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python -m pytest
|
||||||
|
```
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
[English](Usage) · [Dansk](Usage-da) · **Bahasa Malaysia**
|
||||||
|
|
||||||
|
# Penggunaan
|
||||||
|
|
||||||
|
Mulakan program dengan persekitaran maya aktif:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python -m password_manager
|
||||||
|
```
|
||||||
|
|
||||||
|
Program menyimpan datanya dalam `data.json` di folder tempat anda memulakannya.
|
||||||
|
|
||||||
|
## Jana dan tambah kata laluan
|
||||||
|
|
||||||
|
1. Taip laman web.
|
||||||
|
2. Tekan **Generate Password**. Kata laluan diisi dan disalin ke papan
|
||||||
|
keratan.
|
||||||
|
3. Semak alamat e-mel dan tekan **Add**. Sahkan dialog dan rekod disimpan.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Jika medan dibiarkan kosong, amaran dipaparkan dan tiada apa yang disimpan.
|
||||||
|
|
||||||
|
## Carian
|
||||||
|
|
||||||
|
Taip laman web dan tekan **Search**. Alamat e-mel dan kata laluan yang disimpan
|
||||||
|
dipaparkan.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Jika tiada apa yang disimpan untuk laman web itu, atau fail data belum wujud,
|
||||||
|
satu mesej memberitahunya.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Fail data
|
||||||
|
|
||||||
|
`data.json` mengandungi satu rekod bagi setiap laman web:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"example.com": {
|
||||||
|
"email": "jens@example.com",
|
||||||
|
"password": "Sample#Pass123"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user