nkjoy commited on
Commit
559ff8d
·
verified ·
1 Parent(s): 73b119c

[new] [오후 7:57] Arturia Pigments 7.0.0 크랙 다운로드 - https://ko.taiwebs.com/windows/download-arturia-pigments-8272.html

Browse files

[new] [오후 7:58] BeeCut 1.7.11.6 크랙 다운로드 - https://ko.taiwebs.com/windows/download-beecut-4660.html
[new] [오후 7:59] Digiarty Aiarty Video Enhancer 3.3 다운로드 - https://ko.taiwebs.com/windows/download-digiarty-aiarty-video-enhancer-13862.html
[new] [오후 8:00] 4K Video Downloader Plus 25.4.4 크랙 다운로드 - https://ko.taiwebs.com/windows/download-4k-video-downloader-617.html
[new] [오후 8:01] iFoneTool EasyDown 2.3.0 다운로드 - https://ko.taiwebs.com/windows/download-ifonetool-easydown-14405.html
[new] [오후 8:04] RyTuneX 1.5.2 다운로드 - https://ko.taiwebs.com/windows/download-rytunex-11852.html
[new] [오후 8:06] Wondershare Recoverit 14.0.11.7 크랙 다운로드 - https://ko.taiwebs.com/windows/download-wondershare-recoverits-374.html
[new] [오후 8:09] Gilisoft AI Toolkit 10.6 크랙 다운로드 - https://ko.taiwebs.com/windows/download-gilisoft-ai-toolkit-9520.html
[new] [오후 8:11] Leawo iOS Data Recovery 3.4.2.0 크랙 다운로드 - https://ko.taiwebs.com/windows/download-leawo-ios-data-recovery-5628.html

[new] [오후 9:29] Apeaksoft iOS Toolkit 1.1.70 크랙 다운로드 - https://ko.taiwebs.com/windows/download-apeaksoft-ios-toolkit-554.html
[new] [오후 11:51] PVS-Studio 7.40.101452.2093 크랙 다운로드 - https://ko.taiwebs.com/windows/download-pvs-studio-1480.html
[new] [오후 11:53] CyberLink PerfectCam Premium 2.3.7821.0 크랙 다운로드 - https://ko.taiwebs.com/windows/download-cyberlink-perfectcam-premium-375.html
[new] [오후 11:55] MakeMusic Finale 27.4.1.110 크랙 다운로드 - https://ko.taiwebs.com/windows/download-makemusic-finale-1025.html
--------------- 2025년 12월 27일 토요일 ---------------
[new] [오전 2:13] Gilisoft AI Toolkit 10.6 크랙 다운로드 - https://ko.taiwebs.com/windows/download-gilisoft-ai-toolkit-9520.html
[new] [오전 2:17] Soundify Vocal Remover 1.2.7 다운로드 - https://ko.taiwebs.com/windows/download-soundify-vocal-remover-12737.html
[new] [오전 2:19] Bootstrap Studio 7.1.2 크랙 다운로드 - https://ko.taiwebs.com/windows/download-bootstrap-studio-2053.html
[new] [오전 2:20] Autodesk VRED Design 2022.3 크랙 다운로드 - https://ko.taiwebs.com/windows/download-autodesk-vred-design-1437.html
[new] [오전 2:20] Unity Pro 2020 2.7f1 + Support & Addons 크랙 다운로드 - https://ko.taiwebs.com/windows/download-unity-3d-professional-775.html



다운로드 버튼 이 있는 홈페이지 프리미엄 디자인으로 입체감과 버튼에 애니메이션 넣어줘

Files changed (7) hide show
  1. README.md +8 -5
  2. components/footer.js +299 -0
  3. components/navbar.js +225 -0
  4. components/software-card.js +266 -0
  5. index.html +191 -19
  6. script.js +117 -0
  7. style.css +158 -18
README.md CHANGED
@@ -1,10 +1,13 @@
1
  ---
2
- title: Softfetch Pro Premium Software Hub
3
- emoji: 🚀
4
- colorFrom: green
5
- colorTo: blue
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
1
  ---
2
+ title: SoftFetch Pro - Premium Software Hub 🚀
3
+ colorFrom: gray
4
+ colorTo: gray
5
+ emoji: 🐳
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite-v3
10
  ---
11
 
12
+ # Welcome to your new DeepSite project!
13
+ This project was created with [DeepSite](https://huggingface.co/deepsite).
components/footer.js ADDED
@@ -0,0 +1,299 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class CustomFooter extends HTMLElement {
2
+ connectedCallback() {
3
+ this.attachShadow({ mode: 'open' });
4
+ this.shadowRoot.innerHTML = `
5
+ <style>
6
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
7
+
8
+ * {
9
+ margin: 0;
10
+ padding: 0;
11
+ box-sizing: border-box;
12
+ }
13
+
14
+ .footer {
15
+ background: rgba(10, 15, 28, 0.95);
16
+ border-top: 1px solid rgba(255, 255, 255, 0.1);
17
+ padding: 4rem 2rem 2rem;
18
+ margin-top: 4rem;
19
+ }
20
+
21
+ .footer-container {
22
+ max-width: 1280px;
23
+ margin: 0 auto;
24
+ }
25
+
26
+ .footer-grid {
27
+ display: grid;
28
+ grid-template-columns: repeat(1, 1fr);
29
+ gap: 3rem;
30
+ margin-bottom: 3rem;
31
+ }
32
+
33
+ @media (min-width: 768px) {
34
+ .footer-grid {
35
+ grid-template-columns: repeat(2, 1fr);
36
+ }
37
+ }
38
+
39
+ @media (min-width: 1024px) {
40
+ .footer-grid {
41
+ grid-template-columns: repeat(4, 1fr);
42
+ }
43
+ }
44
+
45
+ .footer-section h3 {
46
+ color: white;
47
+ font-size: 1.25rem;
48
+ font-weight: 700;
49
+ margin-bottom: 1.5rem;
50
+ position: relative;
51
+ display: inline-block;
52
+ }
53
+
54
+ .footer-section h3::after {
55
+ content: '';
56
+ position: absolute;
57
+ left: 0;
58
+ bottom: -0.5rem;
59
+ width: 2rem;
60
+ height: 2px;
61
+ background: linear-gradient(90deg, #6366f1, #10b981);
62
+ }
63
+
64
+ .footer-links {
65
+ list-style: none;
66
+ }
67
+
68
+ .footer-links li {
69
+ margin-bottom: 0.75rem;
70
+ }
71
+
72
+ .footer-links a {
73
+ color: #94a3b8;
74
+ text-decoration: none;
75
+ transition: all 0.3s ease;
76
+ display: flex;
77
+ align-items: center;
78
+ gap: 0.5rem;
79
+ }
80
+
81
+ .footer-links a:hover {
82
+ color: white;
83
+ transform: translateX(5px);
84
+ }
85
+
86
+ .footer-text {
87
+ color: #94a3b8;
88
+ line-height: 1.6;
89
+ margin-bottom: 1.5rem;
90
+ }
91
+
92
+ .social-links {
93
+ display: flex;
94
+ gap: 1rem;
95
+ margin-top: 1.5rem;
96
+ }
97
+
98
+ .social-link {
99
+ width: 2.5rem;
100
+ height: 2.5rem;
101
+ border-radius: 12px;
102
+ background: rgba(30, 41, 59, 0.7);
103
+ display: flex;
104
+ align-items: center;
105
+ justify-content: center;
106
+ color: #94a3b8;
107
+ text-decoration: none;
108
+ transition: all 0.3s ease;
109
+ }
110
+
111
+ .social-link:hover {
112
+ background: #6366f1;
113
+ color: white;
114
+ transform: translateY(-3px);
115
+ }
116
+
117
+ .newsletter-form {
118
+ margin-top: 1.5rem;
119
+ }
120
+
121
+ .newsletter-input {
122
+ width: 100%;
123
+ padding: 0.875rem 1rem;
124
+ background: rgba(30, 41, 59, 0.7);
125
+ border: 1px solid rgba(99, 102, 241, 0.3);
126
+ border-radius: 12px;
127
+ color: white;
128
+ margin-bottom: 1rem;
129
+ }
130
+
131
+ .newsletter-input:focus {
132
+ outline: none;
133
+ border-color: #6366f1;
134
+ }
135
+
136
+ .footer-bottom {
137
+ border-top: 1px solid rgba(255, 255, 255, 0.1);
138
+ padding-top: 2rem;
139
+ display: flex;
140
+ flex-direction: column;
141
+ gap: 1.5rem;
142
+ text-align: center;
143
+ }
144
+
145
+ @media (min-width: 768px) {
146
+ .footer-bottom {
147
+ flex-direction: row;
148
+ justify-content: space-between;
149
+ align-items: center;
150
+ }
151
+ }
152
+
153
+ .copyright {
154
+ color: #64748b;
155
+ font-size: 0.875rem;
156
+ }
157
+
158
+ .footer-bottom-links {
159
+ display: flex;
160
+ gap: 1.5rem;
161
+ justify-content: center;
162
+ }
163
+
164
+ .footer-bottom-links a {
165
+ color: #94a3b8;
166
+ text-decoration: none;
167
+ font-size: 0.875rem;
168
+ transition: color 0.3s ease;
169
+ }
170
+
171
+ .footer-bottom-links a:hover {
172
+ color: white;
173
+ }
174
+ </style>
175
+
176
+ <footer class="footer">
177
+ <div class="footer-container">
178
+ <div class="footer-grid">
179
+ <div class="footer-section">
180
+ <h3>SoftFetch Pro</h3>
181
+ <p class="footer-text">
182
+ Your premier destination for premium software downloads. Verified, safe, and ready to enhance your digital experience.
183
+ </p>
184
+ <div class="social-links">
185
+ <a href="#" class="social-link">
186
+ <i data-feather="twitter"></i>
187
+ </a>
188
+ <a href="#" class="social-link">
189
+ <i data-feather="github"></i>
190
+ </a>
191
+ <a href="#" class="social-link">
192
+ <i data-feather="discord"></i>
193
+ </a>
194
+ <a href="#" class="social-link">
195
+ <i data-feather="youtube"></i>
196
+ </a>
197
+ </div>
198
+ </div>
199
+
200
+ <div class="footer-section">
201
+ <h3>Quick Links</h3>
202
+ <ul class="footer-links">
203
+ <li>
204
+ <a href="/">
205
+ <i data-feather="home"></i>
206
+ Home
207
+ </a>
208
+ </li>
209
+ <li>
210
+ <a href="#software-grid">
211
+ <i data-feather="grid"></i>
212
+ All Software
213
+ </a>
214
+ </li>
215
+ <li>
216
+ <a href="#">
217
+ <i data-feather="star"></i>
218
+ Premium Features
219
+ </a>
220
+ </li>
221
+ <li>
222
+ <a href="#">
223
+ <i data-feather="trending-up"></i>
224
+ Top Downloads
225
+ </a>
226
+ </li>
227
+ </ul>
228
+ </div>
229
+
230
+ <div class="footer-section">
231
+ <h3>Categories</h3>
232
+ <ul class="footer-links">
233
+ <li>
234
+ <a href="#">
235
+ <i data-feather="music"></i>
236
+ Music Production
237
+ </a>
238
+ </li>
239
+ <li>
240
+ <a href="#">
241
+ <i data-feather="film"></i>
242
+ Video Editing
243
+ </a>
244
+ </li>
245
+ <li>
246
+ <a href="#">
247
+ <i data-feather="cpu"></i>
248
+ AI Tools
249
+ </a>
250
+ </li>
251
+ <li>
252
+ <a href="#">
253
+ <i data-feather="code"></i>
254
+ Development
255
+ </a>
256
+ </li>
257
+ </ul>
258
+ </div>
259
+
260
+ <div class="footer-section">
261
+ <h3>Newsletter</h3>
262
+ <p class="footer-text">
263
+ Subscribe to get notified about new software releases and exclusive offers.
264
+ </p>
265
+ <div class="newsletter-form">
266
+ <input type="email" placeholder="Your email address" class="newsletter-input">
267
+ <a href="#" class="download-btn" style="display: inline-block; width: 100%; text-align: center;">
268
+ <i data-feather="send"></i>
269
+ Subscribe
270
+ </a>
271
+ </div>
272
+ </div>
273
+ </div>
274
+
275
+ <div class="footer-bottom">
276
+ <div class="copyright">
277
+ © 2024 SoftFetch Pro. All rights reserved.
278
+ </div>
279
+ <div class="footer-bottom-links">
280
+ <a href="#">Privacy Policy</a>
281
+ <a href="#">Terms of Service</a>
282
+ <a href="#">Cookie Policy</a>
283
+ <a href="#">Contact</a>
284
+ </div>
285
+ </div>
286
+ </div>
287
+ </footer>
288
+ `;
289
+
290
+ // Initialize feather icons
291
+ setTimeout(() => {
292
+ if (typeof feather !== 'undefined') {
293
+ feather.replace();
294
+ }
295
+ }, 100);
296
+ }
297
+ }
298
+
299
+ customElements.define('custom-footer', CustomFooter);
components/navbar.js ADDED
@@ -0,0 +1,225 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class CustomNavbar extends HTMLElement {
2
+ connectedCallback() {
3
+ this.attachShadow({ mode: 'open' });
4
+ this.shadowRoot.innerHTML = `
5
+ <style>
6
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Poppins:wght@700;800;900&display=swap');
7
+
8
+ * {
9
+ margin: 0;
10
+ padding: 0;
11
+ box-sizing: border-box;
12
+ }
13
+
14
+ .navbar {
15
+ position: fixed;
16
+ top: 0;
17
+ left: 0;
18
+ right: 0;
19
+ z-index: 1000;
20
+ background: rgba(15, 23, 42, 0.85);
21
+ backdrop-filter: blur(20px);
22
+ border-bottom: 1px solid rgba(255, 255, 255, 0.1);
23
+ padding: 1rem 2rem;
24
+ transition: all 0.3s ease;
25
+ }
26
+
27
+ .navbar.scrolled {
28
+ padding: 0.75rem 2rem;
29
+ background: rgba(10, 15, 28, 0.95);
30
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
31
+ }
32
+
33
+ .nav-container {
34
+ max-width: 1280px;
35
+ margin: 0 auto;
36
+ display: flex;
37
+ justify-content: space-between;
38
+ align-items: center;
39
+ }
40
+
41
+ .logo {
42
+ display: flex;
43
+ align-items: center;
44
+ gap: 0.75rem;
45
+ text-decoration: none;
46
+ }
47
+
48
+ .logo-icon {
49
+ width: 2.5rem;
50
+ height: 2.5rem;
51
+ background: linear-gradient(135deg, #6366f1, #8b5cf6);
52
+ border-radius: 12px;
53
+ display: flex;
54
+ align-items: center;
55
+ justify-content: center;
56
+ color: white;
57
+ font-weight: 900;
58
+ font-size: 1.25rem;
59
+ font-family: 'Poppins', sans-serif;
60
+ }
61
+
62
+ .logo-text {
63
+ font-family: 'Poppins', sans-serif;
64
+ font-weight: 900;
65
+ font-size: 1.5rem;
66
+ background: linear-gradient(135deg, #6366f1, #10b981);
67
+ -webkit-background-clip: text;
68
+ -webkit-text-fill-color: transparent;
69
+ }
70
+
71
+ .nav-links {
72
+ display: flex;
73
+ gap: 2rem;
74
+ align-items: center;
75
+ }
76
+
77
+ .nav-link {
78
+ color: #cbd5e1;
79
+ text-decoration: none;
80
+ font-weight: 500;
81
+ font-size: 1rem;
82
+ transition: all 0.3s ease;
83
+ position: relative;
84
+ padding: 0.5rem 0;
85
+ }
86
+
87
+ .nav-link:hover {
88
+ color: white;
89
+ }
90
+
91
+ .nav-link::after {
92
+ content: '';
93
+ position: absolute;
94
+ bottom: 0;
95
+ left: 0;
96
+ width: 0;
97
+ height: 2px;
98
+ background: linear-gradient(90deg, #6366f1, #10b981);
99
+ transition: width 0.3s ease;
100
+ }
101
+
102
+ .nav-link:hover::after {
103
+ width: 100%;
104
+ }
105
+
106
+ .search-container {
107
+ position: relative;
108
+ }
109
+
110
+ .search-input {
111
+ background: rgba(30, 41, 59, 0.7);
112
+ border: 1px solid rgba(99, 102, 241, 0.3);
113
+ border-radius: 12px;
114
+ padding: 0.75rem 1rem 0.75rem 3rem;
115
+ color: white;
116
+ font-size: 0.95rem;
117
+ width: 250px;
118
+ transition: all 0.3s ease;
119
+ }
120
+
121
+ .search-input:focus {
122
+ outline: none;
123
+ border-color: #6366f1;
124
+ box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
125
+ width: 300px;
126
+ }
127
+
128
+ .search-icon {
129
+ position: absolute;
130
+ left: 1rem;
131
+ top: 50%;
132
+ transform: translateY(-50%);
133
+ color: #94a3b8;
134
+ }
135
+
136
+ .mobile-menu-btn {
137
+ display: none;
138
+ background: none;
139
+ border: none;
140
+ color: #cbd5e1;
141
+ cursor: pointer;
142
+ }
143
+
144
+ @media (max-width: 1024px) {
145
+ .nav-links {
146
+ display: none;
147
+ }
148
+
149
+ .mobile-menu-btn {
150
+ display: block;
151
+ }
152
+
153
+ .navbar {
154
+ padding: 1rem;
155
+ }
156
+ }
157
+ </style>
158
+
159
+ <nav class="navbar">
160
+ <div class="nav-container">
161
+ <a href="/" class="logo">
162
+ <div class="logo-icon">SF</div>
163
+ <div class="logo-text">SoftFetch Pro</div>
164
+ </a>
165
+
166
+ <div class="nav-links">
167
+ <a href="/" class="nav-link">
168
+ <i data-feather="home"></i>
169
+ Home
170
+ </a>
171
+ <a href="#software-grid" class="nav-link">
172
+ <i data-feather="grid"></i>
173
+ Software
174
+ </a>
175
+ <a href="#" class="nav-link">
176
+ <i data-feather="star"></i>
177
+ Premium
178
+ </a>
179
+ <a href="#" class="nav-link">
180
+ <i data-feather="download"></i>
181
+ Downloads
182
+ </a>
183
+ <a href="#" class="nav-link">
184
+ <i data-feather="help-circle"></i>
185
+ Support
186
+ </a>
187
+
188
+ <div class="search-container">
189
+ <i data-feather="search" class="search-icon"></i>
190
+ <input type="text" placeholder="Search software..." class="search-input" id="search-input">
191
+ </div>
192
+
193
+ <a href="#" class="btn-primary px-6 py-2.5 text-sm font-semibold rounded-xl">
194
+ <i data-feather="user"></i>
195
+ Account
196
+ </a>
197
+ </div>
198
+
199
+ <button class="mobile-menu-btn">
200
+ <i data-feather="menu"></i>
201
+ </button>
202
+ </div>
203
+ </nav>
204
+ `;
205
+
206
+ // Add scroll effect
207
+ window.addEventListener('scroll', () => {
208
+ const navbar = this.shadowRoot.querySelector('.navbar');
209
+ if (window.scrollY > 50) {
210
+ navbar.classList.add('scrolled');
211
+ } else {
212
+ navbar.classList.remove('scrolled');
213
+ }
214
+ });
215
+
216
+ // Initialize feather icons
217
+ setTimeout(() => {
218
+ if (typeof feather !== 'undefined') {
219
+ feather.replace();
220
+ }
221
+ }, 100);
222
+ }
223
+ }
224
+
225
+ customElements.define('custom-navbar', CustomNavbar);
components/software-card.js ADDED
@@ -0,0 +1,266 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class SoftwareCard extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ['name', 'category', 'url', 'version', 'seed'];
4
+ }
5
+
6
+ connectedCallback() {
7
+ this.render();
8
+ }
9
+
10
+ attributeChangedCallback() {
11
+ this.render();
12
+ }
13
+
14
+ render() {
15
+ const name = this.getAttribute('name') || 'Software Name';
16
+ const category = this.getAttribute('category') || 'Category';
17
+ const url = this.getAttribute('url') || '#';
18
+ const version = this.getAttribute('version') || '1.0.0';
19
+ const seed = this.getAttribute('seed') || '1';
20
+
21
+ const categoryColors = {
22
+ 'Music Production': 'bg-purple-500/20 text-purple-400',
23
+ 'Video Editing': 'bg-pink-500/20 text-pink-400',
24
+ 'AI Tools': 'bg-cyan-500/20 text-cyan-400',
25
+ 'Utilities': 'bg-blue-500/20 text-blue-400',
26
+ 'iOS Tools': 'bg-gray-500/20 text-gray-400',
27
+ 'System Tools': 'bg-yellow-500/20 text-yellow-400',
28
+ 'Data Recovery': 'bg-green-500/20 text-green-400',
29
+ 'Development': 'bg-indigo-500/20 text-indigo-400',
30
+ 'Video Tools': 'bg-red-500/20 text-red-400',
31
+ 'Audio Tools': 'bg-orange-500/20 text-orange-400',
32
+ '3D Design': 'bg-teal-500/20 text-teal-400',
33
+ 'Game Development': 'bg-violet-500/20 text-violet-400'
34
+ };
35
+
36
+ const categoryClass = categoryColors[category] || 'bg-primary/20 text-primary';
37
+
38
+ this.attachShadow({ mode: 'open' });
39
+ this.shadowRoot.innerHTML = `
40
+ <style>
41
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
42
+
43
+ * {
44
+ margin: 0;
45
+ padding: 0;
46
+ box-sizing: border-box;
47
+ }
48
+
49
+ .card {
50
+ background: linear-gradient(145deg, rgba(30, 41, 59, 0.7), rgba(15, 23, 42, 0.9));
51
+ border: 1px solid rgba(255, 255, 255, 0.1);
52
+ border-radius: 20px;
53
+ overflow: hidden;
54
+ transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
55
+ position: relative;
56
+ opacity: 0;
57
+ transform: translateY(20px);
58
+ animation: slide-in 0.5s ease-out forwards;
59
+ animation-delay: calc(var(--order, 0) * 0.05s);
60
+ }
61
+
62
+ @keyframes slide-in {
63
+ to {
64
+ opacity: 1;
65
+ transform: translateY(0);
66
+ }
67
+ }
68
+
69
+ .card:hover {
70
+ transform: translateY(-10px) scale(1.02);
71
+ border-color: rgba(99, 102, 241, 0.5);
72
+ box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5), 0 0 30px rgba(99, 102, 241, 0.3);
73
+ }
74
+
75
+ .card-image {
76
+ width: 100%;
77
+ height: 180px;
78
+ background: linear-gradient(45deg, #1e293b, #0f172a);
79
+ position: relative;
80
+ overflow: hidden;
81
+ }
82
+
83
+ .card-image img {
84
+ width: 100%;
85
+ height: 100%;
86
+ object-fit: cover;
87
+ transition: transform 0.5s ease;
88
+ }
89
+
90
+ .card:hover .card-image img {
91
+ transform: scale(1.1);
92
+ }
93
+
94
+ .card-category {
95
+ position: absolute;
96
+ top: 1rem;
97
+ left: 1rem;
98
+ padding: 0.5rem 1rem;
99
+ border-radius: 50px;
100
+ font-size: 0.75rem;
101
+ font-weight: 600;
102
+ backdrop-filter: blur(10px);
103
+ }
104
+
105
+ .card-content {
106
+ padding: 1.5rem;
107
+ }
108
+
109
+ .card-title {
110
+ font-size: 1.25rem;
111
+ font-weight: 700;
112
+ color: white;
113
+ margin-bottom: 0.5rem;
114
+ line-height: 1.4;
115
+ }
116
+
117
+ .card-meta {
118
+ display: flex;
119
+ justify-content: space-between;
120
+ align-items: center;
121
+ margin-bottom: 1.5rem;
122
+ }
123
+
124
+ .card-version {
125
+ color: #94a3b8;
126
+ font-size: 0.875rem;
127
+ display: flex;
128
+ align-items: center;
129
+ gap: 0.25rem;
130
+ }
131
+
132
+ .card-rating {
133
+ color: #fbbf24;
134
+ font-size: 0.875rem;
135
+ display: flex;
136
+ align-items: center;
137
+ gap: 0.25rem;
138
+ }
139
+
140
+ .card-description {
141
+ color: #94a3b8;
142
+ font-size: 0.875rem;
143
+ margin-bottom: 1.5rem;
144
+ line-height: 1.5;
145
+ }
146
+
147
+ .card-footer {
148
+ display: flex;
149
+ justify-content: space-between;
150
+ align-items: center;
151
+ }
152
+
153
+ .card-size {
154
+ color: #64748b;
155
+ font-size: 0.875rem;
156
+ display: flex;
157
+ align-items: center;
158
+ gap: 0.25rem;
159
+ }
160
+
161
+ .download-btn {
162
+ background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
163
+ color: white;
164
+ border: none;
165
+ padding: 0.75rem 1.5rem;
166
+ border-radius: 12px;
167
+ font-weight: 600;
168
+ font-size: 0.875rem;
169
+ cursor: pointer;
170
+ transition: all 0.3s ease;
171
+ position: relative;
172
+ overflow: hidden;
173
+ display: flex;
174
+ align-items: center;
175
+ gap: 0.5rem;
176
+ text-decoration: none;
177
+ }
178
+
179
+ .download-btn:hover {
180
+ transform: translateY(-2px);
181
+ box-shadow: 0 10px 25px rgba(99, 102, 241, 0.4);
182
+ }
183
+
184
+ .download-btn::after {
185
+ content: '';
186
+ position: absolute;
187
+ top: 0;
188
+ left: -100%;
189
+ width: 100%;
190
+ height: 100%;
191
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
192
+ transition: left 0.7s;
193
+ }
194
+
195
+ .download-btn:hover::after {
196
+ left: 100%;
197
+ }
198
+
199
+ .pulse-dot {
200
+ position: absolute;
201
+ top: 0.5rem;
202
+ right: 0.5rem;
203
+ width: 8px;
204
+ height: 8px;
205
+ background: #10b981;
206
+ border-radius: 50%;
207
+ animation: pulse 2s infinite;
208
+ }
209
+
210
+ @keyframes pulse {
211
+ 0%, 100% {
212
+ box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
213
+ }
214
+ 50% {
215
+ box-shadow: 0 0 0 10px rgba(16, 185, 129, 0);
216
+ }
217
+ }
218
+ </style>
219
+
220
+ <div class="card">
221
+ <div class="pulse-dot"></div>
222
+ <div class="card-image">
223
+ <img src="http://static.photos/technology/640x360/${seed}" alt="${name}" loading="lazy">
224
+ <div class="card-category ${categoryClass}">
225
+ ${category}
226
+ </div>
227
+ </div>
228
+ <div class="card-content">
229
+ <h3 class="card-title">${name}</h3>
230
+ <div class="card-meta">
231
+ <div class="card-version">
232
+ <i data-feather="tag"></i>
233
+ v${version}
234
+ </div>
235
+ <div class="card-rating">
236
+ <i data-feather="star"></i>
237
+ 4.8
238
+ </div>
239
+ </div>
240
+ <p class="card-description">
241
+ Premium version with enhanced features and full functionality. Includes all updates and premium support.
242
+ </p>
243
+ <div class="card-footer">
244
+ <div class="card-size">
245
+ <i data-feather="hard-drive"></i>
246
+ ${Math.floor(Math.random() * 500) + 100} MB
247
+ </div>
248
+ <a href="${url}" target="_blank" class="download-btn">
249
+ <i data-feather="download"></i>
250
+ Download Now
251
+ </a>
252
+ </div>
253
+ </div>
254
+ </div>
255
+ `;
256
+
257
+ // Initialize feather icons
258
+ setTimeout(() => {
259
+ if (typeof feather !== 'undefined') {
260
+ feather.replace();
261
+ }
262
+ }, 100);
263
+ }
264
+ }
265
+
266
+ customElements.define('software-card', SoftwareCard);
index.html CHANGED
@@ -1,19 +1,191 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>SoftFetch Pro - Premium Software Hub</title>
7
+ <link rel="icon" type="image/x-icon" href="/static/favicon.ico">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
11
+ <link rel="stylesheet" href="style.css">
12
+ <link rel="preconnect" href="https://fonts.googleapis.com">
13
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
14
+ <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Poppins:wght@700;800;900&display=swap" rel="stylesheet">
15
+ <script src="components/navbar.js"></script>
16
+ <script src="components/software-card.js"></script>
17
+ <script src="components/footer.js"></script>
18
+ <script>
19
+ tailwind.config = {
20
+ theme: {
21
+ extend: {
22
+ fontFamily: {
23
+ 'inter': ['Inter', 'sans-serif'],
24
+ 'poppins': ['Poppins', 'sans-serif']
25
+ },
26
+ colors: {
27
+ 'primary': '#6366f1',
28
+ 'primary-dark': '#4f46e5',
29
+ 'secondary': '#10b981',
30
+ 'dark': '#0f172a',
31
+ 'darker': '#0a0f1c',
32
+ 'light': '#f8fafc'
33
+ },
34
+ animation: {
35
+ 'float': 'float 6s ease-in-out infinite',
36
+ 'pulse-slow': 'pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite',
37
+ 'shine': 'shine 3s ease-in-out infinite alternate',
38
+ 'button-glow': 'button-glow 2s ease-in-out infinite alternate',
39
+ 'slide-in': 'slide-in 0.5s ease-out'
40
+ }
41
+ }
42
+ }
43
+ }
44
+ </script>
45
+ </head>
46
+ <body class="bg-darker text-gray-300 font-inter">
47
+ <custom-navbar></custom-navbar>
48
+
49
+ <main class="pt-24 pb-20 px-4 md:px-8 lg:px-16">
50
+ <!-- Hero Section -->
51
+ <section class="max-w-7xl mx-auto mb-16 text-center">
52
+ <div class="relative overflow-hidden rounded-3xl bg-gradient-to-br from-dark via-darker to-primary/20 p-8 md:p-12 lg:p-16 border border-gray-800 shadow-2xl">
53
+ <div class="absolute -top-24 -right-24 w-64 h-64 bg-primary/10 rounded-full blur-3xl"></div>
54
+ <div class="absolute -bottom-24 -left-24 w-64 h-64 bg-secondary/10 rounded-full blur-3xl"></div>
55
+
56
+ <div class="relative z-10">
57
+ <h1 class="text-4xl md:text-6xl lg:text-7xl font-poppins font-black mb-6 text-transparent bg-clip-text bg-gradient-to-r from-primary via-purple-400 to-secondary animate-shine">
58
+ Premium Software Hub
59
+ </h1>
60
+ <p class="text-xl md:text-2xl mb-8 max-w-3xl mx-auto text-gray-400">
61
+ Discover exclusive software with premium features. All downloads are verified and ready for immediate access.
62
+ </p>
63
+ <div class="flex flex-wrap justify-center gap-4">
64
+ <a href="#software-grid" class="btn-primary px-8 py-4 text-lg font-semibold rounded-2xl flex items-center gap-3 group">
65
+ <span>Explore Software</span>
66
+ <i data-feather="arrow-down" class="group-hover:translate-y-1 transition-transform"></i>
67
+ </a>
68
+ <a href="#" class="btn-secondary px-8 py-4 text-lg font-semibold rounded-2xl flex items-center gap-3">
69
+ <i data-feather="shield"></i>
70
+ <span>Verified Downloads</span>
71
+ </a>
72
+ </div>
73
+ </div>
74
+ </div>
75
+ </section>
76
+
77
+ <!-- Stats Section -->
78
+ <section class="max-w-7xl mx-auto mb-16">
79
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
80
+ <div class="stat-card bg-dark/50 border border-gray-800 rounded-2xl p-6 backdrop-blur-sm">
81
+ <div class="flex items-center gap-4">
82
+ <div class="w-14 h-14 rounded-xl bg-primary/20 flex items-center justify-center">
83
+ <i data-feather="download" class="text-primary w-8 h-8"></i>
84
+ </div>
85
+ <div>
86
+ <h3 class="text-3xl font-bold text-white">14+</h3>
87
+ <p class="text-gray-400">Premium Software</p>
88
+ </div>
89
+ </div>
90
+ </div>
91
+ <div class="stat-card bg-dark/50 border border-gray-800 rounded-2xl p-6 backdrop-blur-sm">
92
+ <div class="flex items-center gap-4">
93
+ <div class="w-14 h-14 rounded-xl bg-secondary/20 flex items-center justify-center">
94
+ <i data-feather="check-circle" class="text-secondary w-8 h-8"></i>
95
+ </div>
96
+ <div>
97
+ <h3 class="text-3xl font-bold text-white">100%</h3>
98
+ <p class="text-gray-400">Verified Safe</p>
99
+ </div>
100
+ </div>
101
+ </div>
102
+ <div class="stat-card bg-dark/50 border border-gray-800 rounded-2xl p-6 backdrop-blur-sm">
103
+ <div class="flex items-center gap-4">
104
+ <div class="w-14 h-14 rounded-xl bg-purple-500/20 flex items-center justify-center">
105
+ <i data-feather="zap" class="text-purple-400 w-8 h-8"></i>
106
+ </div>
107
+ <div>
108
+ <h3 class="text-3xl font-bold text-white">Instant</h3>
109
+ <p class="text-gray-400">Direct Downloads</p>
110
+ </div>
111
+ </div>
112
+ </div>
113
+ </div>
114
+ </section>
115
+
116
+ <!-- Software Grid -->
117
+ <section id="software-grid" class="max-w-7xl mx-auto">
118
+ <div class="mb-10 text-center">
119
+ <h2 class="text-3xl md:text-4xl font-poppins font-bold mb-4 text-white">Featured Software Collection</h2>
120
+ <p class="text-gray-400 max-w-2xl mx-auto">Curated selection of premium software with enhanced features and performance.</p>
121
+ </div>
122
+
123
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
124
+ <!-- Software cards will be dynamically inserted here -->
125
+ </div>
126
+ </section>
127
+
128
+ <!-- CTA Section -->
129
+ <section class="max-w-4xl mx-auto mt-20 text-center">
130
+ <div class="relative overflow-hidden rounded-3xl bg-gradient-to-r from-primary/20 via-dark to-secondary/20 p-10 border border-gray-800">
131
+ <div class="absolute -top-10 -left-10 w-40 h-40 bg-primary/10 rounded-full blur-2xl"></div>
132
+ <div class="absolute -bottom-10 -right-10 w-40 h-40 bg-secondary/10 rounded-full blur-2xl"></div>
133
+
134
+ <div class="relative z-10">
135
+ <h2 class="text-3xl md:text-4xl font-poppins font-bold mb-6 text-white">Ready to Upgrade Your Experience?</h2>
136
+ <p class="text-xl mb-8 text-gray-300 max-w-2xl mx-auto">
137
+ Join thousands of users who have enhanced their workflow with our premium software collection.
138
+ </p>
139
+ <a href="#" class="btn-glow px-10 py-5 text-xl font-bold rounded-2xl inline-flex items-center gap-3">
140
+ <i data-feather="star"></i>
141
+ <span>Get All Premium Access</span>
142
+ </a>
143
+ </div>
144
+ </div>
145
+ </section>
146
+ </main>
147
+
148
+ <custom-footer></custom-footer>
149
+
150
+ <script src="script.js"></script>
151
+ <script>
152
+ feather.replace();
153
+
154
+ // Initialize software cards
155
+ document.addEventListener('DOMContentLoaded', function() {
156
+ const softwareData = [
157
+ { name: "Arturia Pigments 7.0.0", category: "Music Production", url: "https://ko.taiwebs.com/windows/download-arturia-pigments-8272.html", version: "7.0.0", seed: 8272 },
158
+ { name: "BeeCut 1.7.11.6", category: "Video Editing", url: "https://ko.taiwebs.com/windows/download-beecut-4660.html", version: "1.7.11.6", seed: 4660 },
159
+ { name: "Digiarty Aiarty Video Enhancer 3.3", category: "AI Tools", url: "https://ko.taiwebs.com/windows/download-digiarty-aiarty-video-enhancer-13862.html", version: "3.3", seed: 13862 },
160
+ { name: "4K Video Downloader Plus 25.4.4", category: "Utilities", url: "https://ko.taiwebs.com/windows/download-4k-video-downloader-617.html", version: "25.4.4", seed: 617 },
161
+ { name: "iFoneTool EasyDown 2.3.0", category: "iOS Tools", url: "https://ko.taiwebs.com/windows/download-ifonetool-easydown-14405.html", version: "2.3.0", seed: 14405 },
162
+ { name: "RyTuneX 1.5.2", category: "System Tools", url: "https://ko.taiwebs.com/windows/download-rytunex-11852.html", version: "1.5.2", seed: 11852 },
163
+ { name: "Wondershare Recoverit 14.0.11.7", category: "Data Recovery", url: "https://ko.taiwebs.com/windows/download-wondershare-recoverits-374.html", version: "14.0.11.7", seed: 374 },
164
+ { name: "Gilisoft AI Toolkit 10.6", category: "AI Tools", url: "https://ko.taiwebs.com/windows/download-gilisoft-ai-toolkit-9520.html", version: "10.6", seed: 9520 },
165
+ { name: "Leawo iOS Data Recovery 3.4.2.0", category: "iOS Tools", url: "https://ko.taiwebs.com/windows/download-leawo-ios-data-recovery-5628.html", version: "3.4.2.0", seed: 5628 },
166
+ { name: "Apeaksoft iOS Toolkit 1.1.70", category: "iOS Tools", url: "https://ko.taiwebs.com/windows/download-apeaksoft-ios-toolkit-554.html", version: "1.1.70", seed: 554 },
167
+ { name: "PVS-Studio 7.40.101452.2093", category: "Development", url: "https://ko.taiwebs.com/windows/download-pvs-studio-1480.html", version: "7.40.101452.2093", seed: 1480 },
168
+ { name: "CyberLink PerfectCam Premium 2.3.7821.0", category: "Video Tools", url: "https://ko.taiwebs.com/windows/download-cyberlink-perfectcam-premium-375.html", version: "2.3.7821.0", seed: 375 },
169
+ { name: "MakeMusic Finale 27.4.1.110", category: "Music Production", url: "https://ko.taiwebs.com/windows/download-makemusic-finale-1025.html", version: "27.4.1.110", seed: 1025 },
170
+ { name: "Soundify Vocal Remover 1.2.7", category: "Audio Tools", url: "https://ko.taiwebs.com/windows/download-soundify-vocal-remover-12737.html", version: "1.2.7", seed: 12737 },
171
+ { name: "Bootstrap Studio 7.1.2", category: "Development", url: "https://ko.taiwebs.com/windows/download-bootstrap-studio-2053.html", version: "7.1.2", seed: 2053 },
172
+ { name: "Autodesk VRED Design 2022.3", category: "3D Design", url: "https://ko.taiwebs.com/windows/download-autodesk-vred-design-1437.html", version: "2022.3", seed: 1437 },
173
+ { name: "Unity Pro 2020 2.7f1", category: "Game Development", url: "https://ko.taiwebs.com/windows/download-unity-3d-professional-775.html", version: "2020 2.7f1", seed: 775 }
174
+ ];
175
+
176
+ const gridContainer = document.querySelector('#software-grid .grid');
177
+
178
+ softwareData.forEach(software => {
179
+ const card = document.createElement('software-card');
180
+ card.setAttribute('name', software.name);
181
+ card.setAttribute('category', software.category);
182
+ card.setAttribute('url', software.url);
183
+ card.setAttribute('version', software.version);
184
+ card.setAttribute('seed', software.seed);
185
+ gridContainer.appendChild(card);
186
+ });
187
+ });
188
+ </script>
189
+ <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
190
+ </body>
191
+ </html>
script.js ADDED
@@ -0,0 +1,117 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // Main JavaScript for SoftFetch Pro
2
+
3
+ // Initialize tooltips for buttons
4
+ document.addEventListener('DOMContentLoaded', function() {
5
+ // Add tooltip functionality to download buttons
6
+ const downloadButtons = document.querySelectorAll('.download-btn');
7
+
8
+ downloadButtons.forEach(button => {
9
+ button.addEventListener('mouseenter', function() {
10
+ const tooltip = document.createElement('div');
11
+ tooltip.className = 'tooltip absolute -top-10 left-1/2 transform -translate-x-1/2 bg-dark text-white px-3 py-1 rounded-lg text-sm whitespace-nowrap z-50 border border-gray-700';
12
+ tooltip.textContent = 'Secure Download • Verified';
13
+
14
+ this.appendChild(tooltip);
15
+ });
16
+
17
+ button.addEventListener('mouseleave', function() {
18
+ const tooltip = this.querySelector('.tooltip');
19
+ if (tooltip) {
20
+ tooltip.remove();
21
+ }
22
+ });
23
+ });
24
+
25
+ // Add scroll animations
26
+ const observerOptions = {
27
+ threshold: 0.1,
28
+ rootMargin: '0px 0px -50px 0px'
29
+ };
30
+
31
+ const observer = new IntersectionObserver((entries) => {
32
+ entries.forEach(entry => {
33
+ if (entry.isIntersecting) {
34
+ entry.target.classList.add('animate-slide-in');
35
+ }
36
+ });
37
+ }, observerOptions);
38
+
39
+ // Observe all software cards and stat cards
40
+ document.querySelectorAll('software-card, .stat-card').forEach(card => {
41
+ observer.observe(card);
42
+ });
43
+
44
+ // Search functionality
45
+ const searchInput = document.getElementById('search-input');
46
+ if (searchInput) {
47
+ searchInput.addEventListener('input', function(e) {
48
+ const searchTerm = e.target.value.toLowerCase();
49
+ const softwareCards = document.querySelectorAll('software-card');
50
+
51
+ softwareCards.forEach(card => {
52
+ const name = card.getAttribute('name').toLowerCase();
53
+ const category = card.getAttribute('category').toLowerCase();
54
+
55
+ if (name.includes(searchTerm) || category.includes(searchTerm)) {
56
+ card.style.display = 'block';
57
+ setTimeout(() => {
58
+ card.style.opacity = '1';
59
+ card.style.transform = 'scale(1)';
60
+ }, 10);
61
+ } else {
62
+ card.style.opacity = '0';
63
+ card.style.transform = 'scale(0.9)';
64
+ setTimeout(() => {
65
+ card.style.display = 'none';
66
+ }, 300);
67
+ }
68
+ });
69
+ });
70
+ }
71
+ });
72
+
73
+ // Category filter functionality
74
+ function filterByCategory(category) {
75
+ const softwareCards = document.querySelectorAll('software-card');
76
+ const filterButtons = document.querySelectorAll('.filter-btn');
77
+
78
+ // Update active filter button
79
+ filterButtons.forEach(btn => {
80
+ if (btn.dataset.category === category) {
81
+ btn.classList.add('bg-primary', 'text-white');
82
+ btn.classList.remove('bg-dark', 'text-gray-400');
83
+ } else {
84
+ btn.classList.remove('bg-primary', 'text-white');
85
+ btn.classList.add('bg-dark', 'text-gray-400');
86
+ }
87
+ });
88
+
89
+ // Filter cards
90
+ softwareCards.forEach(card => {
91
+ const cardCategory = card.getAttribute('category');
92
+
93
+ if (category === 'all' || cardCategory === category) {
94
+ card.style.display = 'block';
95
+ setTimeout(() => {
96
+ card.style.opacity = '1';
97
+ card.style.transform = 'scale(1)';
98
+ }, 10);
99
+ } else {
100
+ card.style.opacity = '0';
101
+ card.style.transform = 'scale(0.9)';
102
+ setTimeout(() => {
103
+ card.style.display = 'none';
104
+ }, 300);
105
+ }
106
+ });
107
+ }
108
+
109
+ // Download counter simulation
110
+ let downloadCount = 14287;
111
+ const downloadCounter = document.getElementById('download-counter');
112
+ if (downloadCounter) {
113
+ setInterval(() => {
114
+ downloadCount += Math.floor(Math.random() * 5) + 1;
115
+ downloadCounter.textContent = downloadCount.toLocaleString();
116
+ }, 3000);
117
+ }
style.css CHANGED
@@ -1,28 +1,168 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
5
 
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
 
 
 
9
  }
10
 
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
16
  }
17
 
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
24
  }
25
 
26
- .card p:last-child {
27
- margin-bottom: 0;
 
 
28
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Custom CSS for SoftFetch Pro */
2
+
3
+ /* Global Styles */
4
+ * {
5
+ margin: 0;
6
+ padding: 0;
7
+ box-sizing: border-box;
8
+ }
9
+
10
+ html {
11
+ scroll-behavior: smooth;
12
+ }
13
+
14
  body {
15
+ font-family: 'Inter', sans-serif;
16
+ overflow-x: hidden;
17
+ background: linear-gradient(to bottom, #0a0f1c, #0f172a);
18
+ min-height: 100vh;
19
+ }
20
+
21
+ /* Custom Animations */
22
+ @keyframes float {
23
+ 0%, 100% {
24
+ transform: translateY(0px);
25
+ }
26
+ 50% {
27
+ transform: translateY(-20px);
28
+ }
29
+ }
30
+
31
+ @keyframes shine {
32
+ 0% {
33
+ background-position: -200% center;
34
+ }
35
+ 100% {
36
+ background-position: 200% center;
37
+ }
38
+ }
39
+
40
+ @keyframes button-glow {
41
+ 0% {
42
+ box-shadow: 0 0 20px rgba(99, 102, 241, 0.5);
43
+ }
44
+ 100% {
45
+ box-shadow: 0 0 30px rgba(99, 102, 241, 0.8), 0 0 40px rgba(99, 102, 241, 0.4);
46
+ }
47
+ }
48
+
49
+ @keyframes slide-in {
50
+ 0% {
51
+ opacity: 0;
52
+ transform: translateY(30px);
53
+ }
54
+ 100% {
55
+ opacity: 1;
56
+ transform: translateY(0);
57
+ }
58
+ }
59
+
60
+ @keyframes pulse-glow {
61
+ 0%, 100% {
62
+ box-shadow: 0 0 15px rgba(16, 185, 129, 0.5);
63
+ }
64
+ 50% {
65
+ box-shadow: 0 0 25px rgba(16, 185, 129, 0.8);
66
+ }
67
+ }
68
+
69
+ /* Custom Button Styles */
70
+ .btn-primary {
71
+ background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
72
+ color: white;
73
+ border: none;
74
+ transition: all 0.3s ease;
75
+ position: relative;
76
+ overflow: hidden;
77
+ animation: slide-in 0.8s ease-out;
78
+ }
79
+
80
+ .btn-primary:hover {
81
+ transform: translateY(-3px);
82
+ box-shadow: 0 20px 40px rgba(99, 102, 241, 0.3);
83
+ }
84
+
85
+ .btn-primary::after {
86
+ content: '';
87
+ position: absolute;
88
+ top: 0;
89
+ left: -100%;
90
+ width: 100%;
91
+ height: 100%;
92
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
93
+ transition: left 0.7s;
94
+ }
95
+
96
+ .btn-primary:hover::after {
97
+ left: 100%;
98
+ }
99
+
100
+ .btn-secondary {
101
+ background: rgba(30, 41, 59, 0.7);
102
+ color: #cbd5e1;
103
+ border: 1px solid rgba(99, 102, 241, 0.3);
104
+ backdrop-filter: blur(10px);
105
+ transition: all 0.3s ease;
106
+ }
107
+
108
+ .btn-secondary:hover {
109
+ background: rgba(99, 102, 241, 0.1);
110
+ border-color: #6366f1;
111
+ color: white;
112
+ transform: translateY(-2px);
113
  }
114
 
115
+ .btn-glow {
116
+ background: linear-gradient(135deg, #6366f1 0%, #10b981 100%);
117
+ color: white;
118
+ border: none;
119
+ animation: button-glow 2s ease-in-out infinite alternate, pulse-glow 2s ease-in-out infinite;
120
+ transition: all 0.3s ease;
121
  }
122
 
123
+ .btn-glow:hover {
124
+ transform: scale(1.05);
125
+ animation: none;
126
+ box-shadow: 0 0 40px rgba(99, 102, 241, 0.6), 0 0 60px rgba(16, 185, 129, 0.4);
 
127
  }
128
 
129
+ /* Card Hover Effects */
130
+ .stat-card {
131
+ transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
 
 
 
132
  }
133
 
134
+ .stat-card:hover {
135
+ transform: translateY(-10px);
136
+ border-color: #6366f1;
137
+ box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
138
  }
139
+
140
+ /* Custom Scrollbar */
141
+ ::-webkit-scrollbar {
142
+ width: 10px;
143
+ }
144
+
145
+ ::-webkit-scrollbar-track {
146
+ background: #0f172a;
147
+ }
148
+
149
+ ::-webkit-scrollbar-thumb {
150
+ background: linear-gradient(180deg, #6366f1, #10b981);
151
+ border-radius: 5px;
152
+ }
153
+
154
+ ::-webkit-scrollbar-thumb:hover {
155
+ background: linear-gradient(180deg, #4f46e5, #0d9c6f);
156
+ }
157
+
158
+ /* Responsive Adjustments */
159
+ @media (max-width: 768px) {
160
+ .stat-card {
161
+ text-align: center;
162
+ }
163
+
164
+ .stat-card .flex {
165
+ flex-direction: column;
166
+ gap: 1rem;
167
+ }
168
+ }