PageSourceSearch

https://joinloops.org/_nuxt/Cx7igeR6.js

js joinloops.org collected 2026-09-24 09:21:16 UTC 19,458 bytes, 1 lines download raw bytes

1import S from"./DMC0nVeK.js";import{_ as B}from"./C-4FB16b.js";import{d as I}from"./DVdlW3MI.js";import{a as V}from"./BZinB5Kq.js";import{c as r,a as e,q as p,F as c,r as g,b as i,d as h,g as m,o as a,n as x,f as b,t as s}from"./BNkJtGqZ.js";import"./DUR2zDW2.js";const F={class:"min-h-screen bg-white dark:bg-gray-900"},M={id:"services-list",class:"relative py-48 bg-gray-50 dark:bg-gray-800"},T={class:"px-4 mx-auto max-w-7xl sm:px-6 lg:px-8"},E={class:"grid grid-cols-1 md:grid-cols-2 gap-8"},A={class:"relative p-8 bg-white rounded-2xl shadow-lg hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 dark:bg-gray-900 border border-gray-100 dark:border-gray-700"},P={class:"absolute top-4 right-4"},R={class:"relative flex h-2 w-2"},N={key:0,class:"animate-ping absolute inline-flex h-full w-full rounded-full bg-green-400 opacity-75"},D={class:"flex justify-center mb-6"},H={class:"text-center mb-4"},U={class:"text-2xl font-bold text-gray-900 dark:text-white mb-1"},z={class:"text-sm text-gray-500 dark:text-gray-400 font-mono"},q={class:"text-gray-600 dark:text-gray-300 text-center mb-6 min-h-[60px]"},$={class:"space-y-3 mb-6"},G={class:"flex items-center justify-center gap-3 pt-4 border-t border-gray-100 dark:border-gray-700"},J=["href"],Y=["href"],W={id:"official-instances",class:"relative py-48 bg-white dark:bg-gray-900"},K={class:"px-4 mx-auto max-w-7xl sm:px-6 lg:px-8"},Q={class:"max-w-3xl mx-auto"},X={class:"relative p-8 bg-white rounded-2xl shadow-lg hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 dark:bg-gray-900 border border-gray-100 dark:border-gray-700"},Z={class:"absolute top-4 right-4"},ee={class:"inline-flex items-center gap-1.5 px-3 py-1 text-xs font-bold rounded-full bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200"},te={class:"flex flex-col md:flex-row items-center gap-8"},oe={class:"flex-shrink-0"},se={class:"w-24 h-24 rounded-2xl flex items-center justify-center group-hover:scale-110 transition-transform duration-300 bg-gradient-to-br from-brand-400 to-brand-600"},re={class:"flex-1 text-center md:text-left"},ae={class:"text-2xl font-bold text-gray-900 dark:text-white mb-1"},ie={class:"text-sm text-gray-500 dark:text-gray-400 font-mono mb-3"},ne={class:"text-gray-600 dark:text-gray-300 mb-4"},le={class:"flex flex-wrap justify-center md:justify-start gap-2 mb-4"},de={class:"flex flex-col md:flex-row items-center justify-center gap-3 pt-6 mt-6 border-t border-gray-100 dark:border-gray-700"},ce=["href"],ge=["href"],pe={id:"official-platforms",class:"relative py-48 bg-gray-50 dark:bg-gray-800"},xe={class:"px-4 mx-auto max-w-7xl sm:px-6 lg:px-8"},he={class:"grid grid-cols-1 md:grid-cols-2 gap-8"},me={class:"relative p-8 bg-white rounded-2xl shadow-lg hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 dark:bg-gray-900 border border-gray-100 dark:border-gray-700"},fe={class:"absolute top-4 right-4"},ue={class:"inline-flex items-center px-3 py-1 text-xs font-bold rounded-full bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-400"},be={class:"flex justify-center mb-6"},ye={class:"text-center mb-4"},ve={class:"text-2xl font-bold text-gray-900 dark:text-white mb-1"},_e={class:"text-sm text-gray-500 dark:text-gray-400 font-mono"},we={class:"text-gray-600 dark:text-gray-300 text-center mb-6 min-h-[60px]"},ke={class:"flex items-center justify-center pt-4 border-t border-gray-100 dark:border-gray-700"},Le=["href"],Ce={class:"font-medium text-lg"},je={id:"official-social",class:"relative py-48 bg-white dark:bg-gray-900"},Oe={class:"px-4 mx-auto max-w-7xl sm:px-6 lg:px-8"},Se={class:"grid grid-cols-1 md:grid-cols-2 gap-8"},Be={class:"relative p-8 bg-white rounded-2xl shadow-lg hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 dark:bg-gray-900 border border-gray-100 dark:border-gray-700"},Ie={class:"absolute top-4 right-4"},Ve={class:"inline-flex items-center px-3 py-1 text-xs font-bold rounded-full bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-400"},Fe={class:"flex justify-center mb-6"},Me={class:"text-center mb-4"},Te={class:"text-2xl font-bold text-gray-900 dark:text-white mb-1"},Ee={class:"text-sm text-gray-500 dark:text-gray-400 font-mono break-all"},Ae={class:"text-gray-600 dark:text-gray-300 text-center mb-6 min-h-[60
1px]"},Pe={class:"flex items-center justify-center pt-4 border-t border-gray-100 dark:border-gray-700"},Re=["href"],Ne={class:"font-medium text-lg"},De={id:"verification-notice",class:"relative py-24 bg-gray-50 dark:bg-gray-800"},He={class:"px-4 mx-auto max-w-4xl sm:px-6 lg:px-8"},Ue={class:"relative p-8 md:p-12 bg-gradient-to-br from-brand-50 to-brand-100 dark:from-gray-950 dark:to-gray-900 rounded-2xl border border-brand-200 dark:border-gray-700"},ze={class:"flex flex-col md:flex-row items-center gap-6"},qe={class:"flex-shrink-0"},$e={class:"w-16 h-16 rounded-full bg-brand-500 flex items-center justify-center"},Ze={__name:"platform-services",setup(Ge){I("Logo",{}),V({title:"Loops - Platform Services.",ogTitle:"Loops - Platform Services.",description:"The official infrastructure and services powering the Loops network. Verified and maintained by the Loops team.",ogDescription:"The official infrastructure and services powering the Loops network. Verified and maintained by the Loops team.",twitterCard:"summary_large_image"});const y=m([{name:"Content Relay",domain:"relay.loopsplatform.com",status:"active",icon:"heroicons:sparkles-solid",iconBg:"bg-gradient-to-br from-brand-400 to-brand-600",description:"A moderated discovery firehose for the fediverse. Public videos from loops.video, the largest Loops server, delivered to your instance the moment they are posted.",features:["Moderated discovery firehose","Auto-approval for Loops instances","Available for all Loops instances"],url:"https://relay.loopsplatform.com",docs:null},{name:"Push Relay",domain:"push.loopsplatform.com",status:"active",icon:"heroicons:bell-alert-solid",iconBg:"bg-gradient-to-br from-brand-400 to-brand-600",description:"Push notification relay service for the Loops mobile app. Delivers real-time notifications to iOS and Android devices.",features:["Real-time push notification delivery","iOS (APNs) and Android (FCM) support","Available for all Loops instances"],url:"https://push.loopsplatform.com",docs:null},{name:"Beacon",domain:"beacon.joinloops.org",status:"active",icon:"heroicons:signal-solid",iconBg:"bg-gradient-to-br from-brand-400 to-brand-600",description:"Version update and starter kit distribution service. Helps instances stay up to date and discover curated content.",features:["Version update notifications","Starter kit distribution","Instance health checks"],url:"https://beacon.joinloops.org",docs:null},{name:"API Docs",domain:"docs.joinloops.org",status:"active",icon:"heroicons:code-bracket",iconBg:"bg-gradient-to-br from-brand-400 to-brand-600",description:"Developer API documentation for the Loops platform.",features:[],url:"https://docs.joinloops.org",docs:null}]),v=m([{name:"Loops",domain:"loops.video",badge:"FLAGSHIP",icon:"heroicons:play-circle-solid",description:"The flagship Loops instance operated by the project creator. Home of the core team and the primary hub for the Loops community.",tags:["Official","Open Registration","ActivityPub"],url:"https://loops.video",register:"https://loops.video/register"}]),_=m([{name:"GitHub",handle:"github.com/joinloops",category:"SOURCE CODE",icon:"simple-icons:github",iconBg:"bg-[#181717]",description:"Browse the source code, report issues, and open pull requests. Loops 
1is fully open source.",cta:"View Source",url:"https://github.com/joinLoops"},{name:"Codeberg",handle:"codeberg.org/loops",category:"SOURCE MIRROR",icon:"simple-icons:codeberg",iconBg:"bg-[#2185D0]",description:"Our official source mirror on Codeberg, a community-run, non-commercial forge.",cta:"View Mirror",url:"https://codeberg.org/loops"},{name:"Discord",handle:"discord.gg/wvud8BgFv8",category:"COMMUNITY",icon:"simple-icons:discord",iconBg:"bg-[#5865F2]",description:"Join the community to get support and chat with the team and other Loops users.",cta:"Join Server",url:"https://discord.gg/wvud8BgFv8"},{name:"Matrix",handle:"#loops:matrix.org",category:"COMMUNITY",icon:"simple-icons:matrix",iconBg:"bg-black",description:"Prefer Matrix? Join our community room on the decentralized Matrix network.",cta:"Join Room",url:"https://matrix.to/#/%23loops:matrix.org"}]),w=m([{name:"Pixelfed",handle:"@[email protected]",category:"PHOTOS",icon:"simple-icons:pixelfed",iconBg:"bg-[#ec2048] bg-[radial-gradient(circle_at_24%_76%,#ac37c9_0_34%,transparent_35%),radial-gradient(circle_at_24%_36%,#ec2048_0_38%,transparent_39%),radial-gradient(circle_at_56%_18%,#fd7f15_0_36%,transparent_37%),radial-gradient(circle_at_80%_46%,#0fd847_0_40%,transparent_41%),radial-gradient(circle_at_60%_82%,#009cf9_0_40%,transparent_41%)]",description:"Official announcements and updates on Pixelfed, the federated photo network.",cta:"Follow",url:"https://pixelfed.social/loops"},{name:"Loops",handle:"@[email protected]",category:"VIDEO",icon:"heroicons:play-circle-solid",iconBg:"bg-gradient-to-br from-brand-400 to-brand-600",description:"Short-form video from the Loops team, posted right here on Loops.",cta:"Follow",url:"https://loops.video/@loops"},{name:"Mastodon",handle:"@[email protected]",category:"MICROBLOG",icon:"simple-icons:mastodon",iconBg:"bg-[#6364FF]",description:"Follow for announcements, release notes, and updates from the Loops team.",cta:"Follow",url:"https://mastodon.social/@joinloops"},{name:"Bluesky",handle:"@joinloops.org",category:"MICROBLOG",icon:"simple-icons:bluesky",iconBg:"bg-[#0f73ff]",description:"Follow for announcements, release notes, and updates from the Loops team on Bluesky.",cta:"Follow",url:"http://bsky.app/profile/joinloops.org"}]),k=d=>{const o={active:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200",beta:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200",planned:"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300"};return o[d]||o.planned},L=d=>{const o={active:"bg-green-500",beta:"bg-yellow-500",planned:"bg-gray-400"};return o[d]||o.planned},C=d=>({active:"ACTIVE",beta:"BETA",planned:"COMING SOON"})[d]||"PLANNED",j={backgroundImage:"url('data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23f9a8d4' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E')"};return(d,o)=>{const n=S,O=B;return a(),r("div",F,[e("section",{id:"services-hero",class:"relative py-48 overflow-hidden dark:bg-gray-900"},[e("div",{class:"absolute inset-0 bg-white dark:bg-gray-900",style:j}),o[0]||(o[0]=p('<div class="relative z-10 px-4 mx-auto max-w-7xl sm:px-6 lg:px-8 text-center"><div class="inline-flex items-center justify-center p-1 px-3 mb-4 rounded-full bg-brand-500"><span class="text-sm font-semibold text-white">OFFICIAL SERVICES</span></div><h1 class="mt-4 text-4xl font-extrabold text-gray-900 lg:text-6xl dark:text-white"> Loops <span class="relative"><span class="relative z-10 text-brand-500">Platform Services <svg class="absolute w-full -bottom-2 left-0" viewBox="0 0 358 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3 9C118.957 4.47226 184.609 -1.86658 355 9" stroke="#f02c56" stroke-width="6" stroke-linecap="round"></path></svg></span></span></h1><p class="mt-8 text-xl text-gray-600 dark:text-gray-300 max-w-3xl mx-auto">
1 The official infrastructure and services powering the Loops network. Verified and maintained by the Loops team. </p></div>',1))]),e("section",M,[e("div",T,[o[3]||(o[3]=p('<div class="text-center mb-16"><div class="inline-flex items-center justify-center p-1 px-3 mb-4 rounded-full bg-brand-500"><span class="text-sm font-semibold text-white">INFRASTRUCTURE</span></div><h2 class="text-4xl font-extrabold text-gray-900 dark:text-white"> Verified Platform Services </h2><p class="mt-4 text-xl text-gray-600 dark:text-gray-300"> These services are officially operated by the Loops project. If a service is not listed here, it is not official. </p></div>',1)),e("div",E,[(a(!0),r(c,null,g(y.value,(t,l)=>(a(),r("div",{key:`service-${l}`,class:"relative group"},[e("div",A,[e("div",P,[e("span",{class:x(["inline-flex items-center gap-1.5 px-3 py-1 text-xs font-bold rounded-full",k(t.status)])},[e("span",R,[t.status==="active"?(a(),r("span",N)):b("",!0),e("span",{class:x(["relative inline-flex rounded-full h-2 w-2",L(t.status)])},null,2)]),h(" "+s(C(t.status)),1)],2)]),e("div",D,[e("div",{class:x(["w-20 h-20 rounded-2xl flex items-center justify-center group-hover:scale-110 transition-transform duration-300",t.iconBg])},[i(n,{name:t.icon,class:"w-10 h-10 text-white"},null,8,["name"])],2)]),e("div",H,[e("h3",U,s(t.name),1),e("p",z,s(t.domain),1)]),e("p",q,s(t.description),1),e("div",$,[(a(!0),r(c,null,g(t.features,(f,u)=>(a(),r("div",{key:`feature-${u}`,class:"flex items-center gap-2 text-sm text-gray-600 dark:text-gray-400"},[i(n,{name:"heroicons:check-circle-solid",class:"w-5 h-5 text-brand-500 flex-shrink-0"}),e("span",null,s(f),1)]))),128))]),e("div",G,[e("a",{href:t.url,target:"_blank",class:"flex items-center gap-2 px-8 py-3 text-sm bg-brand-500 hover:bg-brand-600 text-white rounded-full transition-colors"},[i(n,{name:"heroicons:arrow-top-right-on-square",class:"w-5 h-5"}),o[1]||(o[1]=e("span",{class:"font-medium text-lg"},"Visit Service",-1))],8,J),t.docs?(a(),r("a",{key:0,href:t.docs,target:"_blank",class:"flex items-center gap-2 px-5 py-3 text-sm bg-gray-100 hover:bg-gray-200 dark:bg-gray-800 dark:hover:bg-gray-700 rounded-full transition-colors"},[i(n,{name:"heroicons:book-open",class:"w-5 h-5"}),o[2]||(o[2]=e("span",{class:"text-gray-700 dark:text-gray-300 font-medium text-lg"},"Docs",-1))],8,Y)):b("",!0)])])]))),128))])])]),e("section",W,[e("div",K,[o[7]||(o[7]=p('<div class="text-center mb-16"><div class="inline-flex items-center justify-center p-1 px-3 mb-4 rounded-full bg-brand-500"><span class="text-sm font-semibold text-white">OFFICIAL INSTANCES</span></div><h2 class="text-4xl font-extrabold text-gray-900 dark:text-white"> Operated by the Loops Team </h2><p class="mt-4 text-xl text-gray-600 dark:text-gray-300"> These Loops instances are directly managed and maintained by the project team. </p></div>',1)),e("div",Q,[(a(!0),r(c,null,g(v.value,(t,l)=>(a(),r("div",{key:`instance-${l}`,class:"relative group"},[e("div",X,[e("div",Z,[e("span",ee,[o[4]||(o[4]=e("span",{class:"relative flex h-2 w-2"},[e("span",{class:"animate-ping absolute inline-flex h-full w-full rounded-full bg-green-400 opacity-75"}),e("span",{class:"relative inline-flex rounded-full h-2 w-2 bg-green-500"})],-1)),h(" "+s(t.badge),1)])]),e("div",te,[e("div",oe,[e("div",se,[i(n,{name:t.icon,class:"w-12 h-12 text-white"},null,8,["name"])])]),e("div",re,[e("h3",ae,s(t.name),1),e("p",ie,s(t.domain),1),e("p",ne,s(t.description),1),e("div",le,[(a(!0),r(c,null,g(t.tags,(f,u)=>(a(),r("span",{key:`tag-${u}`,class:"px-3 py-1 text-xs font-semibold rounded-full bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-400"},s(f),1))),128))])])]),e("div",de,[e("a",{href:t.url,target:"_blank",class:"flex items-center gap-2 px-8 py-3 text-sm bg-brand-500 hover:bg-brand-600 text-white rounded-full transition-colors"},[i(n,{name:"heroicons:arrow-top-right-on-square",class:"w-5 h-5"}),o[5]||(o[5]=e("span",{class:"font-medium text-lg"},"Visit Instance",-1))],8,ce),t.register?(a(),r("a",{key:0,href:t.register,target:"_blank",class:"flex items-center gap-2 px-5 py-3 text-sm bg-gray-100 hover:bg-gray-200 dark:bg-gray-800 dark:hover:bg-gray-700 rounded-full transition-colors"},[i(n,{name:"heroicons:user-plus",class:"w-5 h-5"}),o[6]||(o[6]=e("span",{class:"text-gray-700 dark:text-gray-300 font-medium text-lg"},"Sign Up",-1))],8,ge)):b("",!0)])])]))),128))])])]),e("section",pe,[e("div",xe,[o[8]||(o[8]=p('<div class="text-center mb-16"><div class="inline-flex items-center justify-center p-1 px-3 mb-4 rounded-full bg-brand-500"><span class="text-sm font-semibold text-white">COMMUNITY &amp; SOURCE</span></div><h2 class="text-4xl font-extrabold text-gray-900 dark:text-white"> Official Third-Party Platforms </h2><p class="mt-4 text-xl text-gray-600 dark:text-gray-300"> Find Loops on these external platforms. These are our only official accounts, anything else isn&#39;t us. </p></div>',1)),e("div",he,[(a(!0),r(c,null,g(_.value,(t,l)=>(a(),r("div",{key:`platform-${l}`,class:"relative group"},[e("div",me,[e("div",fe,[e("span",ue,s(t.category),1)]),e("div",be,[e("div",{class:x(["w-20 h-20 rounded-2xl flex items-center justify-center group-hover:scale-110 transition-transform duration-300",t.iconBg])}
1,[i(n,{name:t.icon,class:"w-10 h-10 text-white"},null,8,["name"])],2)]),e("div",ye,[e("h3",ve,s(t.name),1),e("p",_e,s(t.handle),1)]),e("p",we,s(t.description),1),e("div",ke,[e("a",{href:t.url,target:"_blank",rel:"noopener noreferrer",class:"flex items-center gap-2 px-8 py-3 text-sm bg-brand-500 hover:bg-brand-600 text-white rounded-full transition-colors"},[i(n,{name:"heroicons:arrow-top-right-on-square",class:"w-5 h-5"}),e("span",Ce,s(t.cta),1)],8,Le)])])]))),128))])])]),e("section",je,[e("div",Oe,[o[9]||(o[9]=p('<div class="text-center mb-16"><div class="inline-flex items-center justify-center p-1 px-3 mb-4 rounded-full bg-brand-500"><span class="text-sm font-semibold text-white">FOLLOW US</span></div><h2 class="text-4xl font-extrabold text-gray-900 dark:text-white"> Official Social Accounts </h2><p class="mt-4 text-xl text-gray-600 dark:text-gray-300"> Follow Loops across the fediverse. These are the only accounts we post from — if it isn&#39;t listed here, it isn&#39;t us. </p></div>',1)),e("div",Se,[(a(!0),r(c,null,g(w.value,(t,l)=>(a(),r("div",{key:`social-${l}`,class:"relative group"},[e("div",Be,[e("div",Ie,[e("span",Ve,s(t.category),1)]),e("div",Fe,[e("div",{class:x(["w-20 h-20 rounded-3xl flex items-center justify-center group-hover:scale-110 transition-transform duration-300",t.iconBg])},[i(n,{name:t.icon,class:"w-10 h-10 text-white"},null,8,["name"])],2)]),e("div",Me,[e("h3",Te,s(t.name),1),e("p",Ee,s(t.handle),1)]),e("p",Ae,s(t.description),1),e("div",Pe,[e("a",{href:t.url,target:"_blank",rel:"noopener noreferrer",class:"flex items-center gap-2 px-8 py-3 text-sm bg-brand-500 hover:bg-brand-600 text-white rounded-full transition-colors"},[i(n,{name:"heroicons:arrow-top-right-on-square",class:"w-5 h-5"}),e("span",Ne,s(t.cta),1)],8,Re)])])]))),128))])])]),e("section",De,[e("div",He,[e("div",Ue,[e("div",ze,[e("div",qe,[e("div",$e,[i(n,{name:"heroicons:shield-check-solid",class:"w-8 h-8 text-white"})])]),o[10]||(o[10]=e("div",{class:"text-center md:text-left"},[e("h3",{class:"text-2xl font-bold text-gray-900 dark:text-white mb-2"}," Verify Before You Trust "),e("p",{class:"text-gray-600 dark:text-gray-300 text-lg"},[h(" Only services listed on this page are officially operated by the Loops project. If you encounter a service claiming to be part of Loops that isn't listed here, please report it to "),e("a",{href:"mailto:[email protected]",target:"_blank",class:"text-brand-500 hover:text-brand-600 font-semibold"},"[email protected]"),h(" via email. ")])],-1))])])])]),i(O)])}}};export{Ze as default};

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.