From adc4f5161d9bd6dbb67651932c424c6cc8ffa17f Mon Sep 17 00:00:00 2001 From: Daniel Norman Date: Mon, 9 Mar 2026 11:21:59 +0100 Subject: [PATCH 1/3] Add ORCESTRA case study and update CTAs --- assets/images/logo-orcestra.svg | 18 +++++++++++ assets/images/portrait-tobias-kolling.webp | Bin 0 -> 15260 bytes content/_data.yml | 12 ++++++- pages/index.vue | 36 ++++++++++----------- unocss.config.ts | 2 +- 5 files changed, 48 insertions(+), 20 deletions(-) create mode 100644 assets/images/logo-orcestra.svg create mode 100644 assets/images/portrait-tobias-kolling.webp diff --git a/assets/images/logo-orcestra.svg b/assets/images/logo-orcestra.svg new file mode 100644 index 00000000..3eab3921 --- /dev/null +++ b/assets/images/logo-orcestra.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/images/portrait-tobias-kolling.webp b/assets/images/portrait-tobias-kolling.webp new file mode 100644 index 0000000000000000000000000000000000000000..3f0244d1b78c71769aa9a906a6c0b3e1ac9ff073 GIT binary patch literal 15260 zcmV;NJ7dIBNk&GLI{*MzMM6+kP&gonI{*OCnE;&uD#!rH00000C5@~laoECk4sB{T z;QuFoZ9m$4j@93}|9bxg{%8B|{;&7nA~}8Mull}lJjedu`}ghl`M-f5@W0jjwEYME z*Ze2J59<&4|L@=5KidDG|L5+j@ALNa);H|m`akvF?tk$=E zSMDFCr~Y5}pA#RoKk>iT`%Pf?aeMDyi~eW+IrAUfzqo$Q|9Ai2???TIcpi@bnfYh# zKk_fOABg_v`(6F-_mAbD^O1KF=zo^{ zM)Vigzs>*L^&0kv>i_FM!vCEAq5hN7r~M!AKDd2?|9kEW{LA_u`9JSpx&Pn){e5-* zQ~js+pWpvip9KA!_y_)z{X6}S_n-3L`#-;ZFMlWhJN%FNKiltnU!i|||AGDg{Ez;B z^Pm6!20xg8PybQ<S#JNzC8w94lZc2m5 zQMfE{jdse0>gQSys=EdOy+{qiFCFLqU@A~oIjxl2B;e5 zAMa?%G5Ob{N=9gI@9NIcT&z7`n$CfBANLat(RF;9%fznv@Dj>zw+MD3+8H&$wumsHXpi- z^s7soHI4dbgd~#bFh18eGn*&j)%YARK92~vF8M6WRsxQJ7Cu@k;aFAi)S)t428b= z8q$nYbt-XlMIU%>q88czU`FEEmfLC`rM9pTHjT^Spa!E{W$ zFZz5|B6zhG*7*ByMF`IZWIThVrA=?IKZZ1mtnp{&SZ&?#2CJ;0uR)SWoORe(M-a{^ z%na-UrR_iPV7EaOlihbf&xn0Xl$B%WFDvJ?Jl2&~Rii;2O50glf=*vuscMFuU0>Zh zo|OP3w(KO^cW%1jGi9C4Bu&E``xph_Qm@qZv%Pi=aI03MqQU*lN8=ivFkpNUFP)Pl zV0iWYuGP;}YnU{{MrKBe!>NNzD~pQ!ttmf<=6|z5*Sa?xN=at6~(< zuHPkH2W>TMfaZ{lu;k-F$MVYvMbykrPYb1TlQ3Y`Qmx){o*;}k+p$(jpr)rN+Z_@X z$pP4yG*3=@PkY}Y{c2K=%>iT{)C8Lc$UhaA#`##D1M}#s{sq;w%**xQg!Jm7HV@;e3*&nLA?{9%ZF2o${{|~_k z>efGq&}M=#(5f?6YIb~3!l}2IX-q_)W!=KRHc?Wj9g>3Ym3Q_FpCaky$<$;cY)WMHHvFfEtC0X)AhPqaRV|9x6a|4-oyk z?*|GNR&r0NdMvjGu(!I^1L_%>>xV@3&m+Z8R}l`+kxP$F^E^11xHh1KSNgT>dBxwk zb;kMV^iW2`)AaJi?{P}Vgv2BU7WI?$tf+KXe(T19h?06KuAC@X zQuseF)poo=1i0e`{odQYCNTt)ISItpk{)~Q3*LValaJQsCD+@3@0(OKDs<| zn<<2~NQF?{#=($$!=%-4yFIg6mQ}kg*L}bYtx0~qxsltZh4~$G{?QMELk@Q;n)L)P zQljW)xaz#9VmxK%|V>bkpBwS{U)m!!fX&spmfKcih5{u&< zC|CbHj)^a8-&(a9z-7tTLe0g!lN9Z5C{u(_L#r=DcAA|2K&0>UXa||5F8hE< z-xzOwMUACZ7!5$#g6eJ~jheFykeewE1RK;&-a#7EN>{_1-%Lw&ePn4q=|j38vJP59 z7wzO)1Pl5Xrt>1fN9?^x?{67Ocke zhnL$1U9gzZO4WMII9}+znC=c!20AH<`dnSn1(^osUZebMTmE{lhhJ_xHw?nfy-~y# zb5PSQ+IjU0LNl|-^923rx{B6ya$1JPhz0c> zM*I2Q^TW~&dRQh$=~ZZ{wyheHy@$Adt35pYFzxr|tChI8=*FPp^krFkg)l`O=CRe_1tgUu&^dYv3 zqXVt8703iF(CAcy*mL0F!;nD}Eg0ACP-6s98n2W~f0adEPNe+0ds2F=miEZ+Sgrf? zX+^F=Z7=!%SoEsL9z1qen5J+zg1r3KZLeqUL{-ai=u^`kSS}4$_-sPB*6C?{N6>*A ztWH%ptyc7jVxa1G7m&RS_a`At4*f(60yNzCxQE-7-r8L^3_p}ZrUX1Ci>O%xAgIt3 z28j&d(=xQ0IEfmC=jqK((O^*=S!@{QM+ifh%nLP*0EED?A^|ij=@PdLjWcFSReZ6G zZSC}mBKrB{FtGKC){#Hs=-K}tJP!r`r(NV!VsARZSHam{oHaBg{EM3i?0Z4LU)7D& zr+UEV&9*dZJ>_}yJ)PLQvn&N{mxd*nZgHHe-ScfsRj?nF9BYe|#eexUjH0eJ!zV+& zqFF?V2TDDaj{;i`%$rdy4j?FYMl(6LKJlK`jibO>B|)C~LxS@89_{Qh%b)v%{4I+X z_rruNTcUf3W<98xOveGdT&i_HBWbuV59$WCLuJS%i zkSyiRH*6er=`K4DzwH4{4pS||y>`U92F6Q7l+Omz_UG&0Kq7|rmS3ZC}^w2(Y-tj?Xu56OIRLa@?Cu*QM>M>Ou$g?Bxx zfosmoX^>2pe$>XA627yWA10`m^#F zL_{ETc$E*Vt&0RTjtwR;(uh)d)qXS{)BU5;F!0i8?SxFy!-GM&dV_9 zJRU_*o{ON?sA=tmZ2G6v)|;%-80}upQd2?~pj<#cG*14aIHd@oIvVcr%O0l}3*2Sy z0$5`a6*>Uf&Ayl(p%T**qV^I#Z8og21&m2d#{VaF|Hf4-&`yq=z%m}o^&ctx`0Xw4 znZBvHWfV3l0Y3~{>l@S^^g9PIhHNkblW?Nn^L)Lp_IA+mHp+!$TROCh`B<`%Hnl9? zNtc3+jGjAmvt0!7fHE|*FgVYhhYw_DT>IIsiwC2m#SVC^z40b};X@0L#s$Be!@TyN zG^{tu#E2_=0cg-~#YwlND2XZoiU5JK-n=vdxiXpP0{}S|CkNf~c;p*2-zh{EhGBu2 zhOop#1bO$A@xoqldE>w|w$afdPg+i`ZPW@eo)@q`eYI;l9hygZd=Jjt9*b8lCneG< zhKN_u9T?BMTu>NGA~HSV!o;;q?bZS*FLauEjjIGA+fBeHsNOgfTDp8MhJ1&S6$!>! zoI5p;H1-z%XW39mC;)$}Edx|Sf>(_`EnZ68hXLp+1IkZL^{@y6L(v7dWoy*qvn9vX zHBC~l>xsGt0l~uRz|n6=&UR&mI*(f8s>gAJlJ3QJT0SwbmZF}uO57TD0WrL;>LaI7 z{nD^Is*6U*5C?7}RF)mv3ie*;o{g3$cT9WGNC^(tH`&0E)Wst`Hr_#-Rb#_4sWiOe zu1{p$%IsKtk_QAkg7A7KraXZZEZMtg3qy#KzWn8iL}1=!d1{EQc|)C23 z2xCcslzv2gQ-DMVCZ)Q&le#JS?KLmi+bbB@daxU-Cm}->N84YoRA#ji{^TZF2{E%z zB3)t)%^+Z{O|ut$AbCCiTLJ6~IlW0g8b|KB#F&-e-%~$&ee_{@J+?ol-Y`dwS%*5& znV6MK1~Q7^(Rg`2o{S=kdFnrqms9R|F0rOZl^%%upqoWh%*h}!3pBY&+4p&OjHe97 zBO9@EPO;Ud+vjeL#6rbcsaWvV&QG+l1QmhrU0yNKTKtV+MkA;lM+^`6i;v1_B5sq# zQmX~GPX^esb(y210FLh10IY&iX#3}u@G)JTtKm`_b2@w}fc+gGF~@NtaH{_ORPXU+ zUh_U_Sx;fMEl`?73;^(*Dk90k7;g)OV0Lt#PxHA~Irs#vuqMvM&3NqBD|Zn;0!MKK z%I~#7W2nsah8HF8W0DL*m|EWp{v(7*;>yl&g?(Z?K92qth_+yl?fsIN*r1Wk5R>9Jy7r55+vq?1+!eHlKdreFXoctPj1&BdD|gpOJU)><8xcMP7uTPnNVB( znmo2V7eEK5s6l7^#lboh1qYzI*j#sj{|$B9fMZr>aZnMECLqB=&l3=WlEe+zS^~um z2GZH(ymSXxul0diBU~{4Bs$-0PO{-+^W(wmNS$0L0}jQfDjEnmevPp3WQMK0piUJ% zL45vl@o^g!KN4;%C*_ZxLzP@<92zhKC3u*N$$#sW+sdE$kGlhk&K@}uqTy)~TQhJo zjMlktuwR*FFbWXMS}zUQ9pQC<8++Zx%Z4LHhTv^Vw@0m{PahW@wYit4rv ziL=c0FC$iU4wHijUx5<*%_q^4A~j!C`Wrxd*oE$(P4izP8)ozY+hhQN7!F0kr>)bR zy=C%N9Um-qyFo){!uZ;<6XZ_|CL840idfW$l;b(X(JO9w)L3dKu5x{99r zH|Gqcm#z(9iK)26e9goxk~jk&shIRPoBU!GDlyz+N)EvYW;VNsg+-U0`63F}?pK9y z%@92P<27AU`|)hBQT-$<20VL2sOw@UwBQHXzD{kLvF`aWi1X8=nZh^2LmECl@fU3fnkh+39Ue^Njk<8e^dhEXvQkw5 zw-lCY46o02T~8(vOgrY~7rDp(&;k7c`Cx~DOy&#iOnBtQZF=j6dzGqI%eWE%Q6^Xj z$$5aqb7ZmxH?T?qB!hMOHiy-buj}Tf4X!jz}^ zi}{Lni%Kf^f0Gjgzj=&bYiq$!B;p?MCi6`#_<_NljBIXC5Eb3V{$BC*Xa;T8)mtjF z(v*Kx2rO{(X@?lU{B56kVP72l+C&IogMSY6C|FL(spGm6q2a>;nJOULeQ;O!9vA0; zpP`HnU7N@4Qx}=jo2#H6v3yKK7+m3YB=KbMjkcoCBX}R(E;YLd);31+*}Hq-3bEwF zQz8T{)dwYxTCl@=YZ|{t?knW*8e1?aSuKum4|rQ z2a9RV4*o;m#$WC`w4_}-$KdXAgvK$d7U-XFgxD0-;g7QuK>ydH`#cc-k=;Y~6;AeW ziiKrY;FzmVZ&yE!*^2Dj>YkC+!v)jd7W+S4fN)Lr0$xp#DXQtlI$Qa>BUwhv z$o_jEBfz@pAl4MQSBVA|ut?gr9T*LV_jC0-p71?&p!%IW zDJ~Gi?xUfp&tsaV-}3hi{tagP-6Yh=X+CdD-^dGq|oI zk55{LDUAfsLWTldEuY>xijU41alb)YJLoQDLEv^CMXLt48@=5iw8%LNiLRw#C`Jlu z6`Fyf>I?^W?4pAqpl$*`RpndDc}g>)KuUdQce;p!sVrJ%onSaX6POhD_qo4~~l3 zbJz95LG?HaT<`tL0lRHHbn^yFpaPer5wZGR+P8;*Z|}A19dyJZYF`ovd2bn5K+j{$b+0jL+z+%GbfSEh5DB!j zv43uQ`H-JAr{rHdh*(|UXLY7 z{mXvJWSYgFmQG>;uO5^)U#0iLd&C?W$u2QL=hSm^&nwj-$a5vo(m4LyLW1SLzqN8S z7zmk!(L>g%bOuT5NNzvc(tEZw!em3hOD|ypx`zzMXzxX&wwa70!o+3}5JKazgrymKN0-PN$1p@k zAKCJ%BAb9}>Ia6Gup_q_%WBQfnY4LDSS;2k`5gv7U{W()Fx*der60UFGZhWnBf8IRVXA_CU9|d40!KV-WzqeP}w~YyCELaPeE+hEHsD&1q4+f66-+i1_*cw*d zLZHn{JN?9i#zLe4$UGdMcR}agv-dupOI^?gkcd%c6E0up1Lw5Y34vtkx`-Q}f0%uY z?jYx|$SN0a9WX@@W@)5rqHqDs3Zm>wX-u3CSW5D;$sCXrZhFw*HHFcHQCF{WX%DRY znuK|al5A?HqM2_Z8#pkOk{abXW_Nuk9MGr<)QO^V#mC=MGe z4x)=AX3CFGE!1~6=D2@Pc3|_$*mq|z3MvRI)62UOau}|^R6O*NmFlj+auP03Q6E0= z9vKfyrq&D~gzb6-(6eZ5eN3BC9qmo9D-WsV&s+Ab)fp#b&rKSsXqw_WHgJ~wc=Bp& zl_Z!^F&IFPPXX@x=va5Q3~`rK?x+GR1n!Wtp=8K>(2?Zc>TXPhc*G0)HF(Q%q5~p> z3i*q<&}aTEM1UFQmk(9Hcmv(N$0{d(3I-P~IzOzkx+P}y z{oAJEnYoh-PavhKlTy~Ka@w*A5F30G$5QS8lj7g65{mruy*0m5wMBKUtvINKX2elI zcR@aOyqorg>m~$Uah)y_6P6R$0OvH%izVUWd#h>H5IB+Kg8rRflq0pn-fk8GED0wp z-vwn#$)k3vCVZO1C3C)wn0o;%CYI4&lrX?3GA$%eL@BaYE2d}1iDmEghSUZ%`88io z(V@)&oe^k=Ut@r0O<2~q^IBiRv9xXN zB$vOar%#z)!Ni^)o1&qt4t?!~?7o^~T6Zh?#cZ}LbBrWY>n%0xLf+^h0sUUqso`U*v6Xt_oD+{lUVGhKGr z+*L=cK%#`0w=;)LLFs(t?{B>8Y|$mm=|j9lG}_$g8vU+(dWz<7O@}q^P)p3^iDJ1H z&#}-L{gdZdI^TU7_hIG-RBKoTabyQNhor6nx|PoaS7g)aP|Ud&XeD%{dGYFo2mE!l z0JqGc9t>!u=GbyYF5X817zLf(yLp!56at4mQl?z56jQZiZ}l+hroz!DwX^*zdXtpH zp9T{tFHF`xuem46TxpkJ;MQ@-^frLrdcA0}l+J$N>x@&>3;aR-DX1V>lfLw6A7lz@ z2WNWH!-l?Cr>&y{wYnh5@tvIK)|GpjAx|j_JCQUF*|{MarLT#Bh61)`_L46@S8j2r zDm=M*X?pPdb9Kd-b_Da6t;DC5!BtN>IU7tX=|tsPcKsUw8~;qEPZ-(CxMAEn%`j-K z41j@g+Tjm&>>eUk4HCa?*4L({%%MlRWKXM-O>8*z#MLrI#)gN^DbzWMRkJ%zd?7|b z1%dmF`24SdLIb$m=ifjH8tq^b&C2@2>GE)h)U>H&(qr~4mtomX{#Ulj0jGG)x;DS{1CjO|N5#8k0KZhn$uc!TCt0e% z1i5WfO!)7&_3duVaoAofR0ikN>Zek^vTb93cn{<2pAEangnkj6WVbS=p!!szx zQYE6VP)rPr02fh173qlju?oLj7Ya47MID$I*Wh?pg8jwQ-H+Vy*cDcgY_Q*?W4MAT zpo>5=(+_p=Piy}WE!K z-wCeZ6<5wfRHq#M3OO|hGVkLc*tk8!CZ!c%KyL-*%9pnR!omoM_=h=t9??C#TG17@ zdAK9E#>o=j2TCjK3pk4sbUedgg}Ft-&t#>TTu1(n zEj_t^I6w7Bk6sRM3ew>I;E(7`JQ@}3pR1;)p&VS%CAkz&Y-v|T=5W2WvAyJ;CE)Fs zu-<`(8n70F!GRBh$);Q?BOD-iMMNn>yYk=oUD#<^2mk4P*#h%wdKG{ zR_1L2!#|DIz;RxCjEzV=0WxS*#iM2&h+Gvo!p6oIY}P%ZEf(^YwfTt~-c6Bz47(A;8kqhJKZTT$(%*chKcL$;U@w&{gnOJuEX(Nqp1Cv1G*Q#>Qb};i?wa!)do8^LvSE%j7 z?BwjJNl+hi+G;#_8A>-^JBEAtiKWxQj?P&vvhkNTYl=~nyK_YAqa7w-?yHwG!QLFU zh<|wP=`^9)8{kBaa_1f%D?T0-NT2F|RXwLbR@#N2eQ)J)WAl--ZEODEaPQWE5s3G* zPoSz?q5dc2Z>YbA8U&~AifiaLcK?HBFeT!qfhAue>MI)h1rhIUj@~2{pG89(U#g+! zeIyG?b|0B%vZAKf0f&n52RfeiZ5LU{yZBZ#%B1&Wo*|ks8SERM(efJuTUkW8{s%^W z{VNI6pG>vJnnglI=AI3SPb@aWe5?8;hFFcQk}@#77=LEVBYV??BTuSD2=oowx2MZF z0F-pDB#$@=n4Wh#*fBcX=x+bN@exQMoNR#sT}g5UQ}}hjf*Uks)C=LArGsG44B;su zEg1p-efD3I(PJcxuDFzqW=LD*?!!hk`q z_X(*4N0Tpv06?CCr%r9i30n8=zuPVf0rZV@U6bl6+R#wkBv{D%9aFDtkkXPrkXEQo zn9}^^PEcRDNK+TADN~P$dXQjG-+3kCArm0qr$JvxAR|3IW=gJ&-_1bl6;$!KuZa^=HdDq~WN!i7)*QZTRh zm$X}0XLD&o5t{w2jRG>)%)6$hQpXU>7jg_RNK8>v^5>tZ1y#(M73v+ z;=Fij#D&uZ5!F>TGgVpVIl85b8?qWJ!-*dz;4HaqvgWY@&H{cd~S5f{i0iCue_+CK2zt=V)dd~)!2{wEU z8wzVOec-_R{|p#@*T_PMWYPk8{iUEkM^zxaJ%Bbts!Gn8Ri=tQuzm1yH?n_)x-_$Q zmh6p~f^IZ;Nker{4{?nZ<#N}vz9<$05t-W@0qyN`lSH{Ni`o5izX+UfK!#iCuHoe% z2yyau`5E7#rg&67;}|@{SqJvlc~Ef zC)lB!4k`G`r0cAftl8%ZF>Q(NmhKy+d8$-G9j{Ez2ey_ant-%v?BoqKbV^_Y1=h}h zi80{A)To@19g{}MJC>fOi!Eb2b|SSjx05(;s8=Z~ zqRBL1Z?kqWUd_HrtXWtHRO$HY4}e+PYx@{6M7ULYi?EkQkK~INjalNWrP3YkYw39w za{h~IqZmvh_BkPeCus$QE-eM)%LxZclIyv-#1ynBk9=bY-aC9=8Iz{H(NjHk8sQu&{*x7qB_RRPG4Maln^5uYDT$6X7W5v^VC7_4p;qBP;1BFqi_~LuX^dZuq z8?M8@OS_P=yNoCFeZKZ>@rS>#8Nk)?QH+See*V=`Jh+<6hghz;K_FY6w)QoK!l%8T zAfNQ_G|oy&FGv6|e}D^(31tkIM48tW6b85`&fke_hO+0)J zEjRjtM=o{!u(t~nU2kad6LvwPGA_cVn_&fck~f0N99Lyn znm?POwxV(8` ziND_dh=(?4j%zGMVp&t+KZ{O`kF4l>4ruaV?k_2CvZfwn{zc!#@&EmvV;Y^xB(E-; zZ`&yqHNX1BWbFKxbe%<%wkM!R>q z$BP&%xc7HDu$MM=i8QLDoTKlKP~e;!79 z$fy4$d{p(H#gBA<_}i^uow&|uXK{|;HXl4r5GAi$&6!8!KHPs;eAXvPgmFIgGtf)b z>p#A%Ehg-^RO$e;;cxi>b#eAAE2UOM2LFy|LZH70uRLzf5rjU_&RP?MLFQ_AGlX0m zIpPI#wk6!AnLg!in$6lY1Crtac#p!FYmVZ7obI$?`XQR{$)LXO=98TCSn5mMkgR4> zG81=ITqQ?||1dwP0Tvlh^0_2&`{jk4&f+;4Q>Zp$))>6Tt7xGgF3$Jzq93xnw4m*4 zQ=^NKHGkaUos3W=>fj%EpHLMG1GG!|PMxg=$bm;l7>UoMJPs)c1j>WC+NGIi2`tn? zbT;JaA0dH-64w<6?mAI-p4g1eEu)3GG9pGhK{_?L4tTZ!vs8$()w#BPN=uiJfBY=& z?n}Dx2jCwCN#NVGsHP*q9T3>%MKknPS$Kg}j)#UE$*@N6VQuo=sKOE&B7LwFktC>r zW47l$?Q0mnxSW}Z=c(2DIjZE?dP3+;tMy9jbvBa)u$e;p zNJ{55T}3rA4b<5HCma0bm=aJg!XHK11=7Mtmw%{(uL&PZq^uCNvtH1ltm4pIIJUFw zhUpeYR2~LO*l3k7Oc;Y%*r}$2l0bWSW-!6$D~8UW2ul_#$_el@k|Y6lT|!qxA4%X- zZE#C5QumUXjze2)!YV;YB(F5kIh-&>6t~O1zCa+j@7si5)=jhatYVH!O~#5R2yw#I zN_v8wbiz8QQ2(aRv;*}>%=+%&y?+DoZGEZN!}{;hCjwNf44l`=4GQa(Vo?MOODSL! z=F!N|7(rA##|rEXuh!na7(HWXf|g5~kQ>_Q<8r!k9U8Ktc+wZGT43-J~Z% zO~v8JIhqo^03PMpWwFoH>2k)08JC3n-i^^dt61(UZeY>2Urq;e4UC&VtKgL;K<)(u zNPdx$h`^FI*Md#sh*&Tt!9`SH-Dzke+gY8k(oqK~T{x*cTnqI{APwf3j$^o0U3qVN zZ^dVh>suYe+%xGG5zYTK9Oy(hs2i&o9_V-wZ&3rLK(BAcv%Lv%{#9%JA4z9dzAYPY zj*Zo7gk>u(d(2X~yUvf4l@+{=K`PepATacOZ=tRU2Dw21u4hMhK4%eAx-X@cVK{=1RgEO`Edv-ia-K zV-kD9&6bnpKS@?(x=!f|GL55y%&Rl!u$))MuqaPz8w*0{q zyqH1BIpAeL%7#N(%BdlXq6iT(_sH#$sfuFc@IY^S_C(ZQx>^pqh1iQ98Ng7tZZi%Pa5728X=233A={}GRtu%^v^FCdT|fK z*OGEqAKxD1gdA`vFnv}(bYw)lKO6`={Qn{=}H-N z%ghu1Bp>R1o1j+V45K7(Tc*>u;;HaVutCE|9QKjibNJvm_J#Oc z9h$&I1j81~@lmOm@;z(OgY2D%9E1DTN-=m2bpr~bT!6qAbU~p#)dWl{RcBW=Dm_xA zp5-a@UWE2S9cDDGZ^c|6tp1vm|C&zQ&=~612ONOx07V*KlNS-C8wvB9iF`S~(W<7+LsF6_ARvqJLeO~9hscc<@D%wke@0*!stn+qRp zv<%4On*h7K1Yn(e9NLv~msHTqvTDmH+jBT8*=dhMYSG#s?f4 zVFxi=`z*Um&IGQcl@TRhL5h?Px1xw56Ov9`#gj;qnrMDkm3DIGre_wG*O zY3?Y$7hh?07K2!PTe+1O9J z0NiF!OuB_#xBj+czmVGws-D#XBlpBCDq9s$-hc9SnEte7@QC${yg-ejW$VUoSDI3w z732I_aSAgAq07Ds)jd*5hmF&^Oa zZJCZf#x?1kYdbs!O{N$w@+=J71je}M~x`6O}x`@Z;6H@46)^_OtK)P%5tpWDIOibxbGjkLq0Z;m$CkW448y)&$SCYfw z(>-$9z53NeYtoDlI*K#oIuTTk7gZK(_H|`l0xS;P>SPXS|KZbU%j__;cr&_DgG3{3 z?-_1K*~tdMf(v#AzCFpspG`)NRux}7DkY53eErEAVV8}BIN|~sx6-M9Vo6`SacbDg zVY5Mi_f_>GXADpI_iNOL6WShOPD*|H4%S>~{>&$1V(abJ1~jROG)|eRmEWS{%(sKO z)6EOvEfEwutcgB6fsIZRFap-vTgVjx$$J;cXHc@H@qV#C^5~!6aI>l*sahX9SdE;u z%^q6x{PsnrFOvT7bL#*I7LXj(%?&d+IRHTrUV$xxzT){f6s$H)>T~v)`$#v-rfKs8 zQ+5RQ@ZdE+T-hVC*X@A|Ty-QBn{FI37=5Aam2OJtV`xfYr4^((i_(E4Lq#Zm(HXkv zbK<8f_nW$_BP}NG**P)cyk^hkdD8EWCF}EGi*agKd%Tua+il$R&W5P0tgf9m+|q%j z92Ej{aMla)Fneux7swpJ+%i)X8N+N7bRK@=<4zc~khT5w(<29O*xhrDsYCxYoVB_h z41T2|V%UdmbhcRTJp(-CXW3k*b{(B8e~$5Prmb3U zZ)B{mKyhdvk4DB<{n$+oNyLQs&m#`9Rfb!RUZ)MhJF`-Tc#iUKjke~U#zA3u{lXVI%3CzEm5()EioW1Gk8y~LF%J&C!@{fTo_(3}VPx!stIo1D zx5j6gsfi_oZ!PzxzmAz(kms4rDw;NL;u`!qdgu&^GZsY~Z`0Ca0M~j{`>psB|I-;u zU8K{=djI1JQBV24EdV&;yPsK}JYpa%jg5_%KtW4@gI_SnY4GxjFY=z(7JrdkomKTH zID#EN6B3EAniAGtaf)JJ+)q`j&P*H;+h_}gYo>6 zSj84RnzNQZ4DDpJxr-XL|CaP}c55hzrr5JfWZAR}ciMXuxUsFnmOH!zBYoQjZcgaX z!Hj?fa90(*<*aaEAdYKNm_9(0CLa;Emo#&_dhZ_t2u~=`;E0~&n)J>eNj~*H*et?Akezl=?$P!G*@Aen^J!frcXy>s@YIs4>AzXP zNM9(moaWuFe0i;iM}%LFNe;v5{97uzZbE9^EC|w9?&^`!D)io9oruBpN)-qv;S{h1 zc|dN~X9pCf6PHi|cZc$JKu}@?1+Ag?BCL0Y<+1hSiOM&Yk_U6K?b{H(>U$N6Vyi9s zMX)&7<0v>V`c*2oZIr#Dqaj)n-ZQFRZ*261eN7Jd?F=AqargdQoCKV}yf1gF9<|kp z0W}Lhxsiy4AgVv6AFrgNi!e=p=fp^`AHz9Mq#DJ2VQiwSu)Y-o!gZ%z2aQr&Y>z64 z=9ZLI#tII`xlc^x&P2}-Uwu(ozVt>W6@M``g?}zW-$9RXuRNY1cI~IWT#W?uSo@e* z{Z}N&0`)8rqI>#`9Xn+Avjv;&?SVxwpYoi7y2S>hK!2H)hM?ry4KQo4QvnN-EVANXpF1pWP~$> iLI`RAQm;5EWrgiL?|;vkE&zRVj+KAzbw$R40001ZKg31= literal 0 HcmV?d00001 diff --git a/content/_data.yml b/content/_data.yml index 802107d4..41817ba5 100644 --- a/content/_data.yml +++ b/content/_data.yml @@ -29,6 +29,12 @@ useCards: WeatherXM configured thousands of smart weather vanes with IPFS client functionality to collaboratively share weather patterns from around the world link: https://www.youtube.com/watch?v=J7aDajwBSic label: Watch the presentation + - image: logo-orcestra.svg + title: Share verifiable scientific datasets across institutions + description: | + The ORCESTRA campaign uses IPFS to advance open scientific research by sharing verifiable, accessible datasets across institutions worldwide + link: https://docs.ipfs.tech/case-studies/orcestra/ + label: Read the case study - image: logo-snapshot.png title: Enable data transparency in Web3 description: | @@ -72,12 +78,16 @@ browserCards: link: https://addons.mozilla.org/en-US/firefox/addon/ipfs-companion/ label: Install testimonialCards: + - image: portrait-tobias-kolling.webp + title: Tobias Kölling, Max Planck Institute for Meteorology + description: | + During our 2024 ORCESTRA campaign, the planned local data infrastructure was stuck in customs. We set up IPFS on our notebooks and a Raspberry Pi, and suddenly all scientists could sync, share data, and collaborate on a local network, with automatic uploads back to Hamburg during intermittent internet connectivity. - image: portrait-mauve-signweaver-agregore.webp title: Mauve Signweaver, Founder - Agregore description: | IPFS gives us a set of flexible building blocks for connecting devices and exchanging data. The plethora of IPFS documentation and community members contributes toward our goal at Agregore of making peer-to-peer web apps easy to use. - image: portrait-gabo-h-beaumont-mintter.webp - title: Gabo H Beaumont, Co-Founder - Mintter inc + title: Gabo H Beaumont, Co-Founder - Seed Hypermedia description: | It's crucially important to have a distributed file system in our open hypertext system. IPFS is the missing piece that allows for a truly decentralized and open web. - image: portrait-wes-floyd-bacalhau.webp diff --git a/pages/index.vue b/pages/index.vue index 21ef900c..45118400 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -133,14 +133,14 @@ const { data: latestVideos } = await useFetch('/videos.json', {

- Our most popular implementations are written in Go, Rust, and JavaScript – and we also have support for desktop, browsers, mobile, embedded devices, and more. + Our most popular implementations are written in Go, Rust, and TypeScript – and we also have support for desktop, browsers, mobile, embedded devices, and more.

- - - - - +
+ Developers + Documentation + Read Case Studies +

@@ -151,10 +151,11 @@ const { data: latestVideos } = await useFetch('/videos.json', { Use content addressing to give your data unique identifiers, and use IPFS for large-scale data storage and compute.

- - - - +
+ Deploy Static Apps to IPFS with GitHub Actions + Retrieve CIDs with IPFS + Publish geospatial Zarr data +

@@ -165,11 +166,11 @@ const { data: latestVideos } = await useFetch('/videos.json', { Share files, stream music, publish your website, store NFTs, and much more through hundreds of applications built on IPFS.

- - - - - +
+ Install IPFS Desktop + Install IPFS Browser Extension + Browse IPFS Applications +

@@ -180,9 +181,8 @@ const { data: latestVideos } = await useFetch('/videos.json', { Design storage, compute, encryption, and implementation layers to optimize the way developers use IPFS.

- - - +
+ Browse all implementations diff --git a/unocss.config.ts b/unocss.config.ts index 59961fbc..85ef2f05 100644 --- a/unocss.config.ts +++ b/unocss.config.ts @@ -32,7 +32,7 @@ export default defineConfig({ shortcuts: [ ['btn', 'py-2 px-8 whitespace-nowrap bg-brand-teal text-white text-base font-semibold rounded-full cursor-pointer inline-block focus:outline-none scale-[0.99] hover:scale-100 active:scale-[0.98] transition duration-150'], ['btn-primary', 'bg-brand-orange text-black'], - ['btn-outline', 'bg-transparent text-brand-teal border border-brand-teal'], + ['btn-outline', 'bg-transparent text-brand-teal border border-brand-teal hover:bg-brand-teal hover:text-white'], ['grid-margins', 'max-w-screen-xl mx-auto px-4 sm:px-6 lg:px-8'], ], presets: [ From d8a5348a3eac5da1e93b6ac39c807afc34322af5 Mon Sep 17 00:00:00 2001 From: Daniel Norman Date: Mon, 9 Mar 2026 11:27:45 +0100 Subject: [PATCH 2/3] Fix missing closing block --- pages/index.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/pages/index.vue b/pages/index.vue index 45118400..8f2cd24e 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -183,6 +183,7 @@ const { data: latestVideos } = await useFetch('/videos.json', {
Browse all implementations +
From bd2dd955f5ee5ecdc2d5396a2a1314c5367bb9b5 Mon Sep 17 00:00:00 2001 From: Daniel Norman Date: Wed, 18 Mar 2026 12:44:33 +0100 Subject: [PATCH 3/3] Make button smaller to fix mobile view --- pages/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/index.vue b/pages/index.vue index 8f2cd24e..595b3ac2 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -152,7 +152,7 @@ const { data: latestVideos } = await useFetch('/videos.json', {

- Deploy Static Apps to IPFS with GitHub Actions + Publish to IPFS with GitHub Actions Retrieve CIDs with IPFS Publish geospatial Zarr data