clapp-pm 1.0.23__py3-none-any.whl → 1.0.28__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- clapp-packages-repo/index.json +8 -19
- clapp-packages-repo/packages/cloud-finder/README.md +164 -0
- clapp-packages-repo/packages/cloud-finder/main.py +985 -0
- clapp-packages-repo/packages/cloud-finder/manifest.json +8 -0
- clapp-packages-repo/packages/cloud-finder/requirements.txt +2 -0
- clapp-packages-repo/packages/test-app-2/README.md +51 -0
- clapp-packages-repo/packages/test-app-2/main.py +55 -0
- clapp-packages-repo/packages/test-app-2/manifest.json +15 -0
- {clapp_pm-1.0.23.data → clapp_pm-1.0.28.data}/data/version.json +1 -1
- {clapp_pm-1.0.23.dist-info → clapp_pm-1.0.28.dist-info}/METADATA +1 -1
- {clapp_pm-1.0.23.dist-info → clapp_pm-1.0.28.dist-info}/RECORD +30 -19
- {clapp_pm-1.0.23.dist-info → clapp_pm-1.0.28.dist-info}/top_level.txt +2 -0
- installer.py +2 -1
- main.py +1 -1
- package_runner.py +1 -1
- packages/cloud-finder/README.md +164 -0
- packages/cloud-finder/main.py +985 -0
- packages/cloud-finder/manifest.json +8 -0
- packages/cloud-finder/requirements.txt +2 -0
- packages/test-app-2/README.md +51 -0
- packages/test-app-2/main.py +55 -0
- packages/test-app-2/manifest.json +15 -0
- publish_command.py +62 -8
- test-app-2/README.md +51 -0
- test-app-2/main.py +55 -0
- test-app-2/manifest.json +15 -0
- version.py +1 -1
- clapp-packages-repo/packages/hello-python/main.py +0 -49
- clapp-packages-repo/packages/hello-python/manifest.json +0 -8
- clapp-packages-repo/packages/test-app/main.py +0 -1
- clapp-packages-repo/packages/test-app/manifest.json +0 -1
- clapp-packages-repo/packages/test-app2/main.py +0 -1
- clapp-packages-repo/packages/test-app2/manifest.json +0 -1
- {clapp_pm-1.0.23.dist-info → clapp_pm-1.0.28.dist-info}/WHEEL +0 -0
- {clapp_pm-1.0.23.dist-info → clapp_pm-1.0.28.dist-info}/entry_points.txt +0 -0
- {clapp_pm-1.0.23.dist-info → clapp_pm-1.0.28.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,51 @@
|
|
1
|
+
# Hello Python - clapp Örnek Uygulaması
|
2
|
+
|
3
|
+
Bu uygulama, clapp için Python uygulaması geliştirme örneğidir.
|
4
|
+
|
5
|
+
## 🚀 Özellikler
|
6
|
+
|
7
|
+
- Basit kullanıcı etkileşimi
|
8
|
+
- Hata yönetimi
|
9
|
+
- Sistem bilgileri gösterimi
|
10
|
+
- Matematik işlemleri
|
11
|
+
|
12
|
+
## 📦 Kurulum
|
13
|
+
|
14
|
+
```bash
|
15
|
+
# Uygulamayı yükle
|
16
|
+
clapp install ./hello-python
|
17
|
+
|
18
|
+
# Uygulamayı çalıştır
|
19
|
+
clapp run hello-python
|
20
|
+
```
|
21
|
+
|
22
|
+
## 🧪 Test
|
23
|
+
|
24
|
+
```bash
|
25
|
+
# Uygulamayı doğrula
|
26
|
+
clapp validate ./hello-python
|
27
|
+
|
28
|
+
# Bağımlılıkları kontrol et
|
29
|
+
clapp dependency check hello-python
|
30
|
+
```
|
31
|
+
|
32
|
+
## 📁 Dosya Yapısı
|
33
|
+
|
34
|
+
```
|
35
|
+
hello-python/
|
36
|
+
├── manifest.json # Uygulama manifesti
|
37
|
+
├── main.py # Ana uygulama dosyası
|
38
|
+
└── README.md # Bu dosya
|
39
|
+
```
|
40
|
+
|
41
|
+
## 🔧 Geliştirme
|
42
|
+
|
43
|
+
Bu şablonu kendi uygulamanız için kullanabilirsiniz:
|
44
|
+
|
45
|
+
1. `manifest.json` dosyasındaki `name` alanını değiştirin
|
46
|
+
2. `main.py` dosyasını kendi kodunuzla değiştirin
|
47
|
+
3. Gerekirse `requirements.txt` ekleyin
|
48
|
+
|
49
|
+
## 📝 Lisans
|
50
|
+
|
51
|
+
MIT License
|
@@ -0,0 +1,55 @@
|
|
1
|
+
#!/usr/bin/env python3
|
2
|
+
"""
|
3
|
+
Hello Python - clapp Örnek Uygulaması
|
4
|
+
|
5
|
+
Bu uygulama clapp için Python uygulaması geliştirme örneğidir.
|
6
|
+
"""
|
7
|
+
|
8
|
+
import sys
|
9
|
+
import os
|
10
|
+
from datetime import datetime
|
11
|
+
|
12
|
+
def main():
|
13
|
+
"""Ana fonksiyon"""
|
14
|
+
print("=" * 50)
|
15
|
+
print("🚀 Hello Python - clapp Örnek Uygulaması")
|
16
|
+
print("=" * 50)
|
17
|
+
|
18
|
+
# Temel bilgiler
|
19
|
+
print(f"📅 Tarih: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}")
|
20
|
+
print(f"🐍 Python Sürümü: {sys.version}")
|
21
|
+
print(f"📁 Çalışma Dizini: {os.getcwd()}")
|
22
|
+
|
23
|
+
# Kullanıcı etkileşimi
|
24
|
+
name = input("\n👋 Adınızı girin: ")
|
25
|
+
if name.strip():
|
26
|
+
print(f"Merhaba {name}! clapp'e hoş geldiniz!")
|
27
|
+
else:
|
28
|
+
print("Merhaba! clapp'e hoş geldiniz!")
|
29
|
+
|
30
|
+
# Örnek işlemler
|
31
|
+
print("\n🔢 Basit Hesaplama Örneği:")
|
32
|
+
try:
|
33
|
+
a = float(input("Birinci sayıyı girin: "))
|
34
|
+
b = float(input("İkinci sayıyı girin: "))
|
35
|
+
|
36
|
+
print(f"Toplam: {a + b}")
|
37
|
+
print(f"Çarpım: {a * b}")
|
38
|
+
print(f"Bölüm: {a / b if b != 0 else 'Tanımsız'}")
|
39
|
+
|
40
|
+
except ValueError:
|
41
|
+
print("❌ Geçersiz sayı girişi!")
|
42
|
+
except ZeroDivisionError:
|
43
|
+
print("❌ Sıfıra bölme hatası!")
|
44
|
+
|
45
|
+
print("\n✅ Uygulama başarıyla tamamlandı!")
|
46
|
+
print("=" * 50)
|
47
|
+
|
48
|
+
if __name__ == "__main__":
|
49
|
+
try:
|
50
|
+
main()
|
51
|
+
except KeyboardInterrupt:
|
52
|
+
print("\n\n👋 Uygulama kullanıcı tarafından sonlandırıldı.")
|
53
|
+
except Exception as e:
|
54
|
+
print(f"\n❌ Beklenmeyen hata: {e}")
|
55
|
+
sys.exit(1)
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{
|
2
|
+
"name": "test-app-2",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"language": "python",
|
5
|
+
"entry": "main.py",
|
6
|
+
"description": "Basit bir Python Hello World uygulaması",
|
7
|
+
"author": "clapp Developer",
|
8
|
+
"license": "MIT",
|
9
|
+
"tags": [
|
10
|
+
"example",
|
11
|
+
"hello",
|
12
|
+
"python"
|
13
|
+
],
|
14
|
+
"category": "demo"
|
15
|
+
}
|
@@ -7,23 +7,23 @@ dependency_resolver.py,sha256=OyzWOW45OWTr8BX0gcy5fFbk9qIVBP9JQyMtXrKPmEM,24499
|
|
7
7
|
doctor_command.py,sha256=8Tv_em4mp-ibaDPXli6uyhYV--Fb6lHyDnnS2S0_d7c,7654
|
8
8
|
info_command.py,sha256=b74Pl1-x_PSezALx-lS3FkEcVNTF7a9McTKk5XTDhjM,5629
|
9
9
|
install_command.py,sha256=9m7C7dVvRop5-4TUy5V2aGb59jSPRp4NAx8QJIOC2tA,9556
|
10
|
-
installer.py,sha256=
|
10
|
+
installer.py,sha256=dmhPZ63IZGY2-LHCIOSKi6gI8lpbB-t6tgwWbXv0vf4,12470
|
11
11
|
list_command.py,sha256=qbeocvrg2eXRklxbYS3audQhYHGXTlMBk_tNh1cMxd0,8391
|
12
|
-
main.py,sha256=
|
12
|
+
main.py,sha256=LTchncUoZQTKBP-EFQtNIJs2ax9H1nSi7TicuC_0XAM,23893
|
13
13
|
manifest_schema.py,sha256=qR6dIpYL1zwAJmrij05gkgE_urN3qVamoUi2BgR7Lv4,2801
|
14
14
|
manifest_validator.py,sha256=JW0mETHDQCSMhodZ5sntr5KPU8T5LYv4IiVoAp4zOIY,8092
|
15
15
|
new_command.py,sha256=gz1w8zMf-gFITtRQAc9G2WES2akuCwdH7dtuDu9TacU,5926
|
16
16
|
package_registry.py,sha256=Rco15cvz-6lpCEDdCzwGZNCKtvVhlFIsEPy-WFAESMM,4233
|
17
|
-
package_runner.py,sha256=
|
17
|
+
package_runner.py,sha256=yTWIlIXRBQq-FiuoS2qifnJHLajgDOnMv2wPPFL1HtI,5787
|
18
18
|
package_signing.py,sha256=ModMAzLk08rkI6zd8QKhyCH5BFbB-7dy8pwqKYatFQo,4579
|
19
19
|
post_install_hint.py,sha256=wjMPCgRurZiGu6hv_se-XA36KqBCdeYdRCD1q7FrJzQ,4918
|
20
20
|
progress_utils.py,sha256=ZH73QNLd5mI4h-JU0hSFR2OU8lesr2XteSZdmFD0bFA,5995
|
21
|
-
publish_command.py,sha256=
|
21
|
+
publish_command.py,sha256=SWSRkxog8IbBo00eKiRXu27hquMiWYVYL-WeLOj7wf8,10954
|
22
22
|
remote_registry.py,sha256=rPBIM_ESXUt0br5cARQ4YbzUoTda0G4e1KGzfyYMbpQ,8235
|
23
23
|
smart_search.py,sha256=R5O5CDXqlQc-N-6R6D5k36_-arCB-wnKfmWr5zMYWUI,15741
|
24
24
|
uninstall_command.py,sha256=rQYbZ-XMw8Xxw1fmgGdDaBQmgBGqyJ_rTBZkvEV5HV0,7066
|
25
25
|
validate_command.py,sha256=idaujErzrwuZNT6DYCVTVwZqBDEEi1GTxIXAGBgKMKM,7623
|
26
|
-
version.py,sha256=
|
26
|
+
version.py,sha256=gwIdAQtXHP_jAubVlAEG1JvxFltc9omJHxSvuaeNFNI,224
|
27
27
|
version_command.py,sha256=DZuYWtohSeM5PJNYCflBy36_k0vex3tYV2C8ixEA9ho,4259
|
28
28
|
version_manager.py,sha256=fpC7jxhIW1wZhJ9IkVwyqkgJN4mhBjUUbaLefXLDMiM,11423
|
29
29
|
where_command.py,sha256=TcLoXLGmrPSHQuvlceVuuKBsfeadIwz-E0G_5okH14g,6420
|
@@ -54,17 +54,25 @@ backup_current/version.py,sha256=SsYpbGcpScK1vA6TGWi8PQCmProVGITm7YYGhbvpS_M,223
|
|
54
54
|
backup_current/version_command.py,sha256=Zk0EIUc2TAj1bN7EHpTqWmI3m-mH9sUpRz3T828ovvY,4370
|
55
55
|
backup_current/where_command.py,sha256=TcLoXLGmrPSHQuvlceVuuKBsfeadIwz-E0G_5okH14g,6420
|
56
56
|
clapp-packages-repo/README.md,sha256=stsqg4c5qWcUZxRabvbD0DEwzjJEGDGvxpA4bGbzJqg,1688
|
57
|
-
clapp-packages-repo/index.json,sha256=
|
57
|
+
clapp-packages-repo/index.json,sha256=0gTnz4yQcNcgasmuPJUYTC1pS0heuLFFtcsCr3WqQv4,640
|
58
58
|
clapp-packages-repo/packages.json,sha256=kjcUn29aMFs89bmjZLK33EMeuy0KZQmyLbdvuCwzCZQ,1148
|
59
|
-
clapp-packages-repo/packages/
|
60
|
-
clapp-packages-repo/packages/
|
61
|
-
clapp-packages-repo/packages/
|
62
|
-
clapp-packages-repo/packages/
|
63
|
-
clapp-packages-repo/packages/test-
|
64
|
-
clapp-packages-repo/packages/test-
|
65
|
-
|
66
|
-
clapp_pm-1.0.
|
59
|
+
clapp-packages-repo/packages/cloud-finder/README.md,sha256=3W5VWCpv1HG9qIube4ytUVK8tpXbk1pB_rSEQU3auQw,5868
|
60
|
+
clapp-packages-repo/packages/cloud-finder/main.py,sha256=ivPzRbL3Qlu10mSarpwff9s7kOyxqa7L3jPCaDbdLEg,39106
|
61
|
+
clapp-packages-repo/packages/cloud-finder/manifest.json,sha256=rt-SSKprBL5p5kmWyvzmZR8Ur8Qtz-sJJ9n0VY44XTw,196
|
62
|
+
clapp-packages-repo/packages/cloud-finder/requirements.txt,sha256=WI7vvqMxYC4vvHHMrlHJ0oCao3qpIK6pyEh-kfwvdmc,21
|
63
|
+
clapp-packages-repo/packages/test-app-2/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
64
|
+
clapp-packages-repo/packages/test-app-2/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
65
|
+
clapp-packages-repo/packages/test-app-2/manifest.json,sha256=dzxPwC-GebvxX9DodLAtdRB0WsZBm204uGGsHbpGhyY,286
|
66
|
+
clapp_pm-1.0.28.data/data/version.json,sha256=k6tTcLbgaSAiApep8TBQv5Zlx65qKmHF-ezrPO19L0s,239
|
67
|
+
clapp_pm-1.0.28.dist-info/licenses/LICENSE,sha256=_hryv9pKR6udRexceUYuoYCJGmYBz7e-vRuFWmm38UY,1075
|
67
68
|
docs/developer_guide.md,sha256=B-S141TSNy7e8T9KaV6Fr-ZAFhYqqgcwqWijjX0C2Xc,7336
|
69
|
+
packages/cloud-finder/README.md,sha256=3W5VWCpv1HG9qIube4ytUVK8tpXbk1pB_rSEQU3auQw,5868
|
70
|
+
packages/cloud-finder/main.py,sha256=ivPzRbL3Qlu10mSarpwff9s7kOyxqa7L3jPCaDbdLEg,39106
|
71
|
+
packages/cloud-finder/manifest.json,sha256=rt-SSKprBL5p5kmWyvzmZR8Ur8Qtz-sJJ9n0VY44XTw,196
|
72
|
+
packages/cloud-finder/requirements.txt,sha256=WI7vvqMxYC4vvHHMrlHJ0oCao3qpIK6pyEh-kfwvdmc,21
|
73
|
+
packages/test-app-2/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
74
|
+
packages/test-app-2/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
75
|
+
packages/test-app-2/manifest.json,sha256=dzxPwC-GebvxX9DodLAtdRB0WsZBm204uGGsHbpGhyY,286
|
68
76
|
templates/dart/manifest.json,sha256=ycVKZxrArzcSoRZ5LKKe8aOerwk5Z-7VX0td86aim0M,267
|
69
77
|
templates/lua/manifest.json,sha256=CRIy0dP6Pr3vH6IV4dObGs4KqqJ_sURsY0wAgK2av7E,262
|
70
78
|
templates/python/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
@@ -73,8 +81,11 @@ templates/python/manifest.json,sha256=hjmKqsEkWEBTwxFgm35MkvuwWZ2CQWq9Zo8uHodqHr
|
|
73
81
|
test-app/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
74
82
|
test-app/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
75
83
|
test-app/manifest.json,sha256=MM1nl5Bljrnsik3fwsrgFBchfgwIb2REoBwwzNpFHQU,284
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
clapp_pm-1.0.
|
80
|
-
clapp_pm-1.0.
|
84
|
+
test-app-2/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
85
|
+
test-app-2/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
86
|
+
test-app-2/manifest.json,sha256=dzxPwC-GebvxX9DodLAtdRB0WsZBm204uGGsHbpGhyY,286
|
87
|
+
clapp_pm-1.0.28.dist-info/METADATA,sha256=ranB8KGzcSuWxoa9d7mMRtQXUW63JpWuMf2ax1NohyA,3983
|
88
|
+
clapp_pm-1.0.28.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
89
|
+
clapp_pm-1.0.28.dist-info/entry_points.txt,sha256=7j-3pQVpQfnaVzUV83g7zlCA30ePlnXkhHLAGGz9xrQ,36
|
90
|
+
clapp_pm-1.0.28.dist-info/top_level.txt,sha256=-nbfxZD1zt1LMxzElOZyNhKpdwHhZD-d5ZWrwIArCtE,495
|
91
|
+
clapp_pm-1.0.28.dist-info/RECORD,,
|
@@ -19,6 +19,7 @@ new_command
|
|
19
19
|
package_registry
|
20
20
|
package_runner
|
21
21
|
package_signing
|
22
|
+
packages
|
22
23
|
post_install_hint
|
23
24
|
progress_utils
|
24
25
|
publish_command
|
@@ -26,6 +27,7 @@ remote_registry
|
|
26
27
|
smart_search
|
27
28
|
templates
|
28
29
|
test-app
|
30
|
+
test-app-2
|
29
31
|
uninstall_command
|
30
32
|
validate_command
|
31
33
|
version
|
installer.py
CHANGED
@@ -211,7 +211,8 @@ def create_package_from_directory(source_dir, output_path=None):
|
|
211
211
|
'*.pyc', '*.pyo', '*.pyd', '*.so', '*.dll', '*.dylib',
|
212
212
|
'node_modules', '.npm', '.yarn', 'yarn.lock', 'package-lock.json',
|
213
213
|
'*.log', '*.tmp', '*.temp', '.vscode', '.idea', '*.swp', '*.swo',
|
214
|
-
'Thumbs.db', 'desktop.ini', '.Trashes', '.Spotlight-V100'
|
214
|
+
'Thumbs.db', 'desktop.ini', '.Trashes', '.Spotlight-V100',
|
215
|
+
'packages' # packages klasörünü de hariç tut
|
215
216
|
]
|
216
217
|
|
217
218
|
def should_exclude(path):
|
main.py
CHANGED
package_runner.py
CHANGED
@@ -124,7 +124,7 @@ def run_app(app_name: str) -> bool:
|
|
124
124
|
supported = ', '.join(LANGUAGE_RUNNERS.keys())
|
125
125
|
print(f"Hata: Desteklenmeyen dil '{language}'. Desteklenen diller: {supported}")
|
126
126
|
return False
|
127
|
-
|
127
|
+
|
128
128
|
# Uygulamayı çalıştır
|
129
129
|
success, error_msg = runner.run(entry_file, app_path)
|
130
130
|
|
@@ -0,0 +1,164 @@
|
|
1
|
+
# Cloud Finder
|
2
|
+
|
3
|
+
MacOS Finder'a benzeyen gelişmiş ve modern dosya gezgini uygulaması.
|
4
|
+
|
5
|
+
## 🚀 Yeni Özellikler
|
6
|
+
|
7
|
+
### **Gelişmiş Arayüz**
|
8
|
+
- 🎨 Liste ve Grid görünüm seçenekleri
|
9
|
+
- 🔍 Gerçek zamanlı dosya arama
|
10
|
+
- 👁️ Gizli dosyaları göster/gizle
|
11
|
+
- 📊 Gelişmiş sıralama seçenekleri (isim, boyut, tarih, tür)
|
12
|
+
- 🎯 Son kullanılan dosyalar geçmişi
|
13
|
+
- ⭐ Favori dosya/klasör sistemi
|
14
|
+
|
15
|
+
### **Gelişmiş Dosya Yönetimi**
|
16
|
+
- 📋 Çoklu dosya seçimi (Ctrl+Click)
|
17
|
+
- 🎯 Sağ tık bağlam menüsü
|
18
|
+
- 📋 Gelişmiş kopyala/kes/yapıştır işlemleri
|
19
|
+
- 🗑️ Güvenli silme işlemleri
|
20
|
+
- 📁 Yeni klasör/dosya oluşturma
|
21
|
+
- 📊 Detaylı dosya bilgileri
|
22
|
+
|
23
|
+
### **Kullanıcı Deneyimi**
|
24
|
+
- 🔔 Bildirim sistemi
|
25
|
+
- ⚡ Yükleme göstergeleri
|
26
|
+
- 🎨 Modern Material Design
|
27
|
+
- 📱 Responsive tasarım
|
28
|
+
- 🎯 Seçim sayacı
|
29
|
+
- 📋 Tooltip'ler ve yardım metinleri
|
30
|
+
|
31
|
+
## 📋 Özellikler
|
32
|
+
|
33
|
+
- 🎨 **Modern Arayüz**: MacOS Finder benzeri temiz tasarım
|
34
|
+
- 📁 **Tam Dosya Yönetimi**: Kopyala, kes, yapıştır, sil, yeniden adlandır
|
35
|
+
- 🔍 **Gelişmiş Arama**: Gerçek zamanlı dosya arama
|
36
|
+
- 🗂️ **Navigasyon**: Geri, ileri, üst klasör butonları
|
37
|
+
- 🎯 **Favori Klasörler**: Hızlı erişim için favori klasörler
|
38
|
+
- 📊 **Dosya Bilgileri**: Boyut, tarih, tür bilgileri
|
39
|
+
- 👁️ **Görünüm Seçenekleri**: Liste ve Grid görünümü
|
40
|
+
- 📈 **Sıralama**: İsim, boyut, tarih, tür sıralaması
|
41
|
+
- 🎯 **Geçmiş**: Son kullanılan dosyalar
|
42
|
+
- ⭐ **Favoriler**: Özel favori dosya/klasör sistemi
|
43
|
+
|
44
|
+
## 🛠️ Kurulum
|
45
|
+
|
46
|
+
1. **Python 3.8+** sürümünün yüklü olduğundan emin olun
|
47
|
+
2. **Gerekli paketleri yükleyin:**
|
48
|
+
```bash
|
49
|
+
pip install -r requirements.txt
|
50
|
+
```
|
51
|
+
|
52
|
+
## 🚀 Çalıştırma
|
53
|
+
|
54
|
+
```bash
|
55
|
+
python main.py
|
56
|
+
```
|
57
|
+
|
58
|
+
## 📖 Kullanım Kılavuzu
|
59
|
+
|
60
|
+
### **Temel İşlemler**
|
61
|
+
- **Navigasyon**: Sidebar'daki favori klasörlere tıklayarak hızlı erişim
|
62
|
+
- **Dosya Seçimi**:
|
63
|
+
- Tek dosya: Normal tıklama
|
64
|
+
- Çoklu seçim: Uzun basma
|
65
|
+
- Tümünü seç: Ctrl+A (geliştirilecek)
|
66
|
+
- **Dosya Açma**: Dosyalara çift tıklayarak varsayılan uygulamada açın
|
67
|
+
|
68
|
+
### **Dosya İşlemleri**
|
69
|
+
- **Kopyala**: Seçili dosyaları kopyalamak için toolbar butonunu kullanın
|
70
|
+
- **Kes**: Seçili dosyaları kesmek için toolbar butonunu kullanın
|
71
|
+
- **Yapıştır**: Kopyalanan/kesilen dosyaları yapıştırmak için toolbar butonunu kullanın
|
72
|
+
- **Sil**: Seçili dosyaları silmek için toolbar butonunu kullanın
|
73
|
+
- **Yeni Klasör/Dosya**: Toolbar'daki ilgili butonları kullanın
|
74
|
+
|
75
|
+
### **Görünüm ve Arama**
|
76
|
+
- **Görünüm Değiştir**: Toolbar'daki görünüm butonunu kullanarak liste/grid arası geçiş
|
77
|
+
- **Arama**: Üst toolbar'daki arama kutusunu kullanarak dosya arayın
|
78
|
+
- **Gizli Dosyalar**: Gizli dosyaları göster/gizle butonunu kullanın
|
79
|
+
- **Sıralama**: Sıralama menüsünden istediğiniz sıralama türünü seçin
|
80
|
+
|
81
|
+
### **Gelişmiş Özellikler**
|
82
|
+
- **Sağ Tık Menüsü**: Dosyalara sağ tıklayarak hızlı işlemler
|
83
|
+
- **Favorilere Ekle**: Dosyaları favorilere ekleyerek hızlı erişim
|
84
|
+
- **Son Kullanılanlar**: Sidebar'da son kullanılan dosyaları görün
|
85
|
+
|
86
|
+
## 🎨 Arayüz Özellikleri
|
87
|
+
|
88
|
+
### **Toolbar**
|
89
|
+
- **Sol**: Navigasyon butonları (Geri, İleri, Üst Klasör)
|
90
|
+
- **Orta**: Mevcut yol ve arama kutusu
|
91
|
+
- **Sağ**: Görünüm, gizli dosyalar, sıralama seçenekleri
|
92
|
+
|
93
|
+
### **Sidebar**
|
94
|
+
- **Favoriler**: Hızlı erişim klasörleri
|
95
|
+
- **Son Kullanılanlar**: Son açılan dosyalar
|
96
|
+
- **Cihazlar**: Sistem klasörleri
|
97
|
+
|
98
|
+
### **Ana İçerik**
|
99
|
+
- **Liste Görünümü**: Detaylı dosya listesi
|
100
|
+
- **Grid Görünümü**: İkon tabanlı görünüm
|
101
|
+
- **Seçim Sayacı**: Seçili dosya sayısı
|
102
|
+
|
103
|
+
## 🔧 Teknolojiler
|
104
|
+
|
105
|
+
- **Flet 0.28+**: Modern Python UI framework
|
106
|
+
- **Python 3.8+**: Ana programlama dili
|
107
|
+
- **Pathlib**: Gelişmiş dosya yolu işlemleri
|
108
|
+
- **OS**: İşletim sistemi entegrasyonu
|
109
|
+
- **JSON**: Veri saklama (geçmiş, favoriler)
|
110
|
+
|
111
|
+
## ✅ Tamamlanan Özellikler
|
112
|
+
|
113
|
+
### **Gelişmiş Dosya Yönetimi**
|
114
|
+
- ✅ **Çoklu Dosya Seçimi**: Uzun basma ile çoklu seçim
|
115
|
+
- ✅ **Aralık Seçimi**: Shift + tıklama ile aralık seçimi
|
116
|
+
- ✅ **Tümünü Seç**: Ctrl+A ile tüm dosyaları seçme
|
117
|
+
- ✅ **Sağ Tık Menüsü**: Hızlı işlemler için bağlam menüsü
|
118
|
+
- ✅ **Favorilere Ekleme**: Dosyaları favorilere ekleme
|
119
|
+
|
120
|
+
### **Navigasyon Sistemi**
|
121
|
+
- ✅ **Geri/İleri Geçmişi**: Tam navigasyon geçmişi
|
122
|
+
- ✅ **Akıllı Geçmiş Yönetimi**: Otomatik geçmiş temizleme
|
123
|
+
- ✅ **Geçmiş Takibi**: Hangi yönlerde gidilebileceğini gösterme
|
124
|
+
|
125
|
+
### **Klavye Kısayolları**
|
126
|
+
- ✅ **Ctrl+C**: Kopyala
|
127
|
+
- ✅ **Ctrl+V**: Yapıştır
|
128
|
+
- ✅ **Ctrl+X**: Kes
|
129
|
+
- ✅ **Ctrl+A**: Tümünü seç
|
130
|
+
- ✅ **Delete**: Sil
|
131
|
+
- ✅ **Escape**: Seçimi temizle
|
132
|
+
|
133
|
+
### **Veri Yönetimi**
|
134
|
+
- ✅ **JSON Tabanlı Geçmiş**: Son kullanılan dosyalar
|
135
|
+
- ✅ **Favori Sistemi**: Özel favori dosya/klasör sistemi
|
136
|
+
- ✅ **Hata Yönetimi**: Güvenli dosya işlemleri
|
137
|
+
- ✅ **UTF-8 Desteği**: Türkçe karakter desteği
|
138
|
+
|
139
|
+
## 🚧 Gelecek Özellikler
|
140
|
+
|
141
|
+
- 🔄 **Sürükle-Bırak**: Dosya taşıma için sürükle-bırak
|
142
|
+
- 📱 **Gelişmiş Bildirimler**: UI tabanlı bildirim sistemi
|
143
|
+
- 🎨 **Tema Desteği**: Karanlık/Aydınlık tema
|
144
|
+
- 📊 **Dosya Önizleme**: Resim ve metin önizleme
|
145
|
+
- 🔒 **Dosya Şifreleme**: Güvenli dosya şifreleme
|
146
|
+
- ☁️ **Bulut Entegrasyonu**: Google Drive, Dropbox desteği
|
147
|
+
- 🎯 **Gelişmiş Arama**: Alt klasörlerde arama
|
148
|
+
- 📈 **İstatistikler**: Dosya kullanım istatistikleri
|
149
|
+
|
150
|
+
## 📄 Lisans
|
151
|
+
|
152
|
+
Bu proje MIT lisansı altında lisanslanmıştır.
|
153
|
+
|
154
|
+
## 🤝 Katkıda Bulunma
|
155
|
+
|
156
|
+
1. Bu repository'yi fork edin
|
157
|
+
2. Yeni bir branch oluşturun (`git checkout -b feature/yeni-ozellik`)
|
158
|
+
3. Değişikliklerinizi commit edin (`git commit -am 'Yeni özellik eklendi'`)
|
159
|
+
4. Branch'inizi push edin (`git push origin feature/yeni-ozellik`)
|
160
|
+
5. Pull Request oluşturun
|
161
|
+
|
162
|
+
## 📞 Destek
|
163
|
+
|
164
|
+
Herhangi bir sorun yaşarsanız veya öneriniz varsa, lütfen issue açın.
|