@sockethub/examples 1.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +165 -0
- package/README.md +174 -0
- package/build/_app/env.js +1 -0
- package/build/_app/immutable/assets/0.JUA-HkH6.css +1 -0
- package/build/_app/immutable/assets/sockethub.Bpv0Wt6b.css +1 -0
- package/build/_app/immutable/chunks/B-2myMF5.js +1 -0
- package/build/_app/immutable/chunks/BBdxXcNs.js +23 -0
- package/build/_app/immutable/chunks/BhL0iima.js +4 -0
- package/build/_app/immutable/chunks/BnKTx64M.js +1 -0
- package/build/_app/immutable/chunks/BqKPKu0n.js +1 -0
- package/build/_app/immutable/chunks/Br1aAxXP.js +1 -0
- package/build/_app/immutable/chunks/C1LF9VyP.js +1 -0
- package/build/_app/immutable/chunks/CARmnL8B.js +1 -0
- package/build/_app/immutable/chunks/CC-fhLYv.js +1 -0
- package/build/_app/immutable/chunks/CFHe0i8O.js +1 -0
- package/build/_app/immutable/chunks/Cf7Xaqef.js +1 -0
- package/build/_app/immutable/chunks/Ciq9INsC.js +1 -0
- package/build/_app/immutable/chunks/CoHdmBcD.js +1 -0
- package/build/_app/immutable/chunks/D_xw8KSE.js +1 -0
- package/build/_app/immutable/chunks/DqdrLdzV.js +2 -0
- package/build/_app/immutable/chunks/P3PHXZz3.js +2 -0
- package/build/_app/immutable/entry/app.DgSDqHHR.js +2 -0
- package/build/_app/immutable/entry/start.CTdg5BqQ.js +1 -0
- package/build/_app/immutable/nodes/0.i_jJRDZB.js +39 -0
- package/build/_app/immutable/nodes/1.BlhUuP-P.js +1 -0
- package/build/_app/immutable/nodes/2.CggxtO4e.js +5 -0
- package/build/_app/immutable/nodes/3.1s4AoiT3.js +1 -0
- package/build/_app/immutable/nodes/4.Ck-0hor4.js +1 -0
- package/build/_app/immutable/nodes/5.BV2I1j0o.js +1 -0
- package/build/_app/immutable/nodes/6.PZ-pmrq7.js +1 -0
- package/build/_app/immutable/nodes/7.C7IiHO6h.js +1 -0
- package/build/_app/version.json +1 -0
- package/build/config.json +9 -0
- package/build/dummy.html +38 -0
- package/build/favicon.ico +0 -0
- package/build/feed.xml +29 -0
- package/build/feeds.html +38 -0
- package/build/index.html +38 -0
- package/build/irc.html +38 -0
- package/build/metadata.html +38 -0
- package/build/sockethub-logo.svg +147 -0
- package/build/xmpp.html +38 -0
- package/package.json +63 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import{f as x,a as g,s as y,c as W}from"../chunks/DqdrLdzV.js";import{t as S,c as t,n as C,r as e,s as m,p as q,a as z,g as f,u as D,ag as E,f as F,F as B}from"../chunks/Ciq9INsC.js";import{a as w,s as k,b as H}from"../chunks/P3PHXZz3.js";import{c as N,e as V,i as X,h as G,b as J}from"../chunks/BBdxXcNs.js";import{b as A}from"../chunks/Br1aAxXP.js";import"../chunks/BnKTx64M.js";import{i as K,s as I,b as T}from"../chunks/Cf7Xaqef.js";import{i as Q}from"../chunks/B-2myMF5.js";import{s as U}from"../chunks/BqKPKu0n.js";const Y=!0,Z=!1,fe=Object.freeze(Object.defineProperty({__proto__:null,prerender:Y,ssr:Z},Symbol.toStringTag,{value:"Module"})),ee=`<style>/*!
|
|
2
|
+
Theme: Edge Light
|
|
3
|
+
Author: cjayross (https://github.com/cjayross)
|
|
4
|
+
License: ~ MIT (or more permissive) [via base16-schemes-source]
|
|
5
|
+
Maintainer: @highlightjs/core-team
|
|
6
|
+
Version: 2021.09.0
|
|
7
|
+
*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#5e646f;background:#fafafa}.hljs::selection,
|
|
8
|
+
.hljs ::selection{background-color:#d69822;color:#5e646f}.hljs-comment{color:#5e646f}.hljs-tag{color:#6587bf}.hljs-subst,
|
|
9
|
+
.hljs-punctuation,
|
|
10
|
+
.hljs-operator{color:#5e646f}.hljs-operator{opacity:0.7}.hljs-bullet,
|
|
11
|
+
.hljs-variable,
|
|
12
|
+
.hljs-template-variable,
|
|
13
|
+
.hljs-selector-tag,
|
|
14
|
+
.hljs-name,
|
|
15
|
+
.hljs-deletion,.hljs-symbol,
|
|
16
|
+
.hljs-number,
|
|
17
|
+
.hljs-link,
|
|
18
|
+
.hljs-attr,
|
|
19
|
+
.hljs-variable.constant_,
|
|
20
|
+
.hljs-literal{color:#db7070}.hljs-title,
|
|
21
|
+
.hljs-class .hljs-title,
|
|
22
|
+
.hljs-title.class_,.hljs-strong{color:#d69822}.hljs-strong{font-weight:bold}.hljs-code,
|
|
23
|
+
.hljs-addition,
|
|
24
|
+
.hljs-title.class_.inherited__,
|
|
25
|
+
.hljs-string{color:#7c9f4b}.hljs-built_in,
|
|
26
|
+
.hljs-doctag,
|
|
27
|
+
.hljs-quote,
|
|
28
|
+
.hljs-keyword.hljs-atrule,
|
|
29
|
+
.hljs-regexp{color:#509c93}.hljs-function .hljs-title,
|
|
30
|
+
.hljs-attribute,
|
|
31
|
+
.ruby .hljs-property,
|
|
32
|
+
.hljs-title.function_,
|
|
33
|
+
.hljs-section{color:#6587bf}.hljs-type,
|
|
34
|
+
.hljs-template-tag,
|
|
35
|
+
.diff .hljs-meta,
|
|
36
|
+
.hljs-keyword,.hljs-emphasis{color:#b870ce}.hljs-emphasis{font-style:italic}.hljs-meta,
|
|
37
|
+
.hljs-meta .hljs-keyword,
|
|
38
|
+
.hljs-meta .hljs-string{color:#509c93}.hljs-meta .hljs-keyword,
|
|
39
|
+
.hljs-meta-keyword{font-weight:bold}</style>`;var te=x('<p class="text-xs text-gray-500 text-center mt-2">Make sure Sockethub server is running</p>'),se=x('<div class="bg-white border border-gray-200 rounded-lg p-4 shadow-sm"><div class="flex items-center justify-center space-x-3"><div class="flex items-center space-x-2"><div></div> <span class="text-sm font-medium text-gray-700">Sockethub Connection</span></div> <span> </span></div> <!></div>');function ae(s){const r=()=>T(N,"$connected",d),[d,h]=I();var o=se(),p=t(o),a=t(p),b=t(a);C(2),e(a);var l=m(a,2),n=t(l,!0);e(l),e(p);var u=m(p,2);{var j=i=>{var v=te();g(i,v)};K(u,i=>{r()||i(j)})}e(o),S(()=>{w(b,1,`w-3 h-3 rounded-full ${r()?"bg-green-400 animate-pulse":"bg-gray-300"}`),w(l,1,`px-3 py-1 rounded-full text-xs font-bold uppercase tracking-wide ${r()?"bg-green-100 text-green-800":"bg-gray-100 text-gray-600"}`),y(n,r()?"Connected":"Disconnected")}),g(s,o),h()}const re=()=>{const s=U;return{page:{subscribe:s.page.subscribe},navigating:{subscribe:s.navigating.subscribe},updated:s.updated}},oe={subscribe(s){return re().page.subscribe(s)}};var le=x('<a><span class="text-sm"> </span> <span class="ml-1"> </span> <div class="absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 px-2 py-1 bg-gray-800 text-white text-xs rounded opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none whitespace-nowrap z-10"> <div class="absolute top-full left-1/2 transform -translate-x-1/2 border-2 border-transparent border-t-gray-800"></div></div></a>'),ne=x('<nav class="flex justify-center flex-wrap gap-2 p-2"></nav>');function ie(s,r){q(r,!1);const d=()=>T(oe,"$page",h),[h,o]=I(),p=[["🏠","Home","/","Start here to understand Sockethub"],["🔧","Dummy","/dummy","Basic examples • Start here"],["📰","Feeds","/feeds","RSS/ATOM feed parsing"],["🔍","Metadata","/metadata","Web page metadata extraction"],["💬","IRC","/irc","Internet Relay Chat • Advanced"],["📨","XMPP","/xmpp","Extensible messaging • Advanced"]];Q();var a=ne();V(a,5,()=>p,X,(b,l)=>{var n=D(()=>E(f(l),4));let u=()=>f(n)[0],j=()=>f(n)[1],i=()=>f(n)[2],v=()=>f(n)[3];var c=le(),_=t(c),L=t(_,!0);e(_);var $=m(_,2),O=t($,!0);e($);var M=m($,2),P=t(M);C(),e(M),e(c),S(R=>{w(c,1,`group relative rounded-lg px-3 py-2 font-medium transition-all duration-200 no-underline ${R??""}`),k(c,"href",`${A??""}${i()??""}`),k(c,"title",v()),y(L,u()),y(O,j()),y(P,`${v()??""} `)},[()=>d().url.pathname.endsWith(i())?"bg-orange-600 text-blue-50 shadow-md":"text-slate-700 hover:bg-slate-200 hover:shadow-sm"]),g(b,c)}),e(a),g(s,a),z(),o()}var ce=x('<main><div><div><img class="m-auto" alt="Sockethub"/></div> <div class="col-span-2 md:mt-3"><!></div> <div class="w-full text-center"><!></div></div> <div class="pt-5"><!></div></main>');function xe(s,r){var d=ce();G("12qhfyh",i=>{var v=W(),c=F(v);J(c,()=>ee),g(i,v)});var h=t(d),o=t(h),p=t(o);e(o);var a=m(o,2),b=t(a);ie(b,{}),e(a);var l=m(a,2),n=t(l);ae(n),e(l),e(h);var u=m(h,2),j=t(u);H(j,()=>r.children??B),e(u),e(d),S(()=>k(p,"src",`${A??""}/sockethub-logo.svg`)),g(s,d)}export{xe as component,fe as universal};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as h,a as g,s as e}from"../chunks/DqdrLdzV.js";import"../chunks/BnKTx64M.js";import{p as l,f as v,t as d,a as _,c as o,r as p,s as x}from"../chunks/Ciq9INsC.js";import{i as $}from"../chunks/B-2myMF5.js";import{s as k,p as m}from"../chunks/BqKPKu0n.js";const b={get error(){return m.error},get status(){return m.status}};k.updated.check;const i=b;var E=h("<h1> </h1> <p> </p>",1);function A(f,c){l(c,!1),$();var t=E(),r=v(t),n=o(r,!0);p(r);var s=x(r,2),u=o(s,!0);p(s),d(()=>{var a;e(n,i.status),e(u,(a=i.error)==null?void 0:a.message)}),g(f,t),_()}export{A as component};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{f as x,a as f}from"../chunks/DqdrLdzV.js";import"../chunks/BnKTx64M.js";import{s as e,f as y,c as t,r as s,n as w,t as S}from"../chunks/Ciq9INsC.js";import{s as a}from"../chunks/P3PHXZz3.js";import{b as r}from"../chunks/Br1aAxXP.js";import{I as k}from"../chunks/D_xw8KSE.js";var P=x(`<title>Sockethub Examples</title> <div class="space-y-6"><div class="bg-blue-50 border-l-4 border-blue-400 p-4 rounded-r-lg"><h2 class="text-xl font-semibold text-blue-800 mb-2">What is Sockethub?</h2> <p class="text-blue-700 mb-3">Sockethub is a <strong>protocol gateway</strong> that bridges web applications with various internet protocols
|
|
2
|
+
like IRC, XMPP, RSS/ATOM feeds, and more. Instead of implementing each protocol directly in your web app,
|
|
3
|
+
you send standardized <strong>ActivityStreams</strong> messages to Sockethub, which handles the protocol-specific details.</p> <p class="text-blue-700">Think of it as a universal translator that lets your web application communicate with
|
|
4
|
+
chat servers, feed readers, and other internet services using a single, consistent API.</p></div> <div class="bg-green-50 border-l-4 border-green-400 p-4 rounded-r-lg"><h2 class="text-xl font-semibold text-green-800 mb-2">Key Concepts</h2> <div class="space-y-3"><div><h3 class="font-semibold text-green-700">🎭 Actor</h3> <p class="text-green-600 text-sm">Your identity on a platform (e.g., IRC nickname, XMPP username, feed URL)</p></div> <div><h3 class="font-semibold text-green-700">🔧 Platform</h3> <p class="text-green-600 text-sm">A protocol handler (IRC, XMPP, Feeds, etc.) that runs as a separate process</p></div> <div><h3 class="font-semibold text-green-700">📝 ActivityStreams</h3> <p class="text-green-600 text-sm">Standardized JSON format for describing activities like "send message", "connect", "fetch"</p></div> <div><h3 class="font-semibold text-green-700">🔐 Credentials</h3> <p class="text-green-600 text-sm">Connection details securely stored per session (servers, passwords, API keys)</p></div></div></div> <div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 rounded-r-lg"><h2 class="text-xl font-semibold text-yellow-800 mb-2">How It Works</h2> <ol class="text-yellow-700 space-y-2 text-sm"><li><span class="font-semibold">1.</span> Your web app connects to Sockethub via WebSocket</li> <li><span class="font-semibold">2.</span> You send ActivityStreams messages describing what you want to do</li> <li><span class="font-semibold">3.</span> Sockethub routes messages to the appropriate platform</li> <li><span class="font-semibold">4.</span> Platform handles protocol-specific communication</li> <li><span class="font-semibold">5.</span> Results are sent back to your web app as ActivityStreams</li></ol></div> <div class="bg-purple-50 border-l-4 border-purple-400 p-4 rounded-r-lg"><h2 class="text-xl font-semibold text-purple-800 mb-2">Explore the Examples</h2> <p class="text-purple-700 mb-3">Each example demonstrates a different platform. Start with <strong>Dummy</strong> to understand
|
|
5
|
+
the basic flow, then explore real-world protocols:</p> <div class="grid gap-3 text-sm"><a class="block p-3 bg-white rounded border hover:bg-purple-50 transition-colors border-l-4 border-l-green-400"><div class="flex items-center justify-between"><div><div class="font-semibold text-purple-800">🔧 Dummy Platform</div> <div class="text-purple-600">Learn the basics with simple echo/fail examples</div></div> <span class="text-xs bg-green-100 text-green-700 px-2 py-1 rounded">Start Here</span></div></a> <div class="grid md:grid-cols-2 gap-3"><a class="block p-3 bg-white rounded border hover:bg-purple-50 transition-colors"><div class="font-semibold text-purple-800">📰 RSS/ATOM Feeds</div> <div class="text-purple-600">Fetch and parse web feeds</div></a> <a class="block p-3 bg-white rounded border hover:bg-purple-50 transition-colors"><div class="font-semibold text-purple-800">🔍 Metadata</div> <div class="text-purple-600">Extract metadata from web pages</div></a></div> <div class="grid md:grid-cols-2 gap-3"><a class="block p-3 bg-white rounded border hover:bg-purple-50 transition-colors border-l-4 border-l-orange-400"><div class="flex items-center justify-between"><div><div class="font-semibold text-purple-800">💬 IRC Chat</div> <div class="text-purple-600">Connect to IRC servers and channels</div></div> <span class="text-xs bg-orange-100 text-orange-700 px-2 py-1 rounded">Advanced</span></div></a> <a class="block p-3 bg-white rounded border hover:bg-purple-50 transition-colors border-l-4 border-l-orange-400"><div class="flex items-center justify-between"><div><div class="font-semibold text-purple-800">📨 XMPP Messaging</div> <div class="text-purple-600">Send and receive XMPP messages</div></div> <span class="text-xs bg-orange-100 text-orange-700 px-2 py-1 rounded">Advanced</span></div></a></div></div></div> <div class="text-center text-gray-600 text-sm bg-gray-50 p-4 rounded-lg">💡 <strong>Tip:</strong> Watch the connection status at the top and the activity log at the bottom of each example to understand what's happening behind the scenes.</div></div>`,1);function E(m){k(m,{title:"Sockethub Examples",children:(g,_)=>{var i=P(),l=e(y(i),2),d=e(t(l),6),n=e(t(d),4),p=t(n),o=e(p,2),c=t(o),h=e(c,2);s(o);var b=e(o,2),v=t(b),u=e(v,2);s(b),s(n),s(d),w(2),s(l),S(()=>{a(p,"href",`${r??""}/dummy`),a(c,"href",`${r??""}/feeds`),a(h,"href",`${r??""}/metadata`),a(v,"href",`${r??""}/irc`),a(u,"href",`${r??""}/xmpp`)}),f(g,i)}})}export{E as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as y,a as C}from"../chunks/DqdrLdzV.js";import{p as ee,a as te,s as e,f as re,c as n,g as o,u as q,r as d,b as l,d as S,e as a}from"../chunks/Ciq9INsC.js";import{s as se,a as oe,m as ae,b as z,i as ne,c as v}from"../chunks/Cf7Xaqef.js";import{A as de}from"../chunks/BhL0iima.js";import{A as ce,C as ie,P as le,R as ve,S as me}from"../chunks/CoHdmBcD.js";import{B as ue}from"../chunks/CFHe0i8O.js";import{F as N}from"../chunks/C1LF9VyP.js";import{I as ge,s as pe}from"../chunks/BBdxXcNs.js";import{w as Y}from"../chunks/CARmnL8B.js";var fe=y('<div class="bg-gradient-to-r from-emerald-50 to-green-50 border border-emerald-200 rounded-xl p-6 shadow-sm"><h4 class="text-lg font-bold text-emerald-900 mb-4 flex items-center"><span class="mr-3 w-8 h-8 bg-emerald-600 text-white rounded-full flex items-center justify-center text-sm font-bold">4</span> Join Channel and Chat</h4> <div class="space-y-6"><!> <!> <!></div></div>'),be=y('<div class="bg-gradient-to-r from-gray-50 to-slate-50 border border-gray-200 rounded-xl p-6 text-center shadow-sm"><div class="flex items-center justify-center mb-3"><span class="w-8 h-8 bg-gray-400 text-white rounded-full flex items-center justify-center text-sm font-bold">4</span></div> <p class="text-gray-600 font-medium">Connect to the IRC server to access chat features</p> <p class="text-gray-500 text-sm mt-1">Complete steps 1-3 above to unlock this section</p></div>'),he=y('<div class="bg-orange-50 border-l-4 border-orange-400 p-4 rounded-r-lg mb-6"><h3 class="text-lg font-semibold text-orange-800 mb-2">💬 IRC Connection Process</h3> <p class="text-orange-700 text-sm mb-3">IRC (Internet Relay Chat) requires several steps to get connected and chatting.</p> <div class="text-orange-700 text-sm space-y-1"><div><strong>1. 🎭 Set Actor:</strong> Choose your IRC nickname</div> <div><strong>2. 🔐 Set Credentials:</strong> Provide server connection details</div> <div><strong>3. 🔌 Connect:</strong> Establish connection to IRC server</div> <div><strong>4. 🏠 Join Room:</strong> Enter a channel to start chatting</div> <div><strong>5. 💬 Send Messages:</strong> Chat with other users</div></div></div> <div class="space-y-6"><div class="bg-gradient-to-r from-green-50 to-emerald-50 border border-green-200 rounded-xl p-6 shadow-sm"><h4 class="text-lg font-bold text-green-900 mb-4 flex items-center"><span class="mr-3 w-8 h-8 bg-green-600 text-white rounded-full flex items-center justify-center text-sm font-bold">1</span> Choose Your IRC Nickname</h4> <div class="space-y-4"><!> <!></div></div> <div class="bg-gradient-to-r from-blue-50 to-sky-50 border border-blue-200 rounded-xl p-6 shadow-sm"><h4 class="text-lg font-bold text-blue-900 mb-4 flex items-center"><span class="mr-3 w-8 h-8 bg-blue-600 text-white rounded-full flex items-center justify-center text-sm font-bold">2</span> Configure Server Connection</h4> <div class="space-y-4"><div class="grid md:grid-cols-2 gap-4"><!> <!></div> <div class="bg-blue-100 border border-blue-200 rounded-lg p-3"><p class="text-blue-800 text-sm">💡 <strong>Popular IRC networks:</strong> irc.libera.chat, irc.oftc.net, irc.rizon.net</p></div> <!></div></div> <div class="bg-gradient-to-r from-purple-50 to-violet-50 border border-purple-200 rounded-xl p-6 shadow-sm"><h4 class="text-lg font-bold text-purple-900 mb-4 flex items-center"><span class="mr-3 w-8 h-8 bg-purple-600 text-white rounded-full flex items-center justify-center text-sm font-bold">3</span> Connect to Server</h4> <!></div> <!></div>',1);function $e(D,G){ee(G,!0);const c=()=>z(I,"$actorIdStore",w),r=()=>z(s,"$sockethubState",w),[w,H]=se(),I=Y(`sh-${(Math.random()+1).toString(36).substring(7)}`);let g=S("chat.freenode.net"),p=S(6697),k="#sh-random",m=S(!1);const s=Y({actorSet:!1,credentialsSet:!1,connected:!1,joined:!1});let u=q(()=>({id:c(),type:"person",name:c()})),K=q(()=>({type:"credentials",nick:c(),server:o(g),port:o(p),secure:!0}));function R(){v(s,a(r).actorSet=!1,a(r)),v(s,a(r).credentialsSet=!1,a(r)),v(s,a(r).connected=!1,a(r)),v(s,a(r).joined=!1,a(r)),l(m,!1)}async function L(){l(m,!0),await pe({context:"irc",type:"connect",actor:c()}).catch(()=>{R()}).then(()=>{v(s,a(r).connected=!0,a(r)),l(m,!1)},f=>{console.error(f),R()})}ue(D,{title:"IRC Platform Example",description:"Connect to IRC servers, join channels, and send messages using Sockethub's IRC platform.",children:(f,xe)=>{var j=he(),$=e(re(j),2),b=n($),P=e(n(b),2),A=n(P);ce(A,{get value(){return ae(),c()},set value(t){oe(I,t)}});var O=e(A,2);de(O,{get actor(){return o(u)},get sockethubState(){return s}}),d(P),d(b);var h=e(b,2),E=e(n(h),2),x=n(E),F=n(x);N(F,{label:"IRC Server",id:"server",placeholder:"irc.libera.chat",get value(){return o(g)},set value(t){l(g,t,!0)}});var Q=e(F,2);N(Q,{label:"Port",id:"port",type:"number",placeholder:"6697",get value(){return o(p)},set value(t){l(p,t,!0)}}),d(x);var T=e(x,4);ie(T,{context:"irc",get credentials(){return o(K)},get actor(){return o(u)},get sockethubState(){return s}}),d(E),d(h);var _=e(h,2),U=e(n(_),2);le(U,{get sockethubState(){return s},get connecting(){return o(m)},onConnect:L}),d(_);var V=e(_,2);{var W=t=>{var i=fe(),M=e(n(i),2),B=n(M);ve(B,{get actor(){return o(u)},get sockethubState(){return s},room:k,context:"irc"});var J=e(B,2);ge(J,{});var Z=e(J,2);me(Z,{context:"irc",get actor(){return o(u)},get sockethubState(){return s},room:k}),d(M),d(i),C(t,i)},X=t=>{var i=be();C(t,i)};ne(V,t=>{r().connected?t(W):t(X,!1)})}d($),C(f,j)}}),te(),H()}export{$e as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as y,t as w,a as f}from"../chunks/DqdrLdzV.js";import{p as k,a as A,s as o,f as F,c as p,b as R,d as _,g as e,u as T,n as O,r as m}from"../chunks/Ciq9INsC.js";import{w as L}from"../chunks/CARmnL8B.js";import{A as P}from"../chunks/BhL0iima.js";import{B as U,S as $}from"../chunks/CFHe0i8O.js";import{F as M}from"../chunks/C1LF9VyP.js";import{s as j}from"../chunks/BBdxXcNs.js";var B=y('<div class="bg-green-50 border-l-4 border-green-400 p-4 rounded-r-lg mb-6"><h3 class="text-lg font-semibold text-green-800 mb-2">📰 How Feed Processing Works</h3> <p class="text-green-700 text-sm mb-3">This example shows how Sockethub can fetch and parse RSS/ATOM feeds from any website.</p> <div class="text-green-700 text-sm space-y-1"><div><strong>🌐 Fetching:</strong> Sockethub downloads the feed content from the URL</div> <div><strong>🔍 Parsing:</strong> Content is parsed from RSS/ATOM format</div> <div><strong>📝 Converting:</strong> Each feed entry becomes an ActivityStreams object</div> <div><strong>📊 Results:</strong> You receive an array of structured feed entries</div></div></div> <div class="space-y-4"><!> <p class="text-gray-600 text-sm">⬆️ Try different RSS/ATOM feeds: news sites, blogs, podcasts, etc.</p> <!> <div class="bg-blue-50 border border-blue-200 p-3 rounded-lg"><p class="text-blue-700 text-sm"><strong>💡 What happens when you click Fetch:</strong><br/> The feed URL becomes the "actor" (like a website identity), and Sockethub sends a "fetch" activity to download and parse the feed content.</p></div> <div class="w-full text-right"><!></div></div>',1);function I(h,g){k(g,!0);const v=L({actorSet:!1});let t=_("https://sockethub.org/feed.xml");const a=T(()=>({type:"website",id:e(t)}));function u(s){return{context:"feeds",type:s,actor:e(a)}}async function b(){j(u("fetch"))}U(h,{title:"Feeds Platform Example",description:"The feeds platform takes an RSS/ATOM feed URL, fetches and parses it, and returns an array of Activity Objects for each entry.",children:(s,E)=>{var n=B(),d=o(F(n),2),i=p(d);M(i,{label:"Feed URL",id:"URL",placeholder:"https://example.com/feed.xml",get value(){return e(t)},set value(r){R(t,r,!0)}});var c=o(i,4);P(c,{get actor(){return e(a)},get sockethubState(){return v}});var l=o(c,4),x=p(l);$(x,{buttonAction:b,children:(r,C)=>{O();var S=w("Fetch Feed");f(r,S)}}),m(l),m(d),f(s,n)}}),A()}export{I as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as P,a as f}from"../chunks/DqdrLdzV.js";import{p as L,a as N,s as r,f as O,c as n,g as o,u as x,r as c,n as Q,d as T,b as E,e as s}from"../chunks/Ciq9INsC.js";import{s as V,a as W,m as Z,b as I,i as ee,c as d}from"../chunks/Cf7Xaqef.js";import{A as te}from"../chunks/BhL0iima.js";import{A as re,C as se,P as oe,R as ae,S as ne}from"../chunks/CoHdmBcD.js";import{B as ce}from"../chunks/CFHe0i8O.js";import{I as ie,s as de}from"../chunks/BBdxXcNs.js";import{w as j}from"../chunks/CARmnL8B.js";var le=P('<div class="bg-white border border-gray-200 rounded-lg p-4"><h4 class="font-semibold text-gray-800 mb-3">Step 4 & 5: Join Room and Chat</h4> <div class="space-y-4"><!> <!> <!></div></div>'),ge=P('<div class="bg-gray-50 border border-gray-200 rounded-lg p-4 text-center"><p class="text-gray-500">Connect to the XMPP server to access chat features</p></div>'),me=P('<div class="bg-indigo-50 border-l-4 border-indigo-400 p-4 rounded-r-lg mb-6"><h3 class="text-lg font-semibold text-indigo-800 mb-2">📨 XMPP Connection Process</h3> <p class="text-indigo-700 text-sm mb-3">XMPP (Extensible Messaging and Presence Protocol) is a real-time communication protocol used by services like Jabber.</p> <div class="text-indigo-700 text-sm space-y-1"><div><strong>1. 🎭 Set Actor:</strong> Your XMPP address (e.g., user@jabber.org)</div> <div><strong>2. 🔐 Set Credentials:</strong> Your XMPP login and password</div> <div><strong>3. 🔌 Connect:</strong> Establish connection to XMPP server</div> <div><strong>4. 🏠 Join Room:</strong> Enter a multi-user chat room</div> <div><strong>5. 💬 Send Messages:</strong> Chat with other users in real-time</div></div></div> <div class="space-y-6"><div class="bg-white border border-gray-200 rounded-lg p-4"><h4 class="font-semibold text-gray-800 mb-3">Step 1: Set Your XMPP Address</h4> <!> <p class="text-gray-600 text-sm mt-2">💡 Format: username@server.com (e.g., user@jabber.org, alice@conversations.im)</p> <!></div> <div class="bg-white border border-gray-200 rounded-lg p-4"><h4 class="font-semibold text-gray-800 mb-3">Step 2: Set Your Credentials</h4> <!> <p class="text-gray-600 text-sm mt-2">🔐 Use your actual XMPP account credentials to connect</p></div> <div class="bg-white border border-gray-200 rounded-lg p-4"><h4 class="font-semibold text-gray-800 mb-3">Step 3: Connect to XMPP Server</h4> <!></div> <!></div>',1);function _e(J,R){L(R,!0);const g=()=>I(_,"$actorIdStore",S),e=()=>I(t,"$sockethubState",S),[S,Y]=V(),_=j("user@jabber.org");let m=T(!1),u=x(()=>`${g()}/SockethubExample`);const y="kosmos-random@kosmos.chat",t=j({actorSet:!1,credentialsSet:!1,connected:!1,joined:!1});let l=x(()=>({id:o(u),type:"person",name:o(u)})),B=x(()=>({type:"credentials",userAddress:g(),password:"123456",resource:"SockethubExample"}));function k(){d(t,s(e).actorSet=!1,s(e)),d(t,s(e).credentialsSet=!1,s(e)),d(t,s(e).connected=!1,s(e)),d(t,s(e).joined=!1,s(e)),E(m,!1)}async function F(){return E(m,!0),await de({context:"xmpp",type:"connect",actor:o(u)}).then(()=>{d(t,s(e).connected=!0,s(e))},v=>{console.error(v),k()}).catch(()=>{k()})}ce(J,{title:"XMPP Platform Example",description:"Connect to XMPP servers (Jabber), join multi-user chats, and exchange messages using Sockethub's XMPP platform.",children:(v,ue)=>{var M=me(),C=r(O(M),2),p=n(C),X=r(n(p),2);re(X,{get value(){return Z(),g()},set value(a){W(_,a)}});var U=r(X,4);te(U,{get actor(){return o(l)},get sockethubState(){return t}}),c(p);var b=r(p,2),q=r(n(b),2);se(q,{context:"xmpp",get credentials(){return o(B)},get actor(){return o(l)},get sockethubState(){return t}}),Q(2),c(b);var h=r(b,2),z=r(n(h),2);oe(z,{get sockethubState(){return t},get connecting(){return o(m)},onConnect:F}),c(h);var D=r(h,2);{var G=a=>{var i=le(),w=r(n(i),2),$=n(w);ae($,{get actor(){return o(l)},get sockethubState(){return t},room:y,context:"xmpp"});var A=r($,2);ie(A,{});var K=r(A,2);ne(K,{context:"xmpp",get actor(){return o(l)},get sockethubState(){return t},room:y}),c(w),c(i),f(a,i)},H=a=>{var i=ge();f(a,i)};ee(D,a=>{e().connected?a(G):a(H,!1)})}c(C),f(v,M)}}),N(),Y()}export{_e as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as S,t as k,a as p}from"../chunks/DqdrLdzV.js";import{p as y,a as _,s as r,f as F,c as m,b as A,d as E,g as t,u as L,n as P,r as u}from"../chunks/Ciq9INsC.js";import{w as R}from"../chunks/CARmnL8B.js";import{A as $}from"../chunks/BhL0iima.js";import{B as T,S as U}from"../chunks/CFHe0i8O.js";import{F as B}from"../chunks/C1LF9VyP.js";import{s as M}from"../chunks/BBdxXcNs.js";var O=S('<div class="bg-purple-50 border-l-4 border-purple-400 p-4 rounded-r-lg mb-6"><h3 class="text-lg font-semibold text-purple-800 mb-2">🔍 How Metadata Extraction Works</h3> <p class="text-purple-700 text-sm mb-3">This example shows how Sockethub can extract structured metadata from any web page.</p> <div class="text-purple-700 text-sm space-y-1"><div><strong>🌐 Fetching:</strong> Sockethub downloads the web page content</div> <div><strong>🔍 Scanning:</strong> Searches for Open Graph, Twitter Cards, JSON-LD, and meta tags</div> <div><strong>📊 Extracting:</strong> Pulls out titles, descriptions, images, and other metadata</div> <div><strong>📋 Returning:</strong> Provides structured data about the page</div></div></div> <div class="space-y-4"><!> <p class="text-gray-600 text-sm">⬆️ Try different websites: news articles, social media posts, product pages, etc.</p> <!> <div class="bg-blue-50 border border-blue-200 p-3 rounded-lg"><p class="text-blue-700 text-sm"><strong>💡 What happens when you click Fetch:</strong><br/> The website URL becomes the "actor", and Sockethub sends a "fetch" activity to download the page and extract all available metadata like page titles, descriptions, and social media preview data.</p></div> <div class="w-full text-right"><!></div></div>',1);function z(h,g){y(g,!0);const b=R({actorSet:!1});let e=E("https://sockethub.org"),o=L(()=>({id:t(e),type:"website"}));function v(a){return{context:"metadata",type:a,actor:t(o)}}async function f(){M(v("fetch"))}T(h,{title:"Metadata Platform Example",description:"Sockethub's metadata platform takes a URL, fetches and parses it for any metadata.",children:(a,W)=>{var i=O(),d=r(F(i),2),n=m(d);B(n,{label:"Website URL",id:"URL",placeholder:"https://example.com",get value(){return t(e)},set value(s){A(e,s,!0)}});var c=r(n,4);$(c,{get actor(){return t(o)},get sockethubState(){return b}});var l=r(c,4),x=m(l);U(x,{buttonAction:f,children:(s,j)=>{P();var w=k("Extract Metadata");p(s,w)}}),u(l),u(d),p(a,i)}}),_()}export{z as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as L,t as o,a as r}from"../chunks/DqdrLdzV.js";import{p as M,a as O,s,f as W,c as e,b as z,d as J,g as E,n as l,r as t}from"../chunks/Ciq9INsC.js";import{s as n}from"../chunks/BBdxXcNs.js";import{B as K,S as c}from"../chunks/CFHe0i8O.js";import{F as N}from"../chunks/C1LF9VyP.js";var Q=L(`<div class="bg-gradient-to-r from-blue-50 to-blue-100 border border-blue-200 rounded-xl p-6 shadow-sm"><h3 class="text-xl font-bold text-blue-900 mb-3 flex items-center"><span class="mr-2">💡</span> What You'll Learn</h3> <p class="text-blue-800 mb-4 leading-relaxed">This example demonstrates the core Sockethub workflow with a test platform that doesn't require external connections.</p> <div class="grid md:grid-cols-2 gap-3 text-blue-800"><div class="flex items-start space-x-2"><span class="text-lg">📤</span> <div><div class="font-semibold">Sending</div> <div class="text-sm text-blue-700">How to create and send ActivityStreams messages</div></div></div> <div class="flex items-start space-x-2"><span class="text-lg">📥</span> <div><div class="font-semibold">Receiving</div> <div class="text-sm text-blue-700">How Sockethub responds with results or errors</div></div></div> <div class="flex items-start space-x-2"><span class="text-lg">🎯</span> <div><div class="font-semibold">Actor</div> <div class="text-sm text-blue-700">How your identity is represented</div></div></div> <div class="flex items-start space-x-2"><span class="text-lg">🔄</span> <div><div class="font-semibold">Types</div> <div class="text-sm text-blue-700">Different activity types (echo, greet, fail, throw)</div></div></div></div></div> <div class="space-y-4"><!> <p class="text-gray-600 text-sm">⬆️ This text will be included in the <code>object.content</code> field of your ActivityStreams message.</p> <div class="bg-gradient-to-r from-amber-50 to-yellow-50 border border-amber-200 rounded-xl p-6 shadow-sm"><h4 class="text-lg font-bold text-amber-900 mb-3 flex items-center"><span class="mr-2">🚀</span> Try Different Activity Types</h4> <p class="text-amber-800 mb-4 leading-relaxed">Each button sends the same basic message structure but with a different <code class="bg-amber-100 px-1 rounded text-sm">type</code> field:</p> <div class="grid md:grid-cols-2 gap-4"><div class="space-y-4"><div class="bg-white rounded-lg p-4 border border-amber-200"><div class="flex items-center justify-between"><div class="flex-1"><div class="font-semibold text-amber-900 mb-1">Echo</div> <p class="text-amber-700 text-sm">Returns your message back unchanged</p></div> <!></div></div> <div class="bg-white rounded-lg p-4 border border-amber-200"><div class="flex items-center justify-between"><div class="flex-1"><div class="font-semibold text-amber-900 mb-1">Greet</div> <p class="text-amber-700 text-sm">Returns a friendly greeting</p></div> <!></div></div></div> <div class="space-y-4"><div class="bg-white rounded-lg p-4 border border-amber-200"><div class="flex items-center justify-between"><div class="flex-1"><div class="font-semibold text-amber-900 mb-1">Fail</div> <p class="text-amber-700 text-sm">Returns an error message (for testing error handling)</p></div> <!></div></div> <div class="bg-white rounded-lg p-4 border border-amber-200"><div class="flex items-center justify-between"><div class="flex-1"><div class="font-semibold text-amber-900 mb-1">Throw</div> <p class="text-amber-700 text-sm">Throws an exception (for testing exception handling)</p></div> <!></div></div></div></div></div></div>`,1);function se(F,P){M(P,!0);const H="https://sockethub.org/examples/dummy";let v=J("");function d(m){return{context:"dummy",type:m,actor:{type:"person",id:H},object:{type:"message",content:E(v)}}}async function R(){n(d("echo"))}async function B(){n(d("fail"))}async function D(){n(d("throw"))}async function G(){n(d("greet"))}K(F,{title:"Dummy Platform Example",description:"The dummy platform is the most basic test to communicate via Sockethub to a platform, and receive a response back. You can use either the echo or fail types on your Activity Stream object.",children:(m,U)=>{var f=Q(),h=s(W(f),2),g=e(h);N(g,{label:"Message Content",id:"objectContent",placeholder:"Hello from Sockethub",get value(){return E(v)},set value(a){z(v,a,!0)}});var y=s(g,4),w=s(e(y),4),b=e(w),p=e(b),_=e(p),C=s(e(_),2);c(C,{buttonAction:R,children:(a,u)=>{l();var i=o("Echo");r(a,i)}}),t(_),t(p);var S=s(p,2),$=e(S),Y=s(e($),2);c(Y,{buttonAction:G,children:(a,u)=>{l();var i=o("Greet");r(a,i)}}),t($),t(S),t(b);var A=s(b,2),x=e(A),T=e(x),q=s(e(T),2);c(q,{buttonAction:B,children:(a,u)=>{l();var i=o("Fail");r(a,i)}}),t(T),t(x);var j=s(x,2),k=e(j),I=s(e(k),2);c(I,{buttonAction:D,children:(a,u)=>{l();var i=o("Throw");r(a,i)}}),t(k),t(j),t(A),t(w),t(y),t(h),r(m,f)}}),O()}export{se as component};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":"1769133023570"}
|
package/build/dummy.html
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<link rel="icon" href="./favicon.ico" />
|
|
6
|
+
<meta name="viewport" content="width=device-width" />
|
|
7
|
+
|
|
8
|
+
<link rel="modulepreload" href="./_app/immutable/entry/start.CTdg5BqQ.js">
|
|
9
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/BqKPKu0n.js">
|
|
10
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Ciq9INsC.js">
|
|
11
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CARmnL8B.js">
|
|
12
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Br1aAxXP.js">
|
|
13
|
+
<link rel="modulepreload" href="./_app/immutable/entry/app.DgSDqHHR.js">
|
|
14
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/DqdrLdzV.js">
|
|
15
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Cf7Xaqef.js">
|
|
16
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CC-fhLYv.js">
|
|
17
|
+
</head>
|
|
18
|
+
<body class="bg-white-100">
|
|
19
|
+
<div class="container mx-auto pl-2 pr-2 pt-2">
|
|
20
|
+
<script>
|
|
21
|
+
{
|
|
22
|
+
__sveltekit_s9fgxq = {
|
|
23
|
+
base: new URL(".", location).pathname.slice(0, -1)
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const element = document.currentScript.parentElement;
|
|
27
|
+
|
|
28
|
+
Promise.all([
|
|
29
|
+
import("./_app/immutable/entry/start.CTdg5BqQ.js"),
|
|
30
|
+
import("./_app/immutable/entry/app.DgSDqHHR.js")
|
|
31
|
+
]).then(([kit, app]) => {
|
|
32
|
+
kit.start(app, element);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
</script>
|
|
36
|
+
</div>
|
|
37
|
+
</body>
|
|
38
|
+
</html>
|
|
Binary file
|
package/build/feed.xml
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Sockethub]]></title><description><![CDATA[The polyglot solution to the federated social web]]></description><link>https://sockethub.org</link><generator>metalsmith-feed</generator><lastBuildDate>Thu, 02 Sep 2021 22:16:22 GMT</lastBuildDate><atom:link href="https://sockethub.org/feed.xml" rel="self" type="application/rss+xml"/><author><![CDATA[Nick Jennings]]></author><item><title><![CDATA[Sockethub 4.1.0]]></title><description><![CDATA[<p>Sockethub 4.1.0 has been released! Lots of stability improvements, for a list see the <a href="https://github.com/sockethub/sockethub/releases/tag/v4.1.0">Sockethub release page</a>.</p>
|
|
2
|
+
]]></description><link>https://sockethub.org/news/2021-09-02-release-410.html</link><guid isPermaLink="true">https://sockethub.org/news/2021-09-02-release-410.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 02 Sep 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 4.0.1]]></title><description><![CDATA[<p>Sockethub 4.0.1 has been released! This release fixes a few minor issues present in the previous release, for a list of fixes see the <a href="https://github.com/sockethub/sockethub/releases/tag/v4.0.1">Sockethub release page</a>.</p>
|
|
3
|
+
]]></description><link>https://sockethub.org/news/2021-05-23-release-401.html</link><guid isPermaLink="true">https://sockethub.org/news/2021-05-23-release-401.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 23 May 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 4.0.0]]></title><description><![CDATA[<p>Sockethub 4.0.0 has been released! This release has a few major updates to the underlying system, namely switching from <code>node-simple-xmpp</code> to <code>xmpp.js</code>, from <code>Kue</code> to <code>Bull</code> and upgrading to <code>socket.io v4</code>. Additionally, as we performed these significant overhauls of the code, we added more tests and optimizations. This release should be overall a lot faster. For a full list of changes, see the <a href="https://github.com/sockethub/sockethub/releases/tag/v4.0.0">Sockethub release page</a>.</p>
|
|
4
|
+
]]></description><link>https://sockethub.org/news/2021-05-20-release-400.html</link><guid isPermaLink="true">https://sockethub.org/news/2021-05-20-release-400.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 20 May 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 3.2.2]]></title><description><![CDATA[<p>Sockethub 3.2.2 has been released and focuses mainly on stability and bugfixes, highlights include pegging the sockethub.io dependency version to resolve a CORS issues, and a hotfix for the IRC platforms upstream library <code>irc-socket</code> allowing TLS connections. For a full list of changes, see <a href="https://github.com/sockethub/sockethub/releases/tag/v3.2.2">Sockethub release page</a>.</p>
|
|
5
|
+
]]></description><link>https://sockethub.org/news/2021-02-22-sockethub-release-322.html</link><guid isPermaLink="true">https://sockethub.org/news/2021-02-22-sockethub-release-322.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 22 Feb 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 3.2]]></title><description><![CDATA[<p>Sockethub 3.2 has been released and includes a lot of improvements and work that has progressed throughout the year. The most notable improvement has come with the spawning of new threads for platform modules to help protect against possible platform crashes and memory leaks, which has greatly improved the stability of sockethub core. For a full list of changes, see <a href="https://github.com/sockethub/sockethub/releases/tag/v3.2.0">Sockethub release page</a>.</p>
|
|
6
|
+
]]></description><link>https://sockethub.org/news/2020-12-26-sockethub-release-320.html</link><guid isPermaLink="true">https://sockethub.org/news/2020-12-26-sockethub-release-320.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sat, 26 Dec 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 3.x]]></title><description><![CDATA[<p>Sockethub 3.0 has been released and includes a lot of improvements focusing mainly on XMPP and IRC, additionally a ton of internal improvements. Ongoing releases tracked on the <a href="https://github.com/sockethub/sockethub/releases">Github page</a>. </p>
|
|
7
|
+
]]></description><link>https://sockethub.org/news/2019-09-26-3x.html</link><guid isPermaLink="true">https://sockethub.org/news/2019-09-26-3x.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 26 Sep 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Kosmos group chat client]]></title><description><![CDATA[<p>Over the past several months, we've been quietly working away at an open-source group chat platform, build upon Sockethub and remoteStorage, and sprinkling of other tools and services. It aims to address the same area as Slack and HipChat, but built in the open, on open protocols (IRC & XMPP) allowing anyone to interface without needing to commit to a solitary platform. Today we met in Berlin and plan for a couple days of hacking and planning for our MVP target which should be coming soon.</p>
|
|
8
|
+
<p>I haven't been announcing every Sockethub release, as they are very frequent and incremental, but be sure to check the github to see the latest activity.</p>
|
|
9
|
+
<p>[ <a href="https://kosmos.org">kosmos</a> | <a href="https://github.com/67p/hyperchannel">github.com/67p/hyperchannel</a> | <a href="https://github.com/sockethub/sockethub">github.com/sockethub/sockethub</a>]</p>
|
|
10
|
+
]]></description><link>https://sockethub.org/news/2017-05-04-kosmos.html</link><guid isPermaLink="true">https://sockethub.org/news/2017-05-04-kosmos.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 04 May 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Hackerbeach V milestones v1.0.4]]></title><description><![CDATA[<p>While 2016 was a year of mostly maintenance work, 2017 has started off strong. Meeting up with several of the guys at <a href="https://5apps.com">5apps</a> for <a href="http://hackerbeach.org">Hackerbeach V</a>, we're working toward building an open-source Slack replacement using unhosted technologies Sockethub and <a href="http://remotestorage.io">remoteStorage</a>. No further details at this time, but we're close to an MVP. In the meantime, I released Sockethub v1.0.4 and activity should increase as we deploy Sockethub for multi-user use.</p>
|
|
11
|
+
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v1.0.4">release v1.0.4</a> ]</p>
|
|
12
|
+
]]></description><link>https://sockethub.org/news/2017-01-23-hakcerbeach-v.html</link><guid isPermaLink="true">https://sockethub.org/news/2017-01-23-hakcerbeach-v.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 23 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Version 1.0.0 released]]></title><description><![CDATA[<p>A branch which has been worked on for most of 2015 has been merged to the master branch and released as version 1.0.0. Currently only a couple platforms are fully ported over, but the plan is to continue to make incremental improvements. It's more stable and lightweight than the 0.x releases.</p>
|
|
13
|
+
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v1.0.0">release v1.0.0</a> | <a href="https://github.com/sockethub/sockethub/blob/v1.0.0/CHANGELOG.md">CHANGELOG</a> ]</p>
|
|
14
|
+
]]></description><link>https://sockethub.org/news/2015-11-02-release-v1_0_0.html</link><guid isPermaLink="true">https://sockethub.org/news/2015-11-02-release-v1_0_0.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 02 Nov 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[The Oblivion Bar @ CCCamp2015]]></title><description><![CDATA[<p>The team working on <a href="https://kosmos.org/">Kosmos</a> will have <a href="https://events.ccc.de/camp/2015/wiki/Village:The_Oblivion_Bar">a tent at Chaos Communication Camp 2015</a>. We'll be giving a talk on Kosmos, remoteStorage and Sockethub.</p>
|
|
15
|
+
]]></description><link>https://sockethub.org/news/2015-08-11-cccamp2015.html</link><guid isPermaLink="true">https://sockethub.org/news/2015-08-11-cccamp2015.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Tue, 11 Aug 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Microformat2 & RSS news entries]]></title><description><![CDATA[<p>Not only do we now have an <a href="http://sockethub.org/feed.xml">RSS feed</a> but and all of our news entries contain <a href="http://microformats.org/wiki/microformats2">microformat2</a> attributes and can receive webmentions via. <a href="http://webmention.io">webmention.io</a> <em>(though we're still working on doing something with those webmentions)</em></p>
|
|
16
|
+
]]></description><link>https://sockethub.org/news/2015-05-10-microformat2-news.html</link><guid isPermaLink="true">https://sockethub.org/news/2015-05-10-microformat2-news.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 10 May 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[New website]]></title><description><![CDATA[<p>The Sockethub website has had a makeover, we're now using the awesome <a href="http://metalsmith.io">metalsmith</a> static site generator to power things, this allows us to easily maintain news updates and provide an rss feed, and just generally keep things more modular.</p>
|
|
17
|
+
]]></description><link>https://sockethub.org/news/2015-05-09-new-website.html</link><guid isPermaLink="true">https://sockethub.org/news/2015-05-09-new-website.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sat, 09 May 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Release v0.3.x]]></title><description><![CDATA[<p>fixes to the IRC platform and improved docker support</p>
|
|
18
|
+
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v0.3.0">release v0.3.0</a> | <a href="https://github.com/sockethub/sockethub/blob/v0.3.0/CHANGELOG.md">CHANGELOG</a> ]</p>
|
|
19
|
+
]]></description><link>https://sockethub.org/news/2014-11-16-release-v0_3.html</link><guid isPermaLink="true">https://sockethub.org/news/2014-11-16-release-v0_3.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 16 Nov 2014 00:00:00 GMT</pubDate></item><item><title><![CDATA[Release v0.2.x]]></title><description><![CDATA[<p>The sockethub v0.2.x branch has been released!</p>
|
|
20
|
+
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v0.2.0">release v0.2.0</a> | <a href="https://github.com/sockethub/sockethub/blob/v0.2.0/CHANGELOG.md">CHANGELOG</a> ]</p>
|
|
21
|
+
]]></description><link>https://sockethub.org/news/2014-09-09-release-v0_2.html</link><guid isPermaLink="true">https://sockethub.org/news/2014-09-09-release-v0_2.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Tue, 09 Sep 2014 00:00:00 GMT</pubDate></item><item><title><![CDATA[Dogfeed RSS/Atom Reader released]]></title><description><![CDATA[<p>A fully unhosted RSS/Atom reader using Sockethub + <a href="http://remotestorage.io">remoteStorage</a></p>
|
|
22
|
+
<p>[ <a href="https://dogfeed.5apps.com">dogfeed</a> | <a href="https://github.com/silverbucket/dogfeed">github repository</a> | <a href="https://groups.google.com/forum/#!topic/unhosted/xzOueGY2GYA">official announcement</a> ]</p>
|
|
23
|
+
]]></description><link>https://sockethub.org/news/2013-09-05-dogfeed-rss-atom-reader-released.html</link><guid isPermaLink="true">https://sockethub.org/news/2013-09-05-dogfeed-rss-atom-reader-released.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 05 Sep 2013 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub lightning talk at OHM2013]]></title><description><![CDATA[<p><a href="https://silverbucket.net">Nick Jennings</a> will be giving a talk tonight on Sockethub @ <a href="https://program.ohm2013.org">OHM2013</a></p>
|
|
24
|
+
<p>[ <a href="https://program.ohm2013.org/event/475.html">talk overview</a> ]</p>
|
|
25
|
+
]]></description><link>https://sockethub.org/news/2013-07-31-sockethub-talk-OHM2013.html</link><guid isPermaLink="true">https://sockethub.org/news/2013-07-31-sockethub-talk-OHM2013.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Wed, 31 Jul 2013 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub talk @ PragueJS]]></title><description><![CDATA[<p><a href="https://silverbucket.net">Nick Jennings</a> will give a Sockethub talk at <a href="http://www.praguejs.cz">PragueJS</a></p>
|
|
26
|
+
]]></description><link>https://sockethub.org/news/2013-05-30-sockethub-talk-praguejs.html</link><guid isPermaLink="true">https://sockethub.org/news/2013-05-30-sockethub-talk-praguejs.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 30 May 2013 00:00:00 GMT</pubDate></item><item><title><![CDATA[Invoice demo]]></title><description><![CDATA[<p>Sockethub & <a href="http://remotestorage.io">remoteStorage</a> invoice demo on noBackend! <a href="http://invoice.nobackend.org/">http://invoice.nobackend.org/</a></p>
|
|
27
|
+
]]></description><link>https://sockethub.org/news/2013-05-27-invoice-demo.html</link><guid isPermaLink="true">https://sockethub.org/news/2013-05-27-invoice-demo.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 27 May 2013 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub video from re:publica posted]]></title><description><![CDATA[<p>Sockethub video from re:publica is up on youtube: <a href="https://www.youtube.com/watch?v=KU4PZK48-dg">https://www.youtube.com/watch?v=KU4PZK48-dg</a></p>
|
|
28
|
+
]]></description><link>https://sockethub.org/news/2013-05-13-sockethub-video-posted.html</link><guid isPermaLink="true">https://sockethub.org/news/2013-05-13-sockethub-video-posted.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 13 May 2013 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub meetup & hackathon]]></title><description><![CDATA[<p>Sockethub meetup & hackathon, May 11th and 12th. <a href="http://lanyrd.com/2013/sockethub/">http://lanyrd.com/2013/sockethub/</a></p>
|
|
29
|
+
]]></description><link>https://sockethub.org/news/2013-05-11-sockethub-meetup-hackathon.html</link><guid isPermaLink="true">https://sockethub.org/news/2013-05-11-sockethub-meetup-hackathon.html</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sat, 11 May 2013 00:00:00 GMT</pubDate></item></channel></rss>
|
package/build/feeds.html
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<link rel="icon" href="./favicon.ico" />
|
|
6
|
+
<meta name="viewport" content="width=device-width" />
|
|
7
|
+
|
|
8
|
+
<link rel="modulepreload" href="./_app/immutable/entry/start.CTdg5BqQ.js">
|
|
9
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/BqKPKu0n.js">
|
|
10
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Ciq9INsC.js">
|
|
11
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CARmnL8B.js">
|
|
12
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Br1aAxXP.js">
|
|
13
|
+
<link rel="modulepreload" href="./_app/immutable/entry/app.DgSDqHHR.js">
|
|
14
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/DqdrLdzV.js">
|
|
15
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Cf7Xaqef.js">
|
|
16
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CC-fhLYv.js">
|
|
17
|
+
</head>
|
|
18
|
+
<body class="bg-white-100">
|
|
19
|
+
<div class="container mx-auto pl-2 pr-2 pt-2">
|
|
20
|
+
<script>
|
|
21
|
+
{
|
|
22
|
+
__sveltekit_s9fgxq = {
|
|
23
|
+
base: new URL(".", location).pathname.slice(0, -1)
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const element = document.currentScript.parentElement;
|
|
27
|
+
|
|
28
|
+
Promise.all([
|
|
29
|
+
import("./_app/immutable/entry/start.CTdg5BqQ.js"),
|
|
30
|
+
import("./_app/immutable/entry/app.DgSDqHHR.js")
|
|
31
|
+
]).then(([kit, app]) => {
|
|
32
|
+
kit.start(app, element);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
</script>
|
|
36
|
+
</div>
|
|
37
|
+
</body>
|
|
38
|
+
</html>
|
package/build/index.html
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<link rel="icon" href="/favicon.ico" />
|
|
6
|
+
<meta name="viewport" content="width=device-width" />
|
|
7
|
+
|
|
8
|
+
<link rel="modulepreload" href="/_app/immutable/entry/start.CTdg5BqQ.js">
|
|
9
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/BqKPKu0n.js">
|
|
10
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/Ciq9INsC.js">
|
|
11
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/CARmnL8B.js">
|
|
12
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/Br1aAxXP.js">
|
|
13
|
+
<link rel="modulepreload" href="/_app/immutable/entry/app.DgSDqHHR.js">
|
|
14
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/DqdrLdzV.js">
|
|
15
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/Cf7Xaqef.js">
|
|
16
|
+
<link rel="modulepreload" href="/_app/immutable/chunks/CC-fhLYv.js">
|
|
17
|
+
</head>
|
|
18
|
+
<body class="bg-white-100">
|
|
19
|
+
<div class="container mx-auto pl-2 pr-2 pt-2">
|
|
20
|
+
<script>
|
|
21
|
+
{
|
|
22
|
+
__sveltekit_s9fgxq = {
|
|
23
|
+
base: ""
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const element = document.currentScript.parentElement;
|
|
27
|
+
|
|
28
|
+
Promise.all([
|
|
29
|
+
import("/_app/immutable/entry/start.CTdg5BqQ.js"),
|
|
30
|
+
import("/_app/immutable/entry/app.DgSDqHHR.js")
|
|
31
|
+
]).then(([kit, app]) => {
|
|
32
|
+
kit.start(app, element);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
</script>
|
|
36
|
+
</div>
|
|
37
|
+
</body>
|
|
38
|
+
</html>
|
package/build/irc.html
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<link rel="icon" href="./favicon.ico" />
|
|
6
|
+
<meta name="viewport" content="width=device-width" />
|
|
7
|
+
|
|
8
|
+
<link rel="modulepreload" href="./_app/immutable/entry/start.CTdg5BqQ.js">
|
|
9
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/BqKPKu0n.js">
|
|
10
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Ciq9INsC.js">
|
|
11
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CARmnL8B.js">
|
|
12
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Br1aAxXP.js">
|
|
13
|
+
<link rel="modulepreload" href="./_app/immutable/entry/app.DgSDqHHR.js">
|
|
14
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/DqdrLdzV.js">
|
|
15
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Cf7Xaqef.js">
|
|
16
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CC-fhLYv.js">
|
|
17
|
+
</head>
|
|
18
|
+
<body class="bg-white-100">
|
|
19
|
+
<div class="container mx-auto pl-2 pr-2 pt-2">
|
|
20
|
+
<script>
|
|
21
|
+
{
|
|
22
|
+
__sveltekit_s9fgxq = {
|
|
23
|
+
base: new URL(".", location).pathname.slice(0, -1)
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const element = document.currentScript.parentElement;
|
|
27
|
+
|
|
28
|
+
Promise.all([
|
|
29
|
+
import("./_app/immutable/entry/start.CTdg5BqQ.js"),
|
|
30
|
+
import("./_app/immutable/entry/app.DgSDqHHR.js")
|
|
31
|
+
]).then(([kit, app]) => {
|
|
32
|
+
kit.start(app, element);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
</script>
|
|
36
|
+
</div>
|
|
37
|
+
</body>
|
|
38
|
+
</html>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<link rel="icon" href="./favicon.ico" />
|
|
6
|
+
<meta name="viewport" content="width=device-width" />
|
|
7
|
+
|
|
8
|
+
<link rel="modulepreload" href="./_app/immutable/entry/start.CTdg5BqQ.js">
|
|
9
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/BqKPKu0n.js">
|
|
10
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Ciq9INsC.js">
|
|
11
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CARmnL8B.js">
|
|
12
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Br1aAxXP.js">
|
|
13
|
+
<link rel="modulepreload" href="./_app/immutable/entry/app.DgSDqHHR.js">
|
|
14
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/DqdrLdzV.js">
|
|
15
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/Cf7Xaqef.js">
|
|
16
|
+
<link rel="modulepreload" href="./_app/immutable/chunks/CC-fhLYv.js">
|
|
17
|
+
</head>
|
|
18
|
+
<body class="bg-white-100">
|
|
19
|
+
<div class="container mx-auto pl-2 pr-2 pt-2">
|
|
20
|
+
<script>
|
|
21
|
+
{
|
|
22
|
+
__sveltekit_s9fgxq = {
|
|
23
|
+
base: new URL(".", location).pathname.slice(0, -1)
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const element = document.currentScript.parentElement;
|
|
27
|
+
|
|
28
|
+
Promise.all([
|
|
29
|
+
import("./_app/immutable/entry/start.CTdg5BqQ.js"),
|
|
30
|
+
import("./_app/immutable/entry/app.DgSDqHHR.js")
|
|
31
|
+
]).then(([kit, app]) => {
|
|
32
|
+
kit.start(app, element);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
</script>
|
|
36
|
+
</div>
|
|
37
|
+
</body>
|
|
38
|
+
</html>
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
3
|
+
|
|
4
|
+
<svg
|
|
5
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
6
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
|
7
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
8
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
|
9
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
10
|
+
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
11
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
12
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
13
|
+
width="282.55072"
|
|
14
|
+
height="90"
|
|
15
|
+
id="svg2"
|
|
16
|
+
version="1.1"
|
|
17
|
+
inkscape:version="0.91 r13725"
|
|
18
|
+
sodipodi:docname="sockethub-logo.svg"
|
|
19
|
+
inkscape:export-filename="sockethub.png"
|
|
20
|
+
inkscape:export-xdpi="99.540001"
|
|
21
|
+
inkscape:export-ydpi="99.540001">
|
|
22
|
+
<defs
|
|
23
|
+
id="defs4">
|
|
24
|
+
<linearGradient
|
|
25
|
+
id="linearGradient4084">
|
|
26
|
+
<stop
|
|
27
|
+
style="stop-color:#ff9c1f;stop-opacity:1;"
|
|
28
|
+
offset="0"
|
|
29
|
+
id="stop4086" />
|
|
30
|
+
<stop
|
|
31
|
+
id="stop4094"
|
|
32
|
+
offset="0.23809524"
|
|
33
|
+
style="stop-color:#f23c00;stop-opacity:1;" />
|
|
34
|
+
<stop
|
|
35
|
+
style="stop-color:#de0f3c;stop-opacity:0.82467532;"
|
|
36
|
+
offset="1"
|
|
37
|
+
id="stop4088" />
|
|
38
|
+
</linearGradient>
|
|
39
|
+
<radialGradient
|
|
40
|
+
inkscape:collect="always"
|
|
41
|
+
xlink:href="#linearGradient4084"
|
|
42
|
+
id="radialGradient4092"
|
|
43
|
+
cx="204"
|
|
44
|
+
cy="528"
|
|
45
|
+
fx="204"
|
|
46
|
+
fy="528"
|
|
47
|
+
r="40"
|
|
48
|
+
gradientTransform="matrix(0.62499988,0,0,1.1249998,93.138489,398.96232)"
|
|
49
|
+
gradientUnits="userSpaceOnUse" />
|
|
50
|
+
</defs>
|
|
51
|
+
<sodipodi:namedview
|
|
52
|
+
id="base"
|
|
53
|
+
pagecolor="#ffffff"
|
|
54
|
+
bordercolor="#666666"
|
|
55
|
+
borderopacity="1.0"
|
|
56
|
+
inkscape:pageopacity="0.0"
|
|
57
|
+
inkscape:pageshadow="2"
|
|
58
|
+
inkscape:zoom="0.70000001"
|
|
59
|
+
inkscape:cx="70.722998"
|
|
60
|
+
inkscape:cy="220.01293"
|
|
61
|
+
inkscape:document-units="px"
|
|
62
|
+
inkscape:current-layer="layer1"
|
|
63
|
+
showgrid="true"
|
|
64
|
+
inkscape:window-width="1436"
|
|
65
|
+
inkscape:window-height="855"
|
|
66
|
+
inkscape:window-x="0"
|
|
67
|
+
inkscape:window-y="0"
|
|
68
|
+
inkscape:window-maximized="1"
|
|
69
|
+
fit-margin-top="0"
|
|
70
|
+
fit-margin-left="0"
|
|
71
|
+
fit-margin-right="0"
|
|
72
|
+
fit-margin-bottom="0">
|
|
73
|
+
<inkscape:grid
|
|
74
|
+
type="xygrid"
|
|
75
|
+
id="grid2994"
|
|
76
|
+
empspacing="4"
|
|
77
|
+
visible="true"
|
|
78
|
+
enabled="true"
|
|
79
|
+
snapvisiblegridlinesonly="true"
|
|
80
|
+
dotted="true"
|
|
81
|
+
originx="-173.02241"
|
|
82
|
+
originy="-14.39998" />
|
|
83
|
+
</sodipodi:namedview>
|
|
84
|
+
<metadata
|
|
85
|
+
id="metadata7">
|
|
86
|
+
<rdf:RDF>
|
|
87
|
+
<cc:Work
|
|
88
|
+
rdf:about="">
|
|
89
|
+
<dc:format>image/svg+xml</dc:format>
|
|
90
|
+
<dc:type
|
|
91
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
92
|
+
<dc:title></dc:title>
|
|
93
|
+
</cc:Work>
|
|
94
|
+
</rdf:RDF>
|
|
95
|
+
</metadata>
|
|
96
|
+
<g
|
|
97
|
+
inkscape:label="Layer 1"
|
|
98
|
+
inkscape:groupmode="layer"
|
|
99
|
+
id="layer1"
|
|
100
|
+
transform="translate(-173.02241,-947.9622)">
|
|
101
|
+
<path
|
|
102
|
+
inkscape:connector-curvature="0"
|
|
103
|
+
id="path4044"
|
|
104
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
105
|
+
d="m 177.1474,1000.0782 c 1.41667,1.0833 2.77083,1.8959 4.06251,2.4374 1.29166,0.5418 2.60416,0.8127 3.93749,0.8127 1.375,0 2.37499,-0.2292 3,-0.6876 0.62499,-0.4583 0.93749,-1.1041 0.93751,-1.9375 -2e-5,-0.4999 -0.18752,-0.93745 -0.56251,-1.31252 -0.33334,-0.41659 -0.81251,-0.79156 -1.4375,-1.125 -0.58334,-0.33323 -1.25001,-0.62494 -2,-0.87492 -0.75001,-0.29171 -1.52082,-0.60412 -2.3125,-0.93757 -0.95833,-0.37497 -1.91667,-0.81248 -2.875,-1.31239 -0.95833,-0.50004 -1.83334,-1.10424 -2.62499,-1.81248 -0.79167,-0.75 -1.4375,-1.60419 -1.93751,-2.56255 -0.49999,-0.99999 -0.74999,-2.14581 -0.74998,-3.43751 -1e-5,-1.41664 0.27082,-2.72915 0.81249,-3.9375 0.58332,-1.20832 1.39583,-2.22913 2.4375,-3.0625 1.04166,-0.8333 2.29167,-1.47912 3.75,-1.93749 1.45831,-0.49997 3.08332,-0.74997 4.87501,-0.75001 2.37497,4e-5 4.4583,0.4167 6.25,1.25001 1.79164,0.79168 3.35412,1.68751 4.68749,2.6875 l -4.12499,5.49999 c -1.12503,-0.8333 -2.2292,-1.47914 -3.31252,-1.9375 -1.08333,-0.45831 -2.16667,-0.68747 -3.24999,-0.6875 -2.33335,2e-5 -3.50002,0.81252 -3.5,2.43751 -2e-5,0.50001 0.16666,0.9375 0.50001,1.31249 0.3333,0.33336 0.77081,0.64586 1.31249,0.93751 0.58332,0.29169 1.22916,0.58334 1.9375,0.875 0.74998,0.25001 1.52082,0.52085 2.31251,0.8125 0.99996,0.375 1.97914,0.8125 2.93749,1.31249 0.99997,0.45832 1.89582,1.04164 2.68752,1.75 0.83328,0.70836 1.49995,1.58323 1.99998,2.62498 0.49998,1.00001 0.74997,2.20837 0.75,3.62506 -3e-5,1.4166 -0.27085,2.729 -0.8125,3.9374 -0.54168,1.2084 -1.35419,2.2708 -2.43751,3.1876 -1.08335,0.875 -2.41668,1.5833 -3.99998,2.125 -1.58335,0.4999 -3.4167,0.75 -5.50003,0.75 -2.04166,0 -4.14581,-0.3959 -6.31247,-1.1875 -2.12502,-0.7918 -3.97917,-1.8333 -5.56251,-3.125 l 4.12499,-5.7501" />
|
|
106
|
+
<path
|
|
107
|
+
inkscape:connector-curvature="0"
|
|
108
|
+
id="path4048"
|
|
109
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
110
|
+
d="m 236.33783,993.89076 c 0,-2.58332 0.4375,-4.87499 1.31249,-6.87499 0.875,-2.04164 2.04167,-3.74998 3.5,-5.125 1.49999,-1.37498 3.22916,-2.41665 5.18751,-3.125 1.95831,-0.74997 3.99998,-1.12497 6.12499,-1.12501 1.91665,4e-5 3.64582,0.33337 5.1875,1 1.54164,0.62504 2.83332,1.47919 3.87501,2.56251 l -4.18751,5.6875 c -1.45835,-1.20831 -2.89585,-1.81249 -4.3125,-1.81251 -2.25001,2e-5 -4.02084,0.7917 -5.31248,2.37501 -1.2917,1.58334 -1.93751,3.72917 -1.93751,6.43749 0,2.70845 0.64581,4.85416 1.93751,6.43754 1.3333,1.5833 2.99995,2.375 4.99999,2.375 1.12497,0 2.14581,-0.2292 3.06249,-0.6874 0.91665,-0.4585 1.74999,-0.9792 2.49999,-1.5627 l 3.68751,5.8126 c -1.50002,1.3333 -3.16668,2.3126 -4.99999,2.9376 -1.83338,0.625 -3.60419,0.9374 -5.31249,0.9374 -2.1667,0 -4.18752,-0.3541 -6.06252,-1.0626 -1.83333,-0.7499 -3.4375,-1.8124 -4.8125,-3.1874 -1.375,-1.3751 -2.45832,-3.0626 -3.25001,-5.0625 -0.79166,-2.04164 -1.18748,-4.35419 -1.18748,-6.93754" />
|
|
111
|
+
<path
|
|
112
|
+
inkscape:connector-curvature="0"
|
|
113
|
+
id="path4050"
|
|
114
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
115
|
+
d="m 267.32512,965.57827 8.9375,0 0,25.125 0.25001,0 9.8125,-12.3125 9.99998,0 -10.87499,12.75 11.6875,18.25003 -9.9375,0 -7,-12.06247 -3.9375,4.43747 0,7.625 -8.93749,0 0,-43.81253" />
|
|
116
|
+
<path
|
|
117
|
+
inkscape:connector-curvature="0"
|
|
118
|
+
id="path4052"
|
|
119
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
120
|
+
d="m 298.10541,993.89076 c 0,-2.49999 0.41663,-4.74999 1.24998,-6.75 0.83334,-2.04165 1.91666,-3.74998 3.25,-5.125 1.37498,-1.41663 2.9375,-2.49995 4.6875,-3.24999 1.74998,-0.74997 3.56249,-1.12497 5.4375,-1.12501 2.20832,4e-5 4.12498,0.37504 5.75,1.12501 1.66665,0.75004 3.04164,1.7917 4.125,3.125 1.12497,1.33335 1.95831,2.91668 2.5,4.74999 0.54164,1.7917 0.81246,3.75002 0.8125,5.87504 -4e-5,0.83328 -0.0417,1.60416 -0.125,2.3124 -0.0833,0.66671 -0.16669,1.18748 -0.25,1.56255 l -18.5625,0 c 0.41665,2.37499 1.33332,4.10415 2.75001,5.18765 1.45831,1.0415 3.22915,1.5625 5.31249,1.5625 2.20831,0 4.43748,-0.6876 6.68749,-2.0627 l 3.06251,5.5625 c -1.58336,1.0834 -3.3542,1.9377 -5.31251,2.5627 -1.91668,0.625 -3.8125,0.9374 -5.6875,0.9374 -2.20834,0 -4.27085,-0.3541 -6.1875,-1.0626 -1.91666,-0.7498 -3.58334,-1.8124 -4.99999,-3.1874 -1.41667,-1.4168 -2.52082,-3.125 -3.3125,-5.125 -0.79166,-2.00006 -1.18748,-4.29169 -1.18748,-6.87504 m 19.99998,-3.18749 c -2e-5,-1.79164 -0.39585,-3.24999 -1.18752,-4.375 -0.79167,-1.12498 -2.12501,-1.68748 -3.99998,-1.6875 -1.45835,2e-5 -2.75002,0.50003 -3.875,1.49999 -1.08333,0.95835 -1.79167,2.4792 -2.12499,4.56251 l 11.18749,0" />
|
|
121
|
+
<path
|
|
122
|
+
inkscape:connector-curvature="0"
|
|
123
|
+
id="path4054"
|
|
124
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
125
|
+
d="m 332.41789,985.57826 -4.25,0 0,-6.81249 4.74999,-0.375 1.0625,-8.25 7.625,0 0,8.25 7.43749,0 0,7.18749 -7.43749,0 0,12.43755 c -1e-5,1.74994 0.35415,3.02089 1.06251,3.81249 0.74997,0.75 1.72913,1.125 2.93748,1.1249 0.49999,10e-5 0.99999,-0.063 1.50001,-0.1874 0.54166,-0.125 1.02082,-0.2709 1.4375,-0.4376 l 1.43751,6.6877 c -0.83336,0.2497 -1.81252,0.4999 -2.93751,0.7499 -1.12503,0.2499 -2.43752,0.375 -3.9375,0.375 -1.91668,0 -3.56251,-0.2918 -4.93749,-0.8752 -1.33336,-0.5832 -2.43751,-1.3956 -3.31251,-2.4373 -0.83335,-1.0417 -1.45834,-2.2917 -1.87499,-3.75 -0.37501,-1.5 -0.56251,-3.14594 -0.5625,-4.9375 l 0,-12.56254" />
|
|
126
|
+
<path
|
|
127
|
+
inkscape:connector-curvature="0"
|
|
128
|
+
id="path4056"
|
|
129
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
130
|
+
d="m 355.09366,965.57827 9.1875,0 0,10.75 -0.4375,5.5625 c 1.16665,-1.04165 2.52082,-1.99997 4.06251,-2.875 1.54163,-0.91664 3.37498,-1.37497 5.49998,-1.37501 3.37498,4e-5 5.81248,1.1042 7.3125,3.3125 1.54165,2.20836 2.31248,5.27085 2.3125,9.18751 l 0,19.25003 -9.18749,0 0,-18.06253 c -3e-5,-2.25 -0.31253,-3.79166 -0.93751,-4.62501 -0.58335,-0.8333 -1.54168,-1.24997 -2.87499,-1.25 -1.16669,3e-5 -2.16668,0.27086 -3,0.8125 -0.83336,0.50002 -1.75,1.2292 -2.75,2.1875 l 0,20.93754 -9.1875,0 0,-43.81253" />
|
|
131
|
+
<path
|
|
132
|
+
inkscape:connector-curvature="0"
|
|
133
|
+
id="path4058"
|
|
134
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
135
|
+
d="m 390.42568,978.39077 9.18751,0 0,18.06242 c -10e-6,2.25 0.31249,3.79181 0.93749,4.62501 0.62499,0.8334 1.60415,1.2501 2.9375,1.25 1.16667,10e-5 2.14581,-0.2708 2.93751,-0.8125 0.79165,-0.5417 1.64579,-1.4166 2.56249,-2.62486 l 0,-20.50007 9.1875,0 0,31.00003 -7.50001,0 -0.68748,-4.3126 -0.1875,0 c -1.33336,1.5835 -2.77087,2.8333 -4.3125,3.75 -1.50003,0.875 -3.31253,1.3126 -5.43751,1.3126 -3.375,0 -5.83334,-1.1044 -7.375,-3.3125 -1.5,-2.2085 -2.25,-5.2709 -2.25,-9.18756 l 0,-19.24997" />
|
|
136
|
+
<path
|
|
137
|
+
inkscape:connector-curvature="0"
|
|
138
|
+
id="path4060"
|
|
139
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
|
140
|
+
d="m 426.26064,965.57827 9.18749,0 0,10.75 -0.24998,4.74999 c 1.2083,-1.08329 2.49998,-1.91664 3.87499,-2.49999 1.41665,-0.62498 2.85414,-0.93747 4.31251,-0.93751 1.87496,4e-5 3.56246,0.37504 5.06249,1.12501 1.49997,0.75004 2.77079,1.81251 3.81251,3.1875 1.0833,1.33336 1.89579,2.97918 2.43749,4.9375 0.58329,1.91669 0.87496,4.06251 0.87499,6.43755 -3e-5,2.66666 -0.37503,5.04153 -1.12501,7.12488 -0.70835,2.0833 -1.68751,3.8542 -2.93747,5.3125 -1.20838,1.4167 -2.6042,2.5 -4.18751,3.2502 -1.54169,0.7499 -3.14586,1.1249 -4.8125,1.1249 -1.37501,0 -2.77086,-0.3334 -4.18751,-1 -1.37501,-0.6666 -2.66667,-1.6668 -3.87499,-3.0001 l -0.25002,0 -0.74999,3.2501 -7.18749,0 0,-43.81253 m 9.18749,35.06243 c 0.83331,0.7501 1.66666,1.2709 2.5,1.5626 0.83332,0.2916 1.64581,0.4375 2.4375,0.4374 1.58331,10e-5 2.93749,-0.7083 4.06251,-2.1249 1.12497,-1.45835 1.68747,-3.79171 1.6875,-7.00004 -3e-5,-5.58331 -1.79169,-8.37496 -5.375,-8.375 -1.83335,4e-5 -3.60419,0.93752 -5.31251,2.8125 l 0,12.68744" />
|
|
141
|
+
<path
|
|
142
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:100px;line-height:125%;font-family:'Source Sans Pro';-inkscape-font-specification:'Source Sans Pro Bold';letter-spacing:0px;word-spacing:0px;fill:url(#radialGradient4092);fill-opacity:1;stroke:none"
|
|
143
|
+
d="m 233.13847,947.9622 c -4.14215,0 -7.5,3.35787 -7.5,7.5 0,1.33442 0.34609,2.5863 0.95702,3.67188 0.67354,7.35731 -1.72873,17.52938 -7.36327,18.71093 -0.79933,-0.13447 -1.61219,-0.1953 -2.4414,-0.19533 -0.88037,3e-5 -1.74254,0.0828 -2.59767,0.23439 -0.006,-6.3e-4 -0.0129,6.3e-4 -0.0195,0 -6.88451,-0.77621 -8.53512,-6.99492 -8.53512,-9.92187 0,-2.76142 -2.23855,-5 -5,-5 -2.76141,0 -4.99999,2.23858 -4.99999,5 0,2.76142 2.23858,5 4.99999,5 2.89656,0 5.41656,5.58992 4.1211,10.68358 -0.71496,1.00152 -1.32478,2.12658 -1.83593,3.37891 -0.83332,2.00001 -1.25,4.29167 -1.25,6.87495 0,2.58336 0.41668,4.89209 1.25,6.93366 0.83333,2 1.92577,3.6834 3.30077,5.0585 0.15091,0.1464 0.31314,0.2904 0.46875,0.4298 1.87808,4.9643 -1.96241,15.6952 -4.51172,19.3359 -0.002,0 -0.0172,-0.012 -0.0196,0 -0.89724,0.3794 -1.52341,1.2691 -1.52341,2.3047 0,1.3806 1.1193,2.5 2.50001,2.5 1.38069,0 2.5,-1.1194 2.5,-2.5 0,-0.4623 -0.13286,-0.898 -0.35158,-1.2696 -0.58827,-5.1399 6.90737,-14.6453 11.69923,-16.5429 1.08237,-0.014 2.13287,-0.1601 3.16406,-0.3906 7.02095,1.0855 15.83144,15.0803 15.56641,22.2852 -0.0546,0.2961 -0.0782,0.6062 -0.0782,0.9178 0,2.7616 2.23858,5.0001 5,5.0001 2.76142,0 5.00001,-2.2385 5.00001,-5.0001 0,-2.2435 -1.48029,-4.1326 -3.51564,-4.7655 l -0.0196,0 c -6.66719,-4.7468 -14.6381,-18.0965 -12.85156,-24.7852 0.51424,-0.7956 0.95977,-1.6472 1.34766,-2.5781 0.83332,-2.04157 1.24997,-4.3503 1.25001,-6.93366 -4e-5,-2.58328 -0.41669,-4.87494 -1.25001,-6.87495 -0.29167,-0.71457 -0.61344,-1.39833 -0.97656,-2.03125 -2.52957,-8.92872 0.1295,-16.46994 5.54687,-22.3242 3.15041,-0.8888 5.46875,-3.77228 5.46875,-7.20704 0,-4.14213 -3.35785,-7.5 -7.49999,-7.5 z m -16.34765,37.10936 c 1.87498,3e-5 3.29946,0.79952 4.25781,2.38283 0.9583,1.58334 1.42575,3.73698 1.42578,6.44525 -3e-5,2.70835 -0.46748,4.84247 -1.42578,6.42596 -0.95835,1.5832 -2.38283,2.3826 -4.25781,2.3826 -1.91669,0 -3.35807,-0.7994 -4.3164,-2.3826 -0.91668,-1.58349 -1.36721,-3.71761 -1.36719,-6.42596 -2e-5,-2.70827 0.45051,-4.86191 1.36719,-6.44525 0.95833,-1.58331 2.39971,-2.3828 4.3164,-2.38283 z"
|
|
144
|
+
id="path4046"
|
|
145
|
+
inkscape:connector-curvature="0" />
|
|
146
|
+
</g>
|
|
147
|
+
</svg>
|