diff --git a/README-EN.md b/README-EN.md
deleted file mode 100644
index 5f8b95e..0000000
--- a/README-EN.md
+++ /dev/null
@@ -1,113 +0,0 @@
-# Freedom Loader
-
-
-
-
-
-
-
-
-
-> This project aims to enable free, open-source, and unrestricted downloading of Video/Audio content. Eventually, it will allow users to choose
-
-## 🚀 Features
-
-- âś… Video download with metadata(MP4)
-- âś… Audio-only download with thumbail and metadata(MP3)
-- âś… Full playlist support
-- âś… Automatic metadata retrieval (title, duration, etc.)
-- âś… Detailed logs: console and rotating files (7 days)
-- âś… Custom output path selection with saving
-- âś… Multiple graphical themes available for interface customization
-- âś… Simple, intuitive, and responsive interface
-- âś… Notification system when download finished (Click = Open Output Folder)
-
----
-
-## đź”§ Installation
-
-To install the application, simply download the installer from the releases section. Take the latest version and run it.
-
----
-
-## âť“ Frequently Asked Questions
-
-### _Where are my downloaded files located?_
-
-In your computer's Downloads folder (**C:\Users\YOUR NAME\Downloads**), inside a folder named **Freedom Loader Output**
-
-
-### _After installing and running the program, I get an error_
-
-Try restarting the application, checking the logs, or opening the browser's developer console by pressing `CTRL + SHIFT + I` or by going to `View > Toggle Developer Tools`
-
-
-
-
-
-
-
- If you'd like to support me, you can donate via
-
-
-
-
+
+
+
+
+ Si vous souhaitez m’encourager, vous pouvez faire un don sur
+
+
+
+
-
+
- Si vous souhaitez m’encourager, vous pouvez faire un don sur
+ If you'd like to support me, you can donate via
@@ -102,12 +103,12 @@ Voici comment participer :
---
-## đź“„ Licence
+## đź“„ License
-Ce projet est sous licence **MIT** — voir le fichier [LICENSE](./LICENSE) pour plus d’informations.
+This project is licensed under the **MIT License** — see the [LICENSE](./LICENSE) file for details.
---
## ⚠️ Disclaimer
-J’ai bien évidemment eu recours à l’IA pour m’aider sur certaines parties du projet. Utilisez l’IA avec parcimonie et soyez toujours conscient de ce que vous faites.
+I have obviously used AI assistance for some parts of this project. Use AI sparingly and always be aware of what you are doing.
diff --git a/package-lock.json b/package-lock.json
index c991929..b8dfdd6 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,15 +1,16 @@
{
"name": "freedom-loader",
- "version": "1.1.3",
+ "version": "1.2.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "freedom-loader",
- "version": "1.1.3",
+ "version": "1.2.0",
"dependencies": {
"chalk": "^4.1.2",
"debug": "^4.4.1",
+ "discord-rpc": "^4.0.1",
"electron-squirrel-startup": "^1.0.1",
"express": "^5.1.0",
"winston": "^3.17.0",
@@ -678,9 +679,9 @@
}
},
"node_modules/@electron/packager": {
- "version": "18.4.2",
- "resolved": "https://registry.npmjs.org/@electron/packager/-/packager-18.4.2.tgz",
- "integrity": "sha512-5wr/6YoOhBlQoAloquKksY21Pa/2Eg4kq4y/+jOX+9smAFS4fcM3kG3KyhU/zEuwitxRjquq9/KxDNNhJbhc+w==",
+ "version": "18.4.4",
+ "resolved": "https://registry.npmjs.org/@electron/packager/-/packager-18.4.4.tgz",
+ "integrity": "sha512-fTUCmgL25WXTcFpM1M72VmFP8w3E4d+KNzWxmTDRpvwkfn/S206MAtM2cy0GF78KS9AwASMOUmlOIzCHeNxcGQ==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
@@ -1155,9 +1156,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "22.17.2",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.17.2.tgz",
- "integrity": "sha512-gL6z5N9Jm9mhY+U2KXZpteb+09zyffliRkZyZOHODGATyC5B1Jt/7TzuuiLkFsSUMLbS1OLmlj/E+/3KF4Q/4w==",
+ "version": "22.18.0",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.18.0.tgz",
+ "integrity": "sha512-m5ObIqwsUp6BZzyiy4RdZpzWGub9bqLJMvZDD0QMXhxjqMHMENlj+SqF5QxoUwaQNFe+8kz8XM8ZQhqkQPTgMQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1578,9 +1579,9 @@
}
},
"node_modules/app-builder-lib/node_modules/isbinaryfile": {
- "version": "5.0.4",
- "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.4.tgz",
- "integrity": "sha512-YKBKVkKhty7s8rxddb40oOkuP0NbaeXrQvLin6QMHL7Ypiy2RW9LwOVrVgZRyOrhQlayMd9t+D8yDy8MKFTSDQ==",
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.6.tgz",
+ "integrity": "sha512-I+NmIfBHUl+r2wcDd6JwE9yWje/PIVY/R5/CmV8dXLZd5K+L9X2klAOwfAHNnondLXkbHyTAleQAWonpTJBTtw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1739,6 +1740,16 @@
],
"license": "MIT"
},
+ "node_modules/bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
"node_modules/bl": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
@@ -2676,6 +2687,19 @@
"p-limit": "^3.1.0 "
}
},
+ "node_modules/discord-rpc": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/discord-rpc/-/discord-rpc-4.0.1.tgz",
+ "integrity": "sha512-HOvHpbq5STRZJjQIBzwoKnQ0jHplbEWFWlPDwXXKm/bILh4nzjcg7mNqll0UY7RsjFoaXA7e/oYb/4lvpda2zA==",
+ "license": "MIT",
+ "dependencies": {
+ "node-fetch": "^2.6.1",
+ "ws": "^7.3.1"
+ },
+ "optionalDependencies": {
+ "register-scheme": "github:devsnek/node-register-scheme"
+ }
+ },
"node_modules/dmg-builder": {
"version": "26.0.12",
"resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.0.12.tgz",
@@ -2794,9 +2818,9 @@
}
},
"node_modules/electron": {
- "version": "37.3.1",
- "resolved": "https://registry.npmjs.org/electron/-/electron-37.3.1.tgz",
- "integrity": "sha512-7DhktRLqhe6OJh/Bo75bTI0puUYEmIwSzMinocgO63mx3MVjtIn2tYMzLmAleNIlud2htkjpsMG2zT4PiTCloA==",
+ "version": "37.4.0",
+ "resolved": "https://registry.npmjs.org/electron/-/electron-37.4.0.tgz",
+ "integrity": "sha512-HhsSdWowE5ODOeWNc/323Ug2C52mq/TqNBG+4uMeOA3G2dMXNc/nfyi0RYu1rJEgiaJLEjtHveeZZaYRYFsFCQ==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -3423,7 +3447,6 @@
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
"integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
- "dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
@@ -3819,6 +3842,13 @@
"moment": "^2.29.1"
}
},
+ "node_modules/file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "license": "MIT",
+ "optional": true
+ },
"node_modules/filelist": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
@@ -5616,7 +5646,6 @@
"version": "1.7.2",
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz",
"integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==",
- "dev": true,
"license": "MIT",
"optional": true
},
@@ -5634,7 +5663,6 @@
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
"integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
- "dev": true,
"license": "MIT",
"dependencies": {
"whatwg-url": "^5.0.0"
@@ -6507,6 +6535,17 @@
"node": ">= 10.13.0"
}
},
+ "node_modules/register-scheme": {
+ "version": "0.0.2",
+ "resolved": "git+ssh://git@github.com/devsnek/node-register-scheme.git#e7cc9a63a1f512565da44cb57316d9fb10750e17",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "bindings": "^1.3.0",
+ "node-addon-api": "^1.3.0"
+ }
+ },
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -7525,7 +7564,6 @@
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
- "dev": true,
"license": "MIT"
},
"node_modules/trim-repeated": {
@@ -7750,14 +7788,12 @@
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
- "dev": true,
"license": "BSD-2-Clause"
},
"node_modules/whatwg-url": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
- "dev": true,
"license": "MIT",
"dependencies": {
"tr46": "~0.0.3",
@@ -7961,6 +7997,27 @@
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"license": "ISC"
},
+ "node_modules/ws": {
+ "version": "7.5.10",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz",
+ "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.3.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/xmlbuilder": {
"version": "15.1.1",
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
diff --git a/package.json b/package.json
index fbab7a4..efe91b8 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "freedom-loader",
"productName": "Freedom Loader",
- "version": "1.1.3",
+ "version": "1.2.0",
"author": "MasterAcnolo",
"description": "Freedom Loader",
"main": "main.js",
@@ -14,6 +14,7 @@
"dependencies": {
"chalk": "^4.1.2",
"debug": "^4.4.1",
+ "discord-rpc": "^4.0.1",
"electron-squirrel-startup": "^1.0.1",
"express": "^5.1.0",
"winston": "^3.17.0",
@@ -44,7 +45,7 @@
},
"asar": false,
"extraResources": [
- {
+ {
"from": "build/confirm-icon.png",
"to": "confirm-icon.png"
}
diff --git a/public/assets/images/Chirac.png b/public/assets/images/Chirac.png
new file mode 100644
index 0000000..f40b8e7
Binary files /dev/null and b/public/assets/images/Chirac.png differ
diff --git a/public/assets/images/cyberpunk4.webp b/public/assets/images/Cyberpunk.webp
similarity index 100%
rename from public/assets/images/cyberpunk4.webp
rename to public/assets/images/Cyberpunk.webp
diff --git a/public/assets/images/NF.jpg b/public/assets/images/NF.jpg
new file mode 100644
index 0000000..f8d4f55
Binary files /dev/null and b/public/assets/images/NF.jpg differ
diff --git a/public/assets/images/Vilbrequin.avif b/public/assets/images/Vilbrequin.avif
deleted file mode 100644
index e115f98..0000000
Binary files a/public/assets/images/Vilbrequin.avif and /dev/null differ
diff --git a/public/assets/images/Vilbrequin.webp b/public/assets/images/Vilbrequin.webp
new file mode 100644
index 0000000..02c5d06
Binary files /dev/null and b/public/assets/images/Vilbrequin.webp differ
diff --git a/public/assets/images/goat.webp b/public/assets/images/goat.webp
deleted file mode 100644
index 4411f79..0000000
Binary files a/public/assets/images/goat.webp and /dev/null differ
diff --git a/public/assets/images/spicy.webp b/public/assets/images/spicy.webp
index da2b756..2f83d64 100644
Binary files a/public/assets/images/spicy.webp and b/public/assets/images/spicy.webp differ
diff --git a/public/script/customthemes.js b/public/script/customthemes.js
index f39c271..0510f8d 100644
--- a/public/script/customthemes.js
+++ b/public/script/customthemes.js
@@ -21,6 +21,7 @@ const themes = {
default: "Default",
dark: "Sombre",
light: "Clair",
+ nf : "NF",
chirac: "Chirac",
fanatic: "Fanatic",
cyberpunk: "Cyberpunk",
@@ -32,6 +33,7 @@ const themeSubtitles = {
default: "Because why not?",
dark: "Darkness is my ally",
light: "Qui aime ce thème ?",
+ nf : "You call it music, i call it my Therapist",
chirac: "J'aime les pommes",
fanatic: "Always Fnatic !",
cyberpunk: "Wake up, choom. We’ve got a city to burn.",
diff --git a/public/styles/components/editpathbutton.css b/public/styles/components/editpathbutton.css
index 7668587..3c00a38 100644
--- a/public/styles/components/editpathbutton.css
+++ b/public/styles/components/editpathbutton.css
@@ -29,13 +29,14 @@
color: var(--form-button-text-color);
border: none;
padding: 0.3em 0.8em;
- border-radius: 6px;
+ border-radius: 8px;
cursor: pointer;
transition: background-color 0.3s ease, transform 0.2s ease;
box-shadow: 0 2px 5px rgba(0,0,0,0.2);
+ font-size: 0.9rem;
+ font-weight: 550;
}
.download-path button#changePath:hover {
background-color: var(--form-button-bg-hover-color);
- transform: scale(1.05);
}
diff --git a/public/styles/theme/chirac-theme.css b/public/styles/theme/chirac-theme.css
index 02b1cce..8efbaac 100644
--- a/public/styles/theme/chirac-theme.css
+++ b/public/styles/theme/chirac-theme.css
@@ -1,7 +1,7 @@
body.chirac {
/* Background image Chirac */
- background-image: url('../../assets/images/goat.webp');
- background-position: right;
+ background-image: url('../../assets/images/Chirac.png');
+ /* background-position: right; */
background-repeat: no-repeat;
background-size: cover;
background-attachment: fixed;
diff --git a/public/styles/theme/cyberpunk-theme.css b/public/styles/theme/cyberpunk-theme.css
index 434210f..0cecee6 100644
--- a/public/styles/theme/cyberpunk-theme.css
+++ b/public/styles/theme/cyberpunk-theme.css
@@ -36,7 +36,7 @@ body.cyberpunk {
}
body.cyberpunk {
- background-image: url('../../assets/images/cyberpunk4.webp');
+ background-image: url('../../assets/images/Cyberpunk.webp');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
diff --git a/public/styles/theme/nf-theme.css b/public/styles/theme/nf-theme.css
new file mode 100644
index 0000000..198b6a7
--- /dev/null
+++ b/public/styles/theme/nf-theme.css
@@ -0,0 +1,48 @@
+body.nf {
+ /* Couleurs générales */
+ --background-color: #1a1a1a; /* fond sombre neutre */
+ --default-text-color: #e6dfd5; /* texte beige clair */
+ --subtitle-color: #f5f0e6; /* beige très clair (titres) */
+ --mp3-text-color: #d8cfc2; /* texte checkbox */
+
+ /* Formulaire */
+ --form-bg-color: #2a2a2a; /* fond formulaire gris sombre */
+ --form-input-bg-color: #222222; /* fond inputs sombre */
+ --form-input-border-color: #4a4036; /* bordure beige/brun */
+ --form-input-border-focus-color: #cbb89d; /* beige doré en focus */
+ --form-input-text-color: #f0e8dd; /* texte clair/beige */
+ --form-input-placeholder-color: #9a8f80; /* placeholder beige/gris */
+ --form-button-bg-color: #cbb89d; /* bouton beige doré */
+ --form-button-text-color: #1a1a1a; /* texte sombre */
+ --form-button-bg-hover-color: #b7a588; /* hover beige plus foncé */
+
+ /* Checkbox */
+ --checkbox-bg-default: #4a4036; /* brun/gris */
+ --checkbox-bg-checked: #cbb89d; /* beige doré */
+ --checkbox-checkmark-border-color: #1a1a1a; /* noir profond */
+ --checkbox-pulse-color: rgba(203,184,157,0.3); /* halo beige doux */
+
+ /* Download status */
+ --download-status-color: #cbb89d; /* beige doré */
+
+ /* Video Info Box */
+ --infos-box-color: #2a2a2a; /* fond sombre */
+ --video-info-text-color: #e6dfd5; /* texte beige clair */
+ --video-info-heading-color: #f5f0e6; /* titres beige clair */
+ --video-info-list-color: #d8cfc2; /* texte liste */
+ --video-info-list-strong-color: #ffffff; /* texte fort blanc cassé */
+ --video-info-link-color: #cbb89d; /* liens beige doré */
+ --video-info-link-hover-color: #b7a588; /* hover beige plus foncé */
+}
+
+/* Fond inspiré de ton image beige */
+body.nf {
+ background-image: url('../../assets/images/NF.jpg'); /* mets ton image ici */
+ background-size: cover;
+ background-position: 70% center;
+ background-attachment: fixed;
+}
+
+body.nf .download-path {
+ color: var(--default-text-color);
+}
diff --git a/public/styles/theme/spicy-theme.css b/public/styles/theme/spicy-theme.css
index b4f2c93..a3046e7 100644
--- a/public/styles/theme/spicy-theme.css
+++ b/public/styles/theme/spicy-theme.css
@@ -1,8 +1,14 @@
+/*
+
+
+
+*/
+
body.spicy {
/* Couleurs générales */
--background-color: #121212; /* fond noir profond */
- --default-text-color: #f5f5f5; /* texte clair */
- --subtitle-color: #e29191; /* accent rouge piment */
+ --default-text-color: #581010; /* texte clair */
+ --subtitle-color: #3d0909; /* accent rouge piment */
--mp3-text-color: #ffffff; /* texte checkbox inline */
/* Formulaire */
@@ -37,8 +43,8 @@ body.spicy {
/* Optionnel: background piments */
body.spicy {
- background-image: url('../../assets/images/spicy.webp');
- background-size: cover;
+ background-image: url('../../assets/images/Spicy.webp');
+ background-size:contain;
background-position: center;
background-attachment: fixed;
}
diff --git a/public/styles/theme/themeimport.css b/public/styles/theme/themeimport.css
index 82d1565..3748f0c 100644
--- a/public/styles/theme/themeimport.css
+++ b/public/styles/theme/themeimport.css
@@ -5,4 +5,5 @@
@import url("light-theme.css");
@import url("cyberpunk-theme.css");
@import url("spicy-theme.css");
-@import url("vilbrequin-theme.css");
\ No newline at end of file
+@import url("vilbrequin-theme.css");
+@import url("nf-theme.css");
\ No newline at end of file
diff --git a/public/styles/theme/vilbrequin-theme.css b/public/styles/theme/vilbrequin-theme.css
index 9a89dea..ec9df97 100644
--- a/public/styles/theme/vilbrequin-theme.css
+++ b/public/styles/theme/vilbrequin-theme.css
@@ -37,7 +37,7 @@ body.vilbrequin {
/* Optionnel: motif turbo ou jantes */
body.vilbrequin {
- background-image: url('../../assets/images/Vilbrequin.avif'); /* adapte ton image */
+ background-image: url('../../assets/images/Vilbrequin.webp'); /* adapte ton image */
background-size: cover;
background-position: center;
background-attachment: fixed;
diff --git a/server/discordRPC.js b/server/discordRPC.js
new file mode 100644
index 0000000..c6e4724
--- /dev/null
+++ b/server/discordRPC.js
@@ -0,0 +1,32 @@
+// discordRPC.js
+const RPC = require("discord-rpc");
+
+const clientId = "1410934537051181146";
+const rpc = new RPC.Client({ transport: "ipc" });
+
+function startRPC() {
+ rpc.on("ready", () => {
+ console.log("✅ Connecté à Discord !");
+
+ const presence = {
+ largeImageKey: "icon",
+ smallImageKey: "acnolo_pfp",
+ smallImageText: "By MasterAcnolo",
+ startTimestamp: new Date(), // compteur de temps
+ details: "github.com/MasterAcnolo/Freedom-Loader",
+ };
+
+ rpc.setActivity(presence);
+
+ // Mise Ă jour toutes les 15 secondes si tu veux garder le compteur Ă jour
+ setInterval(() => {
+ rpc.setActivity(presence);
+ }, 15000);
+ });
+
+ rpc.login({ clientId }).catch(err => {
+ console.error("Erreur Discord RPC :", err);
+ });
+}
+
+module.exports = { startRPC };
diff --git a/server/routes/download.js b/server/routes/download.js
index c3b79c6..a0ece15 100644
--- a/server/routes/download.js
+++ b/server/routes/download.js
@@ -23,7 +23,7 @@ const logger = require("../logger").logger;
// Path vers le fichier exécutable yt-dlp (outil tiers pour le téléchargement)
// const ytDlpPath = path.join(__dirname, '../../yt-dlp.exe');
-const ytDlpPath = path.join(__dirname, '../../yt-dlp 2025.08.20.exe');
+const ytDlpPath = path.join(__dirname, '../../yt-dlp 2025.08.27.exe');
router.post("/", (req, res) => {
try {
@@ -78,7 +78,7 @@ router.post("/", (req, res) => {
// --restrict-filenames pour éviter les caractères problématiques dans les noms
const args = [
"--no-continue", // pas de reprise, c'est un choix que j'ai fait voila
- "--restrict-filenames", // noms de fichiers sans caractères spéciaux (Cyrilique, accents, etc.)
+ //"--restrict-filenames", // noms de fichiers sans caractères spéciaux (Cyrilique, accents, etc.)
"--no-overwrites", // évite d'écraser un fichier existant
"--embed-thumbnail", // ajoute la pochette
"--add-metadata", // ajoute les tags (titre, artiste, etc.)
diff --git a/server/routes/info.js b/server/routes/info.js
index 233134f..92ba953 100644
--- a/server/routes/info.js
+++ b/server/routes/info.js
@@ -24,7 +24,7 @@ const fs = require("fs");
const { logger } = require("../logger"); // On récupère ton logger Winston
// Path absolu vers l'exécutable yt-dlp
-const ytDlpPath = path.join(__dirname, '../../yt-dlp 2025.08.20.exe');
+const ytDlpPath = path.join(__dirname, '../../yt-dlp 2025.08.27.exe');
// Vérification que yt-dlp.exe existe bien au lancement du module
if (!fs.existsSync(ytDlpPath)) {
diff --git a/server/server.js b/server/server.js
index 54ba18f..5433dff 100644
--- a/server/server.js
+++ b/server/server.js
@@ -101,3 +101,6 @@ process.on("SIGTERM", () => { // Capture kill ou arrĂŞt du process
// Export de la fonction startServer pour permettre son appel depuis d’autres fichiers
module.exports = { startServer };
+
+const { startRPC } = require("./discordRPC");
+startRPC();
diff --git a/yt-dlp 2025.08.20.exe b/yt-dlp 2025.08.27.exe
similarity index 94%
rename from yt-dlp 2025.08.20.exe
rename to yt-dlp 2025.08.27.exe
index 7c2e8fb..e342001 100644
Binary files a/yt-dlp 2025.08.20.exe and b/yt-dlp 2025.08.27.exe differ