{"id":28477417,"url":"https://github.com/mateodevcode/w-music","last_synced_at":"2025-07-05T12:36:24.392Z","repository":{"id":296846057,"uuid":"994292961","full_name":"mateodevcode/w-music","owner":"mateodevcode","description":"Reproductor de musica tipo youtube music","archived":false,"fork":false,"pushed_at":"2025-06-02T21:44:30.000Z","size":340,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-02T23:03:44.613Z","etag":null,"topics":["youtube-api","youtube-music"],"latest_commit_sha":null,"homepage":"https://w-music.onrender.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mateodevcode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-01T16:26:00.000Z","updated_at":"2025-06-02T21:46:54.000Z","dependencies_parsed_at":"2025-06-03T08:32:02.814Z","dependency_job_id":null,"html_url":"https://github.com/mateodevcode/w-music","commit_stats":null,"previous_names":["mateodevcode/w-music"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mateodevcode/w-music","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateodevcode%2Fw-music","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateodevcode%2Fw-music/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateodevcode%2Fw-music/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateodevcode%2Fw-music/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mateodevcode","download_url":"https://codeload.github.com/mateodevcode/w-music/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateodevcode%2Fw-music/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262739105,"owners_count":23356651,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["youtube-api","youtube-music"],"created_at":"2025-06-07T16:13:24.026Z","updated_at":"2025-06-30T08:32:32.065Z","avatar_url":"https://github.com/mateodevcode.png","language":"JavaScript","readme":"# w-music\n[![image](https://github.com/user-attachments/assets/6d05effe-cc91-4b59-86bf-70d8117f5046)](https://w-music.onrender.com)\n\n## Deploy on Render\nPara visualizar la pagina desplegada en Render puedes dar click en el siguiente enlace. [Ir a la App Web](https://w-music.onrender.com)\n\n⚠️ Es recomendable esperar 1 min para que el servidor cargue como es gratis 🤷‍♂️.\n\n**🎬🍿 ¡Descubre W-Music! Tu Destino Gratis para escuchar musica 🍿🎬** ¡Hola a todos! 😄 Estoy súper emocionado de presentarles **W-Music**, una App web diseñada para que disfrutes de tu Musica favorita totalmente gratis. 🎉 He creado esta plataforma utilizando **Python + FastAPI**, **Vite  + React** y **TailwindCSS**, combinando tecnología moderna con una experiencia de usuario increíble. 🚀\n\n[![image](https://github.com/user-attachments/assets/96526c89-f4d0-4b74-8b21-f52ddce86cb8)](https://w-music.onrender.com)\n\n\n- 🔍 Buscar canciones usando la API no oficial de **YouTube Music**.\n- 🎧 Obtener el **streaming de audio** directamente desde YouTube\n- 🌐 Servir un frontend moderno hecho en **Vite/React**.\n- 🚀 Usar todo desde un solo backend gracias a FastAPI.\n\n\n---\n\n## 🧩 Tecnologías utilizadas\n\n| Tecnología     | Descripción                                       |\n|----------------|---------------------------------------------------|\n| **FastAPI**    | Backend rápido y moderno para APIs REST           |\n| **YTMusicAPI** | Búsquedas en YouTube Music                        |\n| **yt-dlp**     | Extraer el audio directo desde YouTube            |\n| **Vite + React** | Interfaz moderna y rápida                      |\n| **Uvicorn**    | Servidor ASGI para ejecutar FastAPI               |\n| **CORS**       | Permitir peticiones entre frontend y backend      |\n\n---\n\n## \u003cli\u003eBackend\u003c/li\u003e\n[![My Skills](https://skillicons.dev/icons?i=python,fastapi,)](https://skillicons.dev)\n\n## \u003cli\u003eFrontend\u003c/li\u003e\n[![My Skills](https://skillicons.dev/icons?i=react,vite,tailwind,)](https://skillicons.dev)\n\n\n## 📌 ¿Qué es este proyecto?\n\n`YouTube Music Audio Streamer` es una app de streaming de música que:\n\n1. Utiliza `ytmusicapi` para buscar canciones en YouTube Music.\n2. Usa `yt-dlp` para extraer el enlace directo del audio del video.\n3. Expone una API REST con FastAPI.\n4. Sirve un frontend hecho con React/Vite para buscar y escuchar canciones fácilmente.\n\n## 🎥 Demostración rápida\n[Ir a la App Web](https://w-music.onrender.com)\n\n   \n## 🚀 Instalación paso a paso\n\n### 1. Clonar el proyecto\n\n```bash\ngit clone https://github.com/tu_usuario/tu_repositorio.git\ncd w-music\n```\n\n## 2. Instalar dependencias del backend\n\n```bash\npip install -r requirements.txt\n```\n⚠️ Requiere tener ffmpeg instalado para que yt-dlp funcione correctamente.\n\n\n## 3. Construir el frontend\n\n```bash\ncd frontend\nnpm install\nnpm run build\n```\nEsto genera la carpeta dist/ que FastAPI sirve como frontend.\n\n## 4. Ejecutar el servidor\n\n```bash\ncd ..\nuvicorn backend.main:app --reload\n```\n\n# 🌐 Endpoints disponibles\n## 🔎 Buscar canciones\nGET /search?query={nombre}\n### Ejemplo:\n```bash\nGET /search?query=Linkin Park\n```\n### Respuesta:\n```bash\n[\n  {\n    \"title\": \"Numb\",\n    \"artist\": \"Linkin Park\",\n    \"thumbnail\": \"https://...\",\n    \"videoId\": \"abcd123\",\n    \"duration\": \"3:05\",\n    \"views\": \"98M\"\n  }\n]\n```\n\n## 🎧 Obtener URL de audio\nGET /stream/{video_id}\n### Ejemplo:\n```bash\nGET /stream/abcd123\n```\n### Respuesta:\n```bash\n{\n  \"audio_url\": \"https://rr3---sn-....googlevideo.com/videoplayback?...\"\n}\n```\n\n# 🖥️ Frontend (interfaz)\nUna vez ejecutado el servidor y compilado el frontend, visita:\n```bash\nhttp://localhost:8000/\n```\n\nAllí podrás:\n- Escribir el nombre de una canción\n- Ver resultados con miniaturas\n- Reproducir el audio sin abrir YouTube\n\n# 🛡️ CORS\nEl backend permite peticiones desde cualquier origen para facilitar la integración con frontends externos.\n\n## 📁 Estructura del proyecto\n```bash\n📦 w-music/\n│\n├── 📁 backend/           # Python + FastAPI\n│   └── main.py/          # API con FastAPI\n├── 📁 frontend/          # Proyecto Vite + React\n│   └── dist/             # Archivos generados para producción\n│   └── env/              # Env para el front\n├── main.py               # API con FastAPI\n├── requirements.txt      # Dependencias del backend\n└── README.md             \n```\n\n# 📸 Capturas de pantalla\n[![image](https://github.com/user-attachments/assets/0688ce3c-ffa9-4f8d-a869-1a7dc4006d5e)](https://w-music.onrender.com)\n\n## 🙌 Autor\nDesarrollado por [Mateo Lizcano Noriega](https://www.linkedin.com/in/mateo-lizcano-noriega)\n¿Te fue útil este proyecto? ¡Dale una estrella ⭐ y compártelo!\n\n## License\n[MIT](https://choosealicense.com/licenses/mit/)\n\n\n## 🌐 ¡Visita W-music y empieza a disfrutar de tu musica favorita hoy mismo! 🎉🍿\n\n[👉 w-music](https://w-music.onrender.com)\n\n¡Espero que disfrutes usando W-music tanto como yo disfruté creándola! 🎬✨\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmateodevcode%2Fw-music","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmateodevcode%2Fw-music","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmateodevcode%2Fw-music/lists"}