1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[956],{90956:function(a,e,o){"use strict";o.d(e,{A4:function(){return i},Hc:function(){return O},SJ:function(){return B},eN:function(){return j},fY:function(){return M},ij:function(){return C},mT:function(){return I},pG:function(){return P},th:function(){return q},xb:function(){return D},y0:function(){return E}});var n=o(50089);let s="https://tangra.link",i=a=>"".concat(s,"/radio/").concat(a),t={es:["\xbfPuedo guardar canciones en mi propia lista?","S\xed. Pulsa \xabA\xf1adir a una lista\xbb en cualquier canci\xf3n y queda guardada en una lista tuya, en tu biblioteca de Tangra, para escucharla cuando quieras. Registrarse es gratis."],en:["Can I save songs to my own playlist?","Yes. Tap Add to Playlist on any song to keep it in a playlist of your own, in your Tangra library, where you can play it any time. Signing up is free."]},r={title:"Keep the songs you love",copy:"Add any song you hear to a playlist of your own and play it whenever you like in your Tangra library. Signing up is free.",cta:"Create your playlist"},l={slug:"musica-espanola",station:"es",lang:"es",locale:"es_ES",alternate:"spanish-music",stationName:"Tangra Radio \xb7 M\xfasica espa\xf1ola",breadcrumb:"Radio de m\xfasica espa\xf1ola",title:"M\xfasica espa\xf1ola sin parar y sin anuncios | Tangra Radio",description:"Radio gratis de m\xfasica espa\xf1ola sin anuncios ni registro: guitarra espa\xf1ola, flamenco, rumba y canciones en espa\xf1ol, con y sin letra. M\xfasica creada con IA.",h1:["M\xfasica espa\xf1ola ","sin parar y sin anuncios"],lead:"Dale al play y deja que suene. Una radio en directo de guitarra espa\xf1ola, flamenco, rumba y canciones en espa\xf1ol, sin anuncios, sin registro y sin cortes: todos escuchamos lo mismo al mismo tiempo.",aiNote:"Toda la m\xfasica est\xe1 creada con IA en Tangra y la elige nuestro equipo.",recent:{title:"Son\xf3 hace poco",intro:"Lo \xfaltimo que ha sonado en la radio. Cada pieza tiene su p\xe1gina, con la letra cuando la tiene."},moods:{title:"Una radio para cada momento",items:[["Para trabajar","Guitarra y ritmos que acompa\xf1an sin distraer, horas seguidas y sin un solo anuncio que te saque de lo tuyo."],["Para bailar","Rumba flamenca, buler\xedas y canciones con ritmo para cuando apetece moverse."],["Para la casa","Para cocinar, cenar o tener compa\xf1\xeda de fondo. Sigue sonando con la pantalla apagada."],["Para relajarte","Guitarra espa\xf1ola tranquila, sole\xe1s y baladas para bajar el ritmo al final del d\xeda."]]},how:{title:"C\xf3mo elegimos la m\xfasica",paragraphs:["Toda la m\xfasica de la radio est\xe1 creada con inteligencia artificial en Tangra: piezas de guitarra espa\xf1ola y flamenco, y canciones con letra en espa\xf1ol. Lo decimos claro porque tienes derecho a saber lo que escuchas.","Nuestro equipo revisa cada pieza y retira las que no est\xe1n a la altura. Las que reciben m\xe1s reacciones suenan un poco m\xe1s a menudo, y ninguna se repite hasta que haya sonado la mitad de la radio."]},promises:["Sin anuncios, nunca","Revisada por nuestro equipo","Nada se repite hasta que suene media radio","Hecha con IA, y lo decimos"],faq:[["\xbfQu\xe9 m\xfasica suena?","Guitarra espa\xf1ola, flamenco (buler\xedas, sole\xe1, rumba) y canciones en espa\xf1ol, con y sin letra. Sin locutores y sin anuncios: solo m\xfasica."],["\xbfLa radio es gratis?","S\xed. Escuchar es gratis y no hace falta crear una cuenta ni dar tu correo."],["\xbfTiene anuncios?","No. Ni anuncios entre canciones, ni banners, ni ventanas emergentes."],["\xbfQui\xe9n hace la m\xfasica?","Est\xe1 creada con IA en Tangra, un estudio creativo donde cualquiera puede convertir una idea en m\xfasica. Nuestro equipo elige lo que suena en la radio."],["\xbfSigue sonando con la pantalla apagada?","S\xed. La m\xfasica sigue con el tel\xe9fono bloqueado, y puedes pararla desde la pantalla de bloqueo, los auriculares o un altavoz Bluetooth."],["\xbfPor qu\xe9 no puedo saltar canciones?","Porque es una radio en directo: todos escuchamos lo mismo al mismo tiempo y reaccionamos juntos. Si algo no te gusta, en unos minutos llega otra pieza."],["\xbfPuedo ver la letra?","S\xed, en las canciones con letra: pulsa \xabLetra\xbb y la ver\xe1s en pantalla, sincronizada con la voz cuando la canci\xf3n lo permite."],t.es,["\xbfPuedo crear mi propia m\xfasica?","S\xed. Con el generador de m\xfasica de Tangra describes una idea o escribes tu propia letra y en unos minutos tienes tu canci\xf3n."]],closing:{title:"Guarda las canciones que te encantan",copy:"A\xf1ade a una lista tuya cualquier canci\xf3n que oigas y esc\xfachala cuando quieras en tu biblioteca de Tangra. Registrarse es gratis.",cta:"Crea tu lista"},ui:{listen:"Escuchar",stop:"Parar",live:"En directo",listening:a=>"".concat(a," escuchando"),next:"Despu\xe9s",lyrics:"Letra",noLyrics:"Esta pieza no tiene letra guardada.",sleep:"Apagar enâ¦",sleepOff:"Sin temporizador",sleepIn:a=>"Se apaga en ".concat(a," min"),minutes:a=>"".concat(a," minutos"),share:"Compartir",copied:"Enlace copiado",shareText:a=>"Escuchando \xab".concat(a,"\xbb en Tangra Radio"),cast:"Escuchar en otro dispositivo",aiMade:"Creada con IA",isNew:"Nueva",offline:"Sin conexi\xf3n. Seguimos en cuanto vuelva la red.",empty:"La radio vuelve en un momento.",connecting:"Conectandoâ¦",unavailable:"La radio no responde ahora mismo. Vuelve a intentarlo en un momento.",close:"Cerrar",reactions:{love:"Me encanta",fire:"Fuego",dance:"A bailar",tears:"Me emociona"},styles:{"spanish-guitar":"Guitarra espa\xf1ola"},other:"English",otherLabel:"Listen in English",stations:"Todas las emisoras",create:"Crea tu canci\xf3n",createPlaylist:"Crea tu lista",home:"Inicio",music:"M\xfasica con IA",help:"Ayuda",privacy:"Privacidad",terms:"T\xe9rminos",faq:"Preguntas frecuentes",recent:"Son\xf3 hace poco",promisesTitle:"Lo que prometemos",station:"Emisora",review:"Por revisar",keep:"Mantener en la radio",drop:"Quitar de la radio",addToPlaylist:"A\xf1adir a una lista",playlists:"Tus listas",newPlaylist:"Nueva lista",playlistName:"Nombre de la lista",firstPlaylist:"Favoritas de la radio",songs:a=>"".concat(a," ").concat(1===a?"canci\xf3n":"canciones"),added:a=>"A\xf1adida a \xab".concat(a,"\xbb"),removed:a=>"Quitada de \xab".concat(a,"\xbb"),playlistError:"No se ha guardado. Int\xe9ntalo de nuevo en un momento.",openPlaylist:"Abrir en tu biblioteca",library:"Tu biblioteca",noPlaylists:"Guarda en una lista tuya cualquier canci\xf3n que te encante, y esc\xfachala cuando quieras.",signInTitle:"Inicia sesi\xf3n para crear tu lista",signInCopy:"Guarda las canciones que te encantan y esc\xfachalas cuando quieras en tu biblioteca de Tangra. Registrarse es gratis.",onAir:"Suena ahora",lastPlayed:"Son\xf3 hace poco",moreStations:"M\xe1s emisoras",createShort:"Crear",startsWithOnAir:"Empieza con la canci\xf3n que suena"}}
1,c={slug:"spanish-music",station:"es",lang:"en",locale:"en_US",alternate:"musica-espanola",stationName:"Tangra Radio \xb7 Spanish music",breadcrumb:"Spanish music radio",title:"Non-Stop Spanish Music & Guitar Radio, No Ads | Tangra",description:"Free non-stop Spanish music with no ads or sign-up: Spanish guitar, flamenco, rumba and songs in Spanish, with the lyrics on screen. New music made with AI.",h1:["Non-stop Spanish music, ","no ads"],lead:"Press play and let it run. A live station of Spanish guitar, flamenco, rumba and songs in Spanish, with no ads, no sign-up and no interruptions: everyone hears the same music at the same time.",aiNote:"All the music is made with Tangra AI. Featured songs have been selected by our team.",recent:{title:"Recently played",intro:"The latest on the station. Each piece has its own page, with the lyrics when it has words."},moods:{title:"Spanish music for every moment",items:[["For work","Spanish guitar and easy rhythms that keep you company for hours, without a single ad breaking your focus."],["For dancing","Rumba flamenca, buler\xedas and upbeat songs for when you feel like moving."],["Around the house","For cooking, dinner or background company. It keeps playing with your screen off."],["To unwind","Calm Spanish guitar, sole\xe1 and ballads to slow down at the end of the day."]]},how:{title:"How we choose the music",paragraphs:["All the music on the station is made with artificial intelligence on Tangra: Spanish guitar and flamenco pieces, and songs with Spanish lyrics. We say so up front because you should know what youâre listening to.","Our team reviews every piece and takes off the ones that donât make the cut. Pieces with more reactions play a little more often, and none repeats until half the station has played."]},promises:["No ads, ever","Reviewed by our team","Nothing repeats until half the station has played","Made with AI, and we say so"],faq:[["What kind of music plays?","Spanish guitar, flamenco (buler\xedas, sole\xe1, rumba) and songs in Spanish, with and without words. No DJ chatter and no ads: just music."],["Is the radio free?","Yes. Listening is free, and you donât need an account or an email address."],["Are there ads?","No. No ads between songs, no banners, no pop-ups."],["Who makes the music?","Itâs made with AI on Tangra, a creative studio where anyone can turn an idea into music. Our team picks what plays on the radio."],["Does it keep playing with the screen off?","Yes. The music keeps going with your phone locked, and you can stop it from the lock screen, your headphones or a Bluetooth speaker."],["Why canât I skip songs?","Because itâs live radio: everyone hears the same music at the same time and reacts together. If a piece isnât for you, another one is only minutes away."],["Can I see the lyrics?","Yes, for songs with words: tap Lyrics to see them on screen, synced to the voice when the song allows it. Itâs an easy way to practice your Spanish."],t.en,["Can I make my own music?","Yes. With the Tangra music generator you describe an idea or write your own lyrics and have a song in minutes."]],closing:r,ui:{listen:"Listen",stop:"Stop",live:"Live",listening:a=>"".concat(a," listening"),next:"Next",lyrics:"Lyrics",noLyrics:"This piece has no saved lyrics.",sleep:"Sleep timer",sleepOff:"No timer",sleepIn:a=>"Stops in ".concat(a," min"),minutes:a=>"".concat(a," minutes"),share:"Share",copied:"Link copied",shareText:a=>"Listening to â".concat(a,"â on Tangra Radio"),cast:"Play on another device",aiMade:"Made with AI",isNew:"New",offline:"Youâre offline. The music comes back with the connection.",empty:"The radio will be back in a moment.",connecting:"Connectingâ¦",unavailable:"The radio isnât responding right now. Try again in a moment.",close:"Close",reactions:{love:"Love it",fire:"Fire",dance:"Dance",tears:"Moving"},styles:{"spanish-guitar":"Spanish guitar",Balada:"Ballad"},other:"Espa\xf1ol",otherLabel:"Escuchar en espa\xf1ol",stations:"All stations",create:"Create your song",createPlaylist:"Create your playlist",home:"Home",music:"AI music",help:"Help",privacy:"Privacy",terms:"Terms",faq:"Frequently asked questions",recent:"Recently played",promisesTitle:"What we promise",station:"Station",review:"Waiting for review",keep:"Keep on the radio",drop:"Take off the radio",addToPlaylist:"Add to Playlist",playlists:"Your Playlists",newPlaylist:"New Playlist",playlistName:"Playlist Name",firstPlaylist:"Radio favorites",songs:a=>"".concat(a," song").concat(1===a?"":"s"),added:a=>"Added to â".concat(a,"â"),removed:a=>"Removed from â".concat(a,"â"),playlistError:"That didnât save. Try again in a moment.",openPlaylist:"Open in your library",library:"Your library",noPlaylists:"Keep any song you love in a playlist of your own, and play it whenever you like.",signInTitle:"Sign in to create your playlist",signInCopy:"Keep the songs
1you love and play them any time in your Tangra library. Signing up is free.",onAir:"On air",lastPlayed:"Just played",moreStations:"More stations",createShort:"Create",startsWithOnAir:"Starts with the song on air",pickTitle:"What do you want to hear?",pickHint:"Tap a station and the music starts.",changeStation:"Change station",playStation:a=>"Play ".concat(a)}},d=["Can I see the lyrics?","Yes, for songs with words: tap Lyrics to see them on screen, synced to the voice when the song allows it."],u=a=>{let{how:e,faq:o,plays:n,about:s,made:i,...l}=a;return{lang:"en",locale:"en_US",aiNote:c.aiNote,recent:{title:"Recently played",intro:"The latest on the station. Each song has its own page, with the lyrics when it has words."},how:{title:c.how.title,paragraphs:[e||"All the music on the station is made with artificial intelligence on Tangra, by people who describe ".concat(s," or write their own lyrics. We say so up front because you should know what youâre listening to."),c.how.paragraphs[1]]},promises:c.promises,faq:o?[o[0],...c.faq.slice(1,6),t.en,...o.slice(1)]:[["What kind of music plays?","".concat(n," No DJ chatter and no ads: just music.")],...c.faq.slice(1,6),t.en,d,["Can I make my own music?","Yes. With the Tangra music generator you describe an idea or write your own lyrics and have ".concat(i," in minutes.")]],closing:r,ui:c.ui,...l}},m=u({slug:"rock-music",station:"rock",stationName:"Tangra Radio \xb7 Rock",breadcrumb:"Rock radio",title:"Non-Stop Rock Radio With No Ads or Sign-Up | Tangra",description:"Free non-stop rock radio with no ads or sign-up: hard rock, rock operas, punk, prog and power ballads, with the lyrics on screen. New music made with AI.",h1:["Non-stop rock, ","no ads"],lead:"Press play and turn it up. A live rock station of guitar anthems, hard rock, rock operas, punk and power ballads, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Rock for every moment",items:[["For the drive","Big riffs and bigger choruses for the open road, with no ad breaks between songs."],["For the gym","Hard rock and punk to push through one more set."],["For work","Guitars that keep you going for hours, with nothing breaking your focus."],["To unwind","Power ballads and slower songs for the end of the day."]]},how:"All the music on the station is made with artificial intelligence on Tangra, by peo
1ple who describe a rock song or write their own lyrics. We say so up front because you should know what youâre listening to.",faq:[["What kind of music plays?","Rock in its many shapes: hard rock, rock operas, punk, grunge, prog, alternative and power ballads, almost all of it sung in English. No DJ chatter and no ads: just music."],["Can I see the lyrics?","Yes: tap Lyrics to see them on screen, synced to the voice when the song allows it."],["Can I make my own music?","Yes. With the Tangra music generator you describe an idea or write your own lyrics and have a rock song in minutes."]]}),h=u({slug:"epic-music",station:"epic",stationName:"Tangra Radio \xb7 Epic music",breadcrumb:"Epic music radio",title:"Epic Music Radio: Non-Stop Cinematic Music, No Ads | Tangra",description:"Free non-stop epic music with no ads or sign-up: orchestral battle themes, heroic anthems, fantasy ballads and Viking chants. New music made with AI.",h1:["Non-stop epic music, ","no ads"],lead:"Press play and let the story unfold. A live station of epic orchestral songs and cinematic pieces: battle themes, heroic anthems, fantasy ballads and Viking chants, with no ads, no sign-up and no interruptions.",moods:{title:"Epic music for every moment",items:[["For focus","Big, sweeping music that carries long work and study sessions, without an ad in sight."],["For games and books","Battle themes and fantasy worlds behind a campaign, a quest or a good book."],["For training","Heroic anthems and war drums for the last mile and the last rep."],["To dream","Ethereal songs about far-off lands and skies, for the end of the day."]]},how:"All the music on the station is made with artificial intelligence on Tangra, by peo
1ple who describe a scene, a battle or a world, or write their own lyrics. We say so up front because you should know what youâre listening to.",faq:[["What kind of music plays?","Epic and cinematic music: orchestral songs, battle themes, heroic anthems, fantasy ballads and Viking chants. Most pieces have words and some are instrumental. No DJ chatter and no ads: just music."],["Can I see the lyrics?","Yes, for songs with words: tap Lyrics to see them on screen, synced to the voice when the song allows it."],["Can I make my own music?","Yes. With the Tangra music generator you describe a scene or write your own lyrics and have an epic piece in minutes."]]}),p=u({slug:"electronic-music",station:"electronic",stationName:"Tangra Radio \xb7 Electronic",breadcrumb:"Electronic music radio",title:"Non-Stop Electronic & EDM Radio, No Ads | Tangra",description:"Free non-stop electronic music with no ads or sign-up: trance, hardstyle, EDM, techno, synthwave and house, live for everyone. New music made with AI.",h1:["Non-stop electronic music, ","no ads"],lead:"Press play and keep the beat going. A live station of trance, hardstyle, EDM, techno, synthwave and house, with no ads, no sign-up and no interruptions: everyone hears the same track at the same time.",moods:{title:"Electronic music for every moment",items:[["For work","Steady beats that keep you in the zone for hours, with no ad breaking the flow."],["For the gym","Hardstyle and trance for the hardest part of the workout."],["For the night drive","Synthwave and deep grooves for city lights and empty roads."],["Before going out","House and dance tracks to warm up the evening."]]},how:"All the music on the station is made with artificial intelligence on Tangra, by peo
1ple who describe a track or write their own lyrics. We say so up front because you should know what youâre listening to.",faq:[["What kind of music plays?","Electronic music: trance, hardstyle, EDM, techno, synthwave, house, drum & bass and dubstep, with and without vocals. No DJ chatter and no ads: just music."],["Can I see the lyrics?","Yes, for tracks with vocals: tap Lyrics to see them on screen, synced to the voice when the track allows it."],["Can I make my own music?","Yes. With the Tangra music generator you describe a track or write your own lyrics and have it in minutes."]]}),g=u({slug:"metal-music",station:"metal",stationName:"Tangra Radio \xb7 Metal",breadcrumb:"Metal radio",title:"Non-Stop Metal Radio With No Ads or Sign-Up | Tangra",description:"Free non-stop metal radio with no ads or sign-up: black metal, nu metal, heavy metal, metalcore and Viking metal, live for everyone. New music made with AI.",h1:["Non-stop metal, ","no ads"],lead:"Press play and turn it up. A live metal station of heavy riffs, war drums and dark choirs: black metal, nu metal, heavy metal, metalcore and Viking metal, with no ads, no sign-up and no interruptions.",moods:{title:"Metal for every moment",items:[["For the gym","Heavy riffs and blast beats for the last set."],["For work","A wall of guitars that keeps the world out for hours, with no ads."],["For the drive","Nu metal and heavy metal for long roads."],["For the dark hours","Symphonic black metal and war drums for late nights."]]},how:"All the music on the station is made with artificial intelligence on Tangra, by peo
1ple who describe a metal song or write their own lyrics. We say so up front because you should know what youâre listening to.",faq:[["What kind of music plays?","Metal in its many forms: symphonic black metal, nu metal, heavy metal, metalcore, death metal and Viking metal, with vocals and as instrumentals. No DJ chatter and no ads: just music."],["Can I see the lyrics?","Yes, for songs with words: tap Lyrics to see them on screen, synced to the voice when the song allows it."],["Can I make my own music?","Yes. With the Tangra music generator you describe an idea or write your own lyrics and have a metal song in minutes."]]}),y=u({slug:"pop-music",station:"pop",stationName:"Tangra Radio \xb7 Pop",breadcrumb:"Pop radio",title:"Non-Stop Pop Radio With No Ads or Sign-Up | Tangra",description:"Free non-stop pop radio with no ads or sign-up: catchy pop songs, dance-pop and pop ballads, with the lyrics on screen. New music made with AI.",h1:["Non-stop pop, ","no ads"],lead:"Press play and sing along. A live pop station of catchy songs, dance-pop and pop ballads, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Pop for every moment",items:[["For the morning","Bright, catchy songs to start the day, with no ad breaks between them."],["For work","Easy hooks that keep you company for hours without pulling you away."],["For the car","Big choruses to sing along to on the way."],["To unwind","Pop ballads and slower songs for the end of the day."]]},about:"a pop song",plays:"Pop in all its colours: catchy pop songs, dance-pop, synth-pop and pop ballads, most of them sung in English.",made:"a pop song"}),b=u({slug:"country-music",station:"country",stationName:"Tangra Radio \xb7 Country",breadcrumb:"Country radio",title:"Non-Stop Country Radio With No Ads or Sign-Up | Tangra",description:"Free non-stop country radio with no ads or sign-up: country ballads, bluegrass, southern rock and dark Americana. New music made with AI.",h1:["Non-stop country, ","no ads"],lead:"Press play and hit the road. A live country station of ballads, bluegrass, southern rock and dark Americana, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Country for every moment",items:[["For the drive","Long-road songs for long roads, with no ad breaks between them."],["Around the house","Porch-light ballads for cooking, cleaning or company."],["For work","Steady guitars and good stories that keep you going for hours."],["After sundown","Dark country and slow songs for the night."]]},about:"a country song",plays:"Country in its many shades: ballads, bluegrass, southern rock, western stories and dark Americana, sung in English.",made:"a country song"}),f=u({slug:"hip-hop-rnb",station:"hiphop",stationName:"Tangra Radio \xb7 Hip-hop and R&B",breadcrumb:"Hip-hop and R&B radio",title:"Non-Stop Hip-Hop and R&B Radio, No Ads | Tangra",description:"Free non-stop hip-hop and R&B radio with no ads or sign-up: rap, drill, trap, R&B, funk and neo-soul, with the lyrics on screen. Made with AI.",h1:["Non-stop hip-hop and R&B, ","no ads"],lead:"Press play and ride the beat. A live station of rap, drill, trap, R&B, funk and neo-soul, with no ads, no sign-up and no interruptions: everyone hears the same track at the same time.",moods:{title:"Hip-hop and R&B for every moment",items:[["For the gym","Hard beats and big verses for the heavy sets."],["For work","Head-nod grooves that keep you in the zone for hours."],["For the ride","Bass-heavy tracks for the drive, with no ads between them."],["Late at night","Slow R&B and neo-soul after dark."]]},about:"a beat, a verse or a groove",plays:"Hip-hop and R&B: rap, drill, trap, R&B, funk and neo-soul, mostly in English. Songs with explicit words stay off the station.",made:"a rap or R&B track"}),w=u({slug:"latin-music",station:"latin",stationName:"Tangra Radio \xb7 Latin",breadcrumb:"Latin music radio",title:"Non-Stop L
1atin Music Radio With No Ads | Tangra",description:"Free non-stop Latin music with no ads or sign-up: bachata, salsa, tango, bossa nova and corridos, live for everyone. New music made with AI.",h1:["Non-stop Latin music, ","no ads"],lead:"Press play and feel the rhythm. A live station of bachata, salsa, tango, bossa nova and corridos, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Latin music for every moment",items:[["For dancing","Bachata and salsa for when you feel like moving."],["Around the house","Warm rhythms for cooking, dinner or company."],["For work","Easy grooves that keep you going for hours, with no ads."],["To unwind","Bossa nova and slow songs for the end of the day."]]},about:"a Latin song",plays:"Latin American music: bachata, salsa, tango, bossa nova and corridos, with and without words. For flamenco and Spanish guitar, tune in to Spanish music.",made:"a Latin song"}),k=u({slug:"christian-music",station:"christian",stationName:"Tangra Radio \xb7 Christian & gospel",breadcrumb:"Christian music radio",title:"Non-Stop Christian & Gospel Radio, No Ads | Tangra",description:"Free non-stop Christian music with no ads or sign-up: worship songs, gospel and songs of faith, with the lyrics on screen. New music made with AI.",h1:["Non-stop Christian music, ","no ads"],lead:"Press play and let it lift you. A live station of worship songs, gospel and songs of faith, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Christian music for every moment",items:[["For the morning","Songs of praise to start the day."],["For prayer","Slower worship songs for quiet and reflection, with no ads to break it."],["For work","Uplifting songs that keep you company for hours."],["For hard days","Songs about holding on and trusting through the storm."]]},about:"a song of faith",plays:"Christian music: worship songs, gospel and contemporary songs of faith, in English and Spanish.",made:"a worship song"}),v=u({slug:"jazz-blues",station:"jazz",stationName:"Tangra Radio \xb7 Jazz & blues",breadcrumb:"Jazz & blues radio",title:"Non-Stop Jazz & Blues Radio With No Ads | Tangra",description:"Free non-stop jazz and blues with no ads or sign-up: smoky club jazz, piano jazz, slow jazz and the blues, live for everyone. New music made with AI.",h1:["Non-stop jazz & blues, ","no ads"],lead:"Press play and settle in. A live station of smoky club jazz, piano jazz, slow jazz and the blues, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Jazz for every moment",items:[["For work","Easy jazz that keeps you company for hours without pulling you away."],["For dinner","Piano jazz and soft voices for the table."],["Late at night","Slow jazz and the blues after dark."],["For reading","Quiet grooves in the background, with no ads to break the page."]]},about:"a jazz or blues piece",plays:"Jazz and blues: smoky club jazz, piano jazz, slow jazz, jazz fusion and blues guitar, with and without words.",made:"a jazz or blues piece"}),S=u({slug:"chill-lofi",station:"chill",stationName:"Tangra Radio \xb7 Chill and Lo-Fi",breadcrumb:"Chill and Lo-Fi radio",title:"Chill and Lo-Fi Radio: Relaxing Music, No Ads | Tangra",description:"Free non-stop chill music with no ads or sign-up: ambient, lo-fi, meditation and spa music to work, study or sleep to. New music made with AI.",h1:["Chill music that never stops, ","no ads"],lead:"Press play and breathe out. A live station of ambient, lo-fi, meditation and spa music, with no ads, no sign-up and nothing to interrupt you: everyone hears the same music at the same time.",moods:{title:"Chill music for every moment",items:[["For study and work","Calm music that keeps you focused for hours, with no ad breaking your concentration."],["For sleep","Soft, slow pieces to fall asleep to. Set the sleep timer and the music fades out."],["For meditation","Singing bowls, handpan and quiet soundscapes."],["To unwind","Gentle songs and ambient sound for the end of the day."]]},about:"a calm place, a mood or a moment",plays:"Chill music: ambient soundscapes, lo-fi, meditation and spa music, and gentle relaxing songs.",made:"a relaxing piece"}),N=u({slug:"classical-music",station:"classical",stationName:"Tangra Radio \xb7 Classical & piano",breadcrumb:"Classical & piano radio",title:"Non-Stop Classical & Piano Radio, No Ads | Tangra",description:"Free non-stop classical and piano music with no ads or sign-up: solo piano, str
1ings and orchestral pieces, live for everyone. Made with AI.",h1:["Classical and piano, ","non-stop and no ads"],lead:"Press play and let it fill the room. A live station of solo piano, strings and orchestral pieces, with no ads, no sign-up and no interruptions: everyone hears the same music at the same time.",moods:{title:"Classical music for every moment",items:[["For focus","Piano and strings that carry long work and study sessions."],["For reading","Quiet music in the background, with no ads to break the page."],["For dinner","Elegant pieces for the table."],["To unwind","Soft piano for the end of the day."]]},about:"a piano or classical piece",plays:"Classical-style music: solo piano, violin, cello, strings and orchestral pieces, some of them with a singer.",made:"a piano or classical piece"}),A=u({slug:"christmas-music",station:"christmas",stationName:"Tangra Radio \xb7 Christmas",breadcrumb:"Christmas music radio",title:"Non-Stop Christmas Music Radio With No Ads | Tangra",description:"Free non-stop Christmas music with no ads or sign-up: Christmas songs, carols and holiday tunes, with the lyrics on screen. New music made with AI.",h1:["Christmas music, ","non-stop and no ads"],lead:"Press play and bring the season in. A live station of Christmas songs, carols and holiday tunes, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Christmas music for every moment",items:[["For decorating","Festive songs while the tree goes up, with no ad breaks."],["For the kitchen","Holiday tunes for baking and cooking."],["For the party","Upbeat Christmas songs for friends and family."],["For a quiet night","Soft carols by the lights."]]},about:"a Christmas song",plays:"Christmas and holiday music: Christmas songs, carols, big band holiday tunes and a little Christmas rock.",made:"a Christmas song"}),T=u({slug:"reggae-afrobeats",station:"reggae",stationName:"Tangra Radio \xb7 Reggae & Afrobeats",breadcrumb:"Reggae & Afrobeats radio",title:"Non-Stop Reggae & Afrobeats Radio, No Ads | Tangra",description:"Free non-stop reggae and Afrobeats with no ads or sign-up: roots reggae, dub and Afrobeats, with the lyrics on screen. New music made with AI.",h1:["Non-stop reggae & Afrobeats, ","no ads"],lead:"Press play and catch the groove. A live station of roots reggae, dub and Afrobeats, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Reggae for every moment",items:[["In the sun","Warm grooves for the beach, the garden or the balcony."],["For work","Easy rhythms that keep you going for hours, with no ads."],["For dancing","Afrobeats for when you feel like moving."],["To unwind","Slow dub for the end of the day."]]},about:"a reggae or Afrobeats song",plays:"Reggae and Afrobeats: roots reggae, two-tone, dub and Afrobeats.",made:"a reggae or Afrobeats song"}),z=u({slug:"kids-music",station:"kids",stationName:"Tangra Radio \xb7 Kids",breadcrumb:"Kids music radio",title:"Non-Stop Kids Music Radio With No Ads | Tangra",description:"Free non-stop music for kids with no ads or sign-up: sing-alongs, lullabies and fun songs for children, live for everyone. New music made with AI.",h1:["Music for kids, ","non-stop and no ads"],lead:"Press play and sing along. A live station of fun songs, sing-alongs and lullabies for children, with no ads, no sign-up and no interruptions: nothing pops up in the middle of a song.",moods:{title:"Kids music for every moment",items:[["For playtime","Silly, catchy songs to dance and sing to."],["For the car","Songs for the whole family on the way."],["For learning","Songs about letters, numbers and the world around us."],["For bedtime","Lullabies to wind down. Set the sleep timer and the music fades out."]]},about:"a song for children",plays:"Songs for children: sing-alongs, silly songs, story songs and lullabies. Songs with explicit words never play.",made:"a song for your kids"}),R=u({slug:"kpop-anime",station:"kpop",stationName:"Tangra Radio \xb7 K-pop & anime",breadcrumb:"K-pop & anime radio",title:"Non-Stop K-Pop & Anime Music Radio, No Ads | Tangra",description:"Free non-stop K-p
1op and anime music with no ads or sign-up: K-pop boy-group anthems and anime-style songs, live for everyone. Made with AI.",h1:["Non-stop K-pop & anime, ","no ads"],lead:"Press play and turn it up. A live station of K-pop anthems and anime-style songs, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"K-pop for every moment",items:[["For dancing","Big beats and sharp hooks for practice or a party."],["For work","Energy that keeps you going for hours, with no ads."],["For the commute","Songs for the train, the bus and the walk."],["For fans","New songs in the styles you love."]]},about:"a K-pop song or an anime theme",plays:"K-pop and anime-style music: boy-group anthems, dark concepts and anime-inspired songs and instrumentals.",made:"a K-pop song"}),F=u({slug:"folk-acoustic",station:"folk",stationName:"Tangra Radio \xb7 Folk & acoustic",breadcrumb:"Folk & acoustic radio",title:"Non-Stop Folk & Acoustic Radio With No Ads | Tangra",description:"Free non-stop folk and acoustic music with no ads or sign-up: folk songs, singer-songwriters and unplugged ballads. New music made with AI.",h1:["Folk and acoustic, ","non-stop and no ads"],lead:"Press play and pull up a chair. A live station of folk songs, singer-songwriters and unplugged ballads, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Folk for every moment",items:[["For the morning","Acoustic guitars and warm voices to start the day."],["For work","Quiet songs that keep you company for hours, with no ads."],["For the road","Story songs for long drives."],["By the fire","Campfire songs for the end of the day."]]},about:"a folk song",plays:"Folk and acoustic music: folk songs, singer-songwriters, story songs and unplugged ballads.",made:"a folk song"}),C=[l,c,m,h,p,g,y,b,f,w,k,v,S,N,A,T,z,R,F,u({slug:"love-songs",station:"love",stationName:"Tangra Radio \xb7 Love songs",breadcrumb:"Love songs radio",title:"Non-Stop Love Songs Radio With No Ads | Tangra",description:"Free non-stop love songs with no ads or sign-up: ballads, serenades and romantic songs, with the lyrics on screen. New music made with AI.",h1:["Love songs, ","non-stop and no ads"],lead:"Press play and let it melt you. A live station of ballads, serenades and romantic songs, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"Love songs for every moment",items:[["For date night","Romantic songs for dinner for two, with no ads to break the mood."],["For missing someone","Ballads about love far away and love that was."],["For work","Soft songs that keep you company for hours."],["For a slow dance","Serenades and slow songs to hold someone close."]]},about:"a love song",plays:"Love songs: ballads, serenades, romantic duets and songs about love found and lost, mostly in English.",made:"a love song"}),u({slug:"world-music",station:"world",stationName:"Tangra Radio \xb7 World music",breadcrumb:"World music radio",title:"Non-Stop World Music Radio With No Ads | Tangra",description:"Free non-stop world music with no ads or sign-up: Bollywood, klezmer and sounds from around the world, live for everyone. New music made with AI.",h1:["Music from around the world, ","no ads"],lead:"Press play and travel. A live station of Bollywood, klezmer and sounds from around the world, with no ads, no sign-up and no interruptions: everyone hears the same song at the same time.",moods:{title:"World music for every moment",items:[["For work","Rhythms from far away that keep you going for hours, with no ads."],["For cooking","Music from the places your recipes come from."],["For discovery","Styles you may never have heard on the radio before."],["To unwind","Slow, soulful songs for the end of the day."]]},about:"a song from their part of the world",plays:"Music from around the world: Bollywood and Hindi songs, klezmer and more, sung in many languages.",made:"a song in any style"}),u({slug:"retro-hits",station:"retro",stationName:"Tangra Radio \xb7 Retro hits",breadcrumb:"Retro hits radio",title:"Retro Hits Radio: 50s to 90s Style, No Ads | Tangra",description:"Free non-stop retro hits with no ads or sign-up: new songs in the style of the 50s to the 90s, from doo-wop and disco to 80s rock operas. Made with AI.",h1:["Retro hits, ","non-stop and no ads"],lead:"Press play and turn back the clock. A live station of new songs in the style of the 50s to the 90s: doo-wop, disco, 80s rock operas and synth-pop, with no ads, no sign-up and no interruptions.",moods:{title:"Retro for every moment",items:[["For the drive","Big 80s choruses for the open road."],["For a party","Disco and dance songs for friends and family."],["For work","Songs with a familiar sound that keep you going for hours, with no ads."],["For a slow dance","Doo-wop and old-school ballads."]]},about:"a song from another decade",plays:"New songs made in the style of past decades: 50s doo-wop, 60s westerns, 70s soft rock, disco, 80s rock operas and synth-pop, and 90s country. Every song is new, made in an old style.",made:"a song in the style of your favourite decade"})],L=[{station:"es",slug:"spanish-music",alternate:"musica-espanola",accent:["#f4442c","#fb6e00"],en:{name:"Spanish music",copy:"Spanish guitar, flamenco, rumba and songs in Spanish, with and without words."},es:{slug:"musica-espanola",alternate:"spanish-music",name:"M\xfasica espa\xf1ola",copy:"Guitarra espa\xf1ola, flamenco, rumba y canciones en espa\xf1ol, con y sin letra."}},{station:"rock",slug:"rock-music",accent:["#f01a52","#6d0620"],en:{name:"Rock",copy:"Hard rock, rock o
1peras, punk, prog and power ballads."},es:{name:"Rock",copy:"Rock duro, \xf3peras rock, punk, rock progresivo y baladas."}},{station:"epic",slug:"epic-music",accent:["#b07cff","#2c1470"],en:{name:"Epic music",copy:"Orchestral battle themes, heroic anthems, fantasy ballads and Viking chants."},es:{name:"M\xfasica \xe9pica",copy:"Batallas orquestales, himnos heroicos, baladas de fantas\xeda y cantos vikingos."}},{station:"electronic",slug:"electronic-music",accent:["#19d3ff","#5b21e6"],en:{name:"Electronic",copy:"Trance, hardstyle, EDM, techno, synthwave and house."},es:{name:"Electr\xf3nica",copy:"Trance, hardstyle, EDM, techno, synthwave y house."}},{station:"metal",slug:"metal-music",accent:["#9aa4b5","#1d2129"],en:{name:"Metal",copy:"Black metal, nu metal, heavy metal, metalcore and Viking metal."},es:{name:"Metal",copy:"Black metal, nu metal, heavy metal, metalcore y metal vikingo."}},{station:"pop",slug:"pop-music",accent:["#ff5f8f","#ffb347"],en:{name:"Pop",copy:"Catchy pop songs, dance-pop, synth-pop and pop ballads."},es:{name:"Pop",copy:"Pop pegadizo, dance-pop, synth-pop y baladas pop."}},{station:"country",slug:"country-music",accent:["#e0a458","#5b3a1a"],en:{name:"Country",copy:"Country ballads, bluegrass, southern rock and dark Americana."},es:{name:"Country",copy:"Baladas country, bluegrass, rock sure\xf1o y americana oscura."}},{station:"hiphop",slug:"hip-hop-rnb",accent:["#ffd23f","#3a2c00"],en:{name:"Hip-hop and R&B",copy:"Rap, drill, trap, R&B, funk and neo-soul."},es:{name:"Hip-hop y R&B",copy:"Rap, drill, trap, R&B, funk y neo-soul."}},{station:"latin",slug:"latin-music",accent:["#ff7a3d","#b3124a"],en:{name:"Latin",copy:"Bachata, salsa, tango, bossa nova and corridos."},es:{name:"Latina",copy:"Bachata, salsa, tango, bossa nova y corridos."}},{station:"christian",slug:"christian-music",accent:["#ffe066","#8a5a00"],en:{name:"Christian & gospel",copy:"Worship songs, gospel and songs of faith."},es:{name:"Cristiana y gospel",copy:"Alabanza, gospel y canciones de fe."}},{station:"jazz",slug:"jazz-blues",accent:["#3fb6ff","#0b2a5a"],en:{name:"Jazz & blues",copy:"Smoky club jazz, piano jazz, slow jazz and the blues."},es:{name:"Jazz y blues",copy:"Jazz de club, jazz de piano, jazz lento y blues."}},{station:"chill",slug:"chill-lofi",accent:["#7ee8c7","#1b4d5c"],en:{name:"Chill and Lo-Fi",copy:"Ambient, lo-fi, meditation and spa music to slow down."},es:{name:"Chill y lo-fi",copy:"Ambient, lo-fi, meditaci\xf3n y m\xfasica de spa para bajar el ritmo."}},{station:"classical",slug:"classical-music",accent:["#f2e6c9","#7a5c2e"],en:{name:"Classical & piano",copy:"Solo piano, strings and orchestral pieces."},es:{name:"Cl\xe1sica y piano",copy:"Piano solo, cuerdas y piezas orquestales."}},{station:"christmas",slug:"christmas-music",accent:["#e63946","#1d6b3a"],en:{name:"Christmas",copy:"Christmas songs, carols and holiday tunes."},es:{name:"Navidad",copy:"Canciones de Navidad, villancicos y m\xfasica de fiestas."}},{station:"reggae",slug:"reggae-afrobeats",accent:["#2fbf4a","#e0b100"],en:{name:"Reggae & Afrobeats",copy:"Roots reggae, two-tone, dub and Afrobeats."},es:{name:"Reggae y afrobeats",copy:"Reggae, two-tone, dub y afrobeats."}},{station:"kids",slug:"kids-music",accent:["#ffb703","#219ebc"],en:{name:"Kids",copy:"Sing-alongs, lullabies and fun songs for children."},es:{name:"Infantil",copy:"Canciones para cantar, nanas y m\xfasica para ni\xf1os."}},{station:"kpop",slug:"kpop-anime",accent:["#c86bff","#ff3fa4"],en:{name:"K-pop & anime",copy:"K-pop anthems and anime-style songs."},es:{name:"K-pop y anime",copy:"Himnos K-pop y canciones al estilo anime."}},{station:"folk",slug:"folk-acoustic",accent:["#a3b18a","#3a5a40"],en:{name:"Folk & acoustic",copy:"Folk songs, singer-songwriters and unplugged ballads."},es:{name:"Folk y ac\xfastica",copy:"Folk, cantautores y baladas ac\xfasticas."}},{station:"love",slug:"love-songs",accent:["#ff4d6d","#590d22"],en:{name:"Love songs",copy:"Ballads, serenades and romantic songs."},es:{name:"Canciones de amor",copy:"Baladas, serenatas y canciones rom\xe1nticas."}},{station:"world",slug:"world-music",accent:["#f4a261","#264653"],en:{name:"World music",copy:"Bollywood, klezmer and sounds from around the world."},es:{name:"M\xfasicas del mundo",copy:"Bollywood, klezmer y sonidos de todo el mund
1o."}},{station:"retro",slug:"retro-hits",accent:["#ff9e00","#7b2cbf"],en:{name:"Retro hits",copy:"New songs in 50s to 90s style: doo-wop, disco, rock operas and synth-pop."},es:{name:"\xc9xitos retro",copy:"Canciones nuevas al estilo de los 50 a los 90: doo-wop, disco y \xf3peras rock."}}],P=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"en",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return L.filter(a=>a.station!==e).map(e=>{let{en:o,es:n,...s}=e;return{...s,..."es"===a?n:o}})},I=a=>{var e;let o=(null==a?void 0:a.nowPlaying)||(null==a?void 0:null===(e=a.recent)||void 0===e?void 0:e[0]);return o?{id:o.id,title:o.title,cover:o.cover||null,coverLarge:o.coverLarge||null,onAir:!!a.nowPlaying}:null},j={path:"/radio",url:"".concat(s,"/radio"),station:"es",lang:"en",locale:"en_US",stationName:"Tangra Radio",title:"Tangra Radio: Free Music Stations With No Ads",description:"Free, non-stop music stations with no ads and no sign-up: pop, rock, country, hip-hop, jazz, lo-fi, Christmas and more, all picked by our team.",h1:["Nonstop Music. ","Zero ads"],lead:"Live music stations picked by our team. Press play, leave it on, and react along with everyone listening.",stations:{title:"Stations",intro:"Each station plays one style of music, live, for everyone at once.",items:P("en")},pick:["pop","rock","country","hiphop","chill","jazz","latin","es","electronic","classical","love","christian","retro","metal","epic","reggae","kpop","folk","world","kids","christmas"],faq:[["Is Tangra Radio free?","Yes. Listening is free, and you donât need an account or an email address."],["Are there ads?","No. No ads between songs, no banners, no pop-ups."],["Who makes the music?","Itâs made with AI on Tangra, a creative studio where anyone can turn an idea into music. Our team picks what plays on each station."],["Does it keep playing with the screen off?","Yes. The music keeps going with your phone locked, and you can stop it from the lock screen, your headphones or a Bluetooth speaker."],t.en],closing:r,ui:c.ui},B=a=>C.find(e=>e.slug===a),E=a=>{let e=C.filter(e=>e.station===a);return e.find(e=>{var o;return e.lang===(null===(o=n.STATIONS[a])||void 0===o?void 0:o.language)})||e[0]||null},M={love:"â¤ï¸",fire:"\uD83D\uDD25",dance:"\uD83D\uDC83",tears:"\uD83E\uDD79"},q=(a,e)=>e?a.ui.styles[e]||e:null,W=a=>"PT".concat(Math.floor(a/60),"M").concat(Math.round(a%60),"S"),D=(a,e)=>{var o;let t=i(a.slug),r=null===(o=n.STATIONS[a.station])||void 0===o?void 0:o.language;return{"@context":"https://schema.org","@graph":[{"@type":"RadioBroadcastService","@id":"".concat(t,"#radio"),name:a.stationName,url:t,description:a.description,...r?{inLanguage:r}:{},broadcaster:{"@type":"Organization",name:"Tangra",url:s}},{"@type":"MusicPlaylist",name:a.recent.title,numTracks:e.length,track:e.map(e=>({"@type":"MusicRecording",name:e.title,url:"".concat(s,"/music/").concat(e.id),image:e.cover,...e.genre?{genre:q(a,e.genre)}:{},...e.length?{duration:W(e.length)}:{},digitalSourceType:"https://schema.org/TrainedAlgorithmicMediaDigitalSource"}))},{"@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Tangra",item:s},{"@type":"ListItem",position:2,name:"Radio",item:"".concat(s,"/radio")},{"@type":"ListItem",position:3,name:a.breadcrumb,item:t}]}]}},O=()=>({"@context":"https://schema.org","@graph":[{"@type":"CollectionPage",name:j.title,url:j.url,description:j.description,mainEntity:{"@type":"ItemList",itemListElement:j.stations.items.map((a,e)=>({"@type":"ListItem",position:e+1,name:a.name,url:i(a.slug)}))}},{"@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Tangra",item:s},{"@type":"ListItem",position:2,name:"Radio",item:j.url}]}]})},50089:function(a,e,o){let{getMusicFilename:n}=o(71278);e.STATIONS={es:{id:"es",name:"Spanish music",slug:"spanish-music",language:"es",style:/spanish|espa[ñn]ol|espa[ñn]a|flamenc|guitarra|rumba|sevillan|buler[iÃ]a|sole[aá]|andaluz|tango|bolero|bachata|salsa|cumbia|merengue|mariachi|ranchera|corrido|paso ?doble|fandango/i},rock:{id:"rock",name:"Rock",slug:"rock-music",genres:["rock"]},epic:{id:"epic",name:"Epic music",slug:"epic-music",genres:["epic"]},electronic:{id:"electronic",name:"Electronic",slug:"electronic-music",genres:["electronic"]},metal:{id:"metal",name:"Metal",slug:"metal-music",genres:["metal"]},pop:{id:"pop",name:"Pop",slug:"pop-music",genres:["pop"]}
1,country:{id:"country",name:"Country",slug:"country-music",genres:["country"]},hiphop:{id:"hiphop",name:"Hip-hop and R&B",slug:"hip-hop-rnb",genres:["hip-hop","r&b"]},latin:{id:"latin",name:"Latin",slug:"latin-music",genres:["latin"]},christian:{id:"christian",name:"Christian & gospel",slug:"christian-music",genres:["christian"]},jazz:{id:"jazz",name:"Jazz & blues",slug:"jazz-blues",genres:["jazz","blues"]},chill:{id:"chill",name:"Chill and Lo-Fi",slug:"chill-lofi",genres:["chill"]},classical:{id:"classical",name:"Classical and piano",slug:"classical-music",genres:["classical","piano"]},christmas:{id:"christmas",name:"Christmas",slug:"christmas-music",genres:["holiday"]},reggae:{id:"reggae",name:"Reggae & Afrobeats",slug:"reggae-afrobeats",genres:["reggae"]},kids:{id:"kids",name:"Kids",slug:"kids-music",genres:["kids"]},kpop:{id:"kpop",name:"K-pop & anime",slug:"kpop-anime",genres:["k-pop"]},folk:{id:"folk",name:"Folk & acoustic",slug:"folk-acoustic",genres:["folk"]},love:{id:"love",name:"Love songs",slug:"love-songs",genres:["ballad"]},world:{id:"world",name:"World music",slug:"world-music",genres:["world"]},retro:{id:"retro",name:"Retro hits",slug:"retro-hits",era:/\b(19[5-9]0'?s|[5-9]0'?s|fifties|sixties|seventies|eighties|nineties|19[5-9]\d|retro|oldies|doo[\s-]?wop|motown|disco|golden age|old[\s-]?school|throwback|classic hits)\b/i}};let s=["song3","song4","song41","song45"];e.RADIO_MODELS=[...s,"music3","music4","music45"];let i=a=>[a.name,a.description,...a.tags||[]].filter(Boolean).join(" "),t=[["holiday",/\b(christmas|xmas|santa|jingle bells|navidad|halloween|spooky|thanksgiving|hanukkah|easter)\b/i],["kids",/\b(kids?|children'?s?|nursery|lullab(y|ies)|toddler|preschool|cartoon|bedtime)\b/i],["christian",/\b(gospel|worship|christian|hymn|praise (song|music)|jesus|hallelujah|psalm|biblical)\b/i],["hip-hop",/\b(hip[\s-]?hop|rap|rapp(ing|er|ed)|trap|drill|boom[\s-]?bap|grime|phonk|gangsta)\b/i],["metal",/\b(metal|metalcore|deathcore|thrash|screamo|djent)\b/i],["country",/\b(country|bluegrass|americana|honky[\s-]?tonk|banjo|western)\b/i],["flamenco",/\b(flamenc\w*|rumba|sevillanas?|buler[iÃ]as?|sole[aá]|spanish guitar|fandango|paso ?doble)\b/i],["latin",/\b(latin[oa]?|reggaet[oó]n|urbano|dembow|salsa|bachata|cumbia|merengue|corri
1dos?|banda|norte[ñn]o|mariachi|ranchera|bolero|tango|samba|sertanejo|forr[oó]|bossa nova|mambo|vallenato|tejano|andean|pan flute)\b/i],["reggae",/\b(reggae|dancehall|afro[\s-]?beats?|afro[\s-]?pop|afro[\s-]?house|amapiano|ska|dub|soca|highlife|gqom|kwaito|sungura)\b/i],["k-pop",/\b(k[\s-]?pop|j[\s-]?pop|j[\s-]?rock|anime|city pop|vocaloid)\b/i],["world",/\b(bollywood|hindi|punjabi|bhangra|desi|qawwali|ghazal|indian|sitar|tabla|arabic|khaleeji|dabke|oud|turkish|persian|middle eastern|balkan|chalga|turbo[\s-]?folk|polka|klezmer|greek|hellenic|schlager)\b/i],["jazz",/\b(jazz|jazzy|bebop|big band|electro[\s-]?swing)\b/i],["blues",/\b(blues|bluesy)\b/i],["r&b",/\b(r\s?&\s?b|rnb|r and b|neo[\s-]?soul|soul (music|song|ballad)|motown|funk|funky)\b/i],["electronic",/\b(edm|electro|electronic|electronica|techno|technobeat|trance|dubstep|drum ?(and|&|n'?) ?bass|dnb|synthwave|synth[\s-]?pop|retrowave|outrun|rave|hardstyle|hands up|future bass|disco|eurodance|eurobeat|breakbeat|big room|(deep|tech|progressive|melodic|acid|minimal|french|electro) house|house (music|beat|track)|dance (music|track|beat|song|anthem)|dance[\s-]?floor|club (music|track|banger))\b/i],["rock",/\b(rock|rock'?n'?roll|grunge|punk|alt[\s-]?rock|alternative rock|indie rock|garage rock|power ballad|rockabilly|emo)\b/i],["folk",/\b(folk|singer[\s-]?songwriter|campfire|unplugged)\b/i],["pop",/\b(pop|top 40|boy ?band|girl ?group)\b/i],["chill",/\b(lo[\s-]?fi|chillhop|chillwave|chillout|ambient|downtempo|new age|meditation music|spa music|sleep music|study music)\b/i],["classical",/\b(classical|sonata|baroque|concerto|string quartet|chamber music|nocturne|waltz|symphony)\b/i]],r=t.slice(0,3),l=[["chill",/\b(chill|relax(ing|ation)?|calm(ing)?|study|focus|sleep|meditat\w*|spa|zen|lounge|mellow|soothing|peaceful|healing)\b/i],["epic",/\b(cinematic|epic|orchestra(l)?|film score|movie|soundtrack|trailer|heroic|battle|adventure|fantasy|dramatic|viking|gothic|theme tune)\b/i],["ballad",/\b(ballad|balada|love song|romantic|serenade)\b/i],["piano",/\b(piano|harp|violin|cello|string quartet)\b/i],["instrumental",/\b(guitar|instrumental)\b/i]],c=/\b(jesus|jes[uú]s|lord|god|hallelujah|aleluya|savio(u)?r|holy spirit|jehovah|yahweh|dios|se[ñn]or|deus|senhor|cristo|christ|messiah)\b/gi,d=/\b(happy birthday|birthday|cumplea[ñn]os|geburtstag\w*|anivers[aá]rio|anniversaire|compleanno|anniversary|wedding|retirement|graduation|reunion|dedicated to|my name is|(for|about|to) (my|our) (wife|husband|girlfriend|boyfriend|fianc[eé]e?|mom|mum|mother|dad|father|son|daughter|grandma|grandpa|grandmother|grandfather|friend|boss|team|family|company|business|brand)|jingle|advert\w*|commercial (for|about)|(tv|radio) (spot|commercial)|podcast|logo|promo(tional)?|tangra)\b/i,u=/\b(fuck\w*|shit\w*|bitch\w*|cunt\w*|nigg\w*|fag(got)?s?|kike|nazi\w*|hitler|white power|poop|fart(s|ed|ing|y)?|bowels?)\b|пидоÑ|какаÑк|пÑкаÑк|\b(kick\w* out|go back|deport\w*|kill\w*|hate)\b.{0,30}\b(muslims?|jews?|christians?|immigrants?|refugees?|blacks?|gays?|arabs?|mexicans?)\b/i,m=a=>s.includes(a.model)?String(a.lyrics||""):"",h=a=>String(a||"").toLowerCase().replace(/[^\p{L}\p{N}]+/gu," ").trim(),p=a=>String(a||"").replace(/\[[^\]]*\]/g," ").replace(/\b(steam|cyber|solar|silk)[\s-]punk/gi,"$1punk"),g=(a,e)=>{let o=h(a);return e&&o.length>60&&h(e).includes(o.slice(0,60))?String(a).split("\n")[0].slice(0,150):String(a||"")},y=(a,e)=>{let o=null;for(let[n,s]of a){let a=e.search(s);a>=0&&(!o||a<o.at)&&(o={genre:n,at:a})}return o?.genre||null},b=a=>[g(a.keywords||a.description,m(a)),[a.name,...a.tags||[]].filter(Boolean).join(" | ")].map(p);e.genreOf=a=>{let e=m(a),o=b(a),n=a.keywords?p(g(a.description,e)):"",s=r.find(([,a])=>o.some(e=>a.test(e)));return s?s[0]:o.map(a=>y(t,a)).find(Boolean)||((e.match(c)||[]).length>=4?"christian":o.map(a=>y(l,a)).find(Boolean)||y(t,n)||y(l,n))},e.airable=a=>{let e=[a.keywords,a.name,a.description].filter(Boolean).join(" | "),o=m(a).replace(/(\p{Ll})(\p{Lu})/gu,"$1 $2");return!d.test(e)&&!/happy birthday|feliz cumplea/i.test(o)&&!u.test(`${e} ${o}`)};let f=r.map(([a])=>a);e.fitsStation=(a,o)=>{let n=Object.prototype.hasOwnProperty.call(e.STATIONS,a)&&e.STATIONS[a];return!!(n&&e.RADIO_MODELS.includes(o.model)&&e.airable(o))&&(n.genres?n.genres.includes(e.genreOf(o)):n.era?n.era.test(b(o).join(" | "))&&!f.includes(e.genreOf(o)):s.includes(o.model)?e.lyricsLanguage(o.lyrics)===n.language:n.style.test(i(o)))},e.stationLike=a=>{let o=Object.values(e.STATIONS),n=e.genreOf(a),t=o.find(a=>a.genres?.includes(n));if(t)return t.id;let r=s.includes(a.model)?e.lyricsLanguage(a.lyrics):void 0,l=o.find(e=>e.language&&(r?e.language===r:e.style.test(i(a))));return l?l.id:null};let w=[[/buler[iÃ]a/i,"Buler\xedas"],[/sole[aá]/i,"Sole\xe1"],[/rumba/i,"Rumba flamenca"],[/flamenco.?jazz/i,"Flamenco jazz"],[/flamenc/i,"Flamenco"],[/spanish guitar|guitarra espa/i,"spanish-guitar"],[/bachata/i,"Bachata"],[/salsa/i,"Salsa"],[/cumbia/i,"Cumbia"],[/merengue/i,"Merengue"],[/tango/i,"Tango"],[/bolero/i,"Bolero"],[/corrido/i,"Corrido"],[/mariac
1hi|ranchera/i,"Ranchera"],[/bossa/i,"Bossa nova"],[/black metal/i,"Black metal"],[/death metal|deathcore/i,"Death metal"],[/nu[\s-]?metal|new metal/i,"Nu metal"],[/power metal/i,"Power metal"],[/symphonic metal/i,"Symphonic metal"],[/viking metal/i,"Viking metal"],[/metalcore/i,"Metalcore"],[/heavy metal/i,"Heavy metal"],[/\bmetal\b/i,"Metal"],[/country rock/i,"Country rock"],[/\bpunk\b/i,"Punk"],[/grunge/i,"Grunge"],[/hard rock/i,"Hard rock"],[/rock ?opera/i,"Rock opera"],[/\bindie\b/i,"Indie"],[/\balt(ernative)?[\s-]?rock/i,"Alternative rock"],[/\brock\b/i,"Rock"],[/synthwave|retrowave|outrun/i,"Synthwave"],[/hardstyle/i,"Hardstyle"],[/drum ?(and|&|n'?) ?bass|\bdnb\b/i,"Drum & bass"],[/dubstep/i,"Dubstep"],[/trance/i,"Trance"],[/techno/i,"Techno"],[/(deep|tech|progressive|melodic) house|house music/i,"House"],[/\bedm\b/i,"EDM"],[/synth[\s-]?pop/i,"Synth-pop"],[/\bdisco\b/i,"Disco"],[/viking/i,"Viking"],[/orchestra/i,"Orchestral"],[/cinematic/i,"Cinematic"],[/reggaet[oó]n/i,"Reggaeton"],[/latin pop/i,"Latin pop"],[/samba/i,"Samba"],[/\bk[\s-]?pop\b/i,"K-pop"],[/\bj[\s-]?pop\b/i,"J-pop"],[/\banime\b/i,"Anime"],[/afro[\s-]?beats?/i,"Afrobeats"],[/amapiano/i,"Amapiano"],[/dancehall/i,"Dancehall"],[/reggae/i,"Reggae"],[/\bdrill\b/i,"Drill"],[/\btrap\b/i,"Trap"],[/hip[\s-]?hop/i,"Hip-hop"],[/\brap\b/i,"Rap"],[/neo[\s-]?soul/i,"Neo-soul"],[/r\s?&\s?b|\brnb\b/i,"R&B"],[/\bfunk/i,"Funk"],[/\bsoul (music|song|ballad)\b/i,"Soul"],[/bluegrass/i,"Bluegrass"],[/\bcountry\b/i,"Country"],[/gospel/i,"Gospel"],[/worship/i,"Worship"],[/christmas|xmas/i,"Christmas"],[/lullab/i,"Lullaby"],[/lo[\s-]?fi/i,"Lo-fi"],[/ambient/i,"Ambient"],[/meditat/i,"Meditation"],[/big band/i,"Big band"],[/\bjazz/i,"Jazz"],[/\bblues/i,"Blues"],[/singer[\s-]?songwriter/i,"Singer-songwriter"],[/\bfolk\b/i,"Folk"],[/bollywood/i,"Bollywood"],[/klezmer/i,"Klezmer"],[/schlager/i,"Schlager"],[/doo[\s-]?wop/i,"Doo-wop"],[/classical/i,"Classical"],[/\bpiano\b/i,"Piano"],[/\bpop\b/i,"Pop"],[/balada|ballad/i,"Balada"]],k=[...t,...l.slice(0,3)].map(([,a])=>a).concat(w.map(([a])=>a));e.styleOf=a=>{let e=(a.tags||[]).find(a=>k.some(e=>e.test(a)));if(e)return e;let o=m(a);for(let e of[g(a.keywords,o),a.name,g(a.description,o)]){let a=e&&w.find(([a])=>a.test(e));if(a)return a[1]}return null},e.REACTIONS=["love","fire","dance","tears"];let v="https://cdn.tangra.link/";e.CDN=v,e.gainFor=a=>Number.isFinite(a)?Math.min(1,Math.round(10**((-14-a)/20)*100)/100):1,e.countsOf=a=>Object.fromEntries(e.REACTIONS.map(e=>[e,Math.max(0,a?.reactions?.[e]||0)])),e.trackOf=(a,o={})=>({id:a.filename,title:a.name||"",audio:`${v}music/${n(a)}`,cover:a.imageThumbUrl||null,coverLarge:String(a.imageUrl||"").startsWith(v)?a.imageUrl:a.imageThumbUrl||null,length:a.length||null,genre:e.styleOf(a),lyrics:a.lyrics||null,lrc:a.syncedLyricsLrc||null,gain:e.gainFor(o.lufs),reactions:e.countsOf(o),madeOn:a.createdOn?new Date(a.createdOn).toISOString():null});let S=Object.fromEntries(Object.entries({es:"el la los las de del y en un una que por con para no se me te mi tu yo es lo al como pero m\xe1s mas muy sin cuando donde porque quiero eres estoy soy tengo coraz\xf3n corazon noche siempre hoy aqu\xed aqui ahora ella \xe9l t\xfa m\xed conmigo esta este est\xe1 hay sue\xf1o cielo",en:"the and you i to a of in my me is it that on your for with be all we love so this can what just like when know oh baby night heart go do dont im",pt:"n\xe3o nao voc\xea voce eu meu minha cora\xe7\xe3o coracao um uma com para em \xe9 e o os as do da dos das ao pra t\xe1 seu sua muito",it:"il che di non per sono mio mia cuore io ti mi con una gli le della nel sei amore ancora",fr:"le les je tu et est pas mon ma ton ta dans pour avec une des qui nous vous coeur amour toi moi"}).map(([a,e])=>[a,new Set(e.split(" "))]));e.lyricsLanguage=a=>{let e=String(a||"").toLowerCase().replace(/\[[^\]]*\]|\([^)]*\)/g," ").split(/[^a-záéÃóúüñà èìòùâêôãõçÅ']+/).filter(Boolean);if(e.length<20)return;let[o,n]=Object.entries(S).map(([a,o])=>[a,e.filter(a=>o.has(a)).length/e.length]).sort((a,e)=>e[1]-a[1]);return o[1]>=.2&&o[1]>=2*n[1]?o[0]:void 0}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.