¿Qué quieres aprender?
+Elige un camino para comenzar tu aventura
+{track.description}
+ {track.lessons} lecciones +{track.description}
+ + +From 03860256ee442dab944605e14dc48368c5aff92e Mon Sep 17 00:00:00 2001 From: ArturoAtomplay <64356325+ArturoAtomplay@users.noreply.github.com> Date: Tue, 3 Mar 2026 19:30:23 -0600 Subject: [PATCH 001/125] fix: Improve layout and add privacy policy link --- src/components/CookieBanner.astro | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/components/CookieBanner.astro b/src/components/CookieBanner.astro index 019bdc6..5dc7cd1 100644 --- a/src/components/CookieBanner.astro +++ b/src/components/CookieBanner.astro @@ -12,9 +12,9 @@ const projectId = import.meta.env.VITE_CLARITY_PROJECT_ID
) ))} + From f87e25e5d4779a0f1eba1500cc810ebc41e6bb33 Mon Sep 17 00:00:00 2001 From: wilovy- - Sigue aprendiendo junto a miles de entusiastas de Rust - - Forma parte de nuestra comunidad, comparte tus avances, resuelve dudas y colabora - con otros aprendices y expertos de Rust. + +
+ Miles de personas aprendiendo Rust en español. Resuelve dudas, comparte avances y colabora en el proyecto.
++ Nuestro servidor de Discord es el punto de encuentro principal. Pregunta, comparte tu progreso y conoce a otros aprendices y expertos. +
++ El proyecto es open source. Reporta bugs, propone mejoras o contribuye con lecciones. +
+{value}
+{label}
+Aprender Rust nunca fue tan fácil
+ ++ Lecciones interactivas, ejercicios prácticos y un editor integrado. Sin instalar nada, directo desde el navegador. +
+ Cada lección incluye un editor real en el navegador. Escribe, ejecuta y valida tu código sin salir de la página. +
+| 1 | +fn main() { | +
| 2 | +let curso = "Fundamentos de Rust"; | +
| 3 | +// imprime el mensaje en consola | +
| 4 | +println!("Aprendiendo: {}", curso); | +
| 5 | +} | +
- ¡Aprende Rust sin instalar nada! - Explora lecciones interactivas y experimenta con código en un playground integrado, - directamente desde tu navegador. 🚀 -
+ +Ingresa tu nombre para personalizar el certificado
+Cargando...
+- Solo tú puedes ver este mensaje. - Felicidades por completar esta certificación — no fue fácil, y eso vale mucho. -
-- Rustlings Web es un proyecto completamente gratuito para la comunidad hispanohablante de Rust. - Cada lección, cada ejercicio y cada mejora de la plataforma es construida con tiempo y dedicación - por personas que creen que el conocimiento debe ser accesible para todos, sin importar el idioma. -
-- Tu apoyo nos motiva a seguir añadiendo nuevos temas, mejorar los ejercicios existentes - y expandir la plataforma para que más personas en el mundo de habla hispana - puedan dar sus primeros pasos en Rust — o ir mucho más allá. -
-- Cada contribución, por pequeña que sea, nos ayuda a mantener las luces encendidas - y los servidores corriendo. Gracias por ser parte de esta comunidad. 🦀 -
-- Confirma tu donación / mes: -
- -- Tu donación de $10 - al mes ayuda a mantener Rustlings Web gratuito para todos. -
- - - Donar $10 / mes - -+ completó {track?.title ?? cert.course_id} +
+Expedido el {issuedDate}
+Aprende Rust en Español
+{user.email}
+Aún no tienes certificados.
+Completa todos los ejercicios de un curso para obtener uno.
++ {track?.title ?? cert.course_id} +
++ Expedido el {issuedDate} · A nombre de {cert.name_used} +
+{track.title}
+* zi)T4QL$9j0h#mR#OfZSdp2kuh7paneqMdXPndwPNFu$#){yfhvv42oz)73Qa@dp=d z>xE>`Rd1oq=~WiC6MAc{Lh^j-?Ae~B-gYg=0&!#f0(=)v}ap52EVI1frB7&2Y(!vKO?(>m`{l;@RSmxcXBw z3pjC|;9r}|TROk$j`MXlWJ~kjH*=Hrc0o_;RL_!TEt1tZsleAGXllqKlEf4~IaE4S zZEl*dA-joiX6;ws(n$8f%h6^jQgsL*q3c*)WFsr^kX4tdN!A+hHbd@+pwCq$o5NqJ zpG2zC*`Y5J$<#<>`b3@^b4JHGTjKoOTV4DMheu6iT(AKrEp;2!?yZy^e_I r1KX>{rD0Y>wR5XBMG#O#ClC9nBUM|HJi6@jo3M4MJ5>2*Zz4Ju;><5* z{i=NxPV)^m;mVz@7-!91lC~L|!-j-S{A&j#b}A1bdzHw*yG%J=V=T3v@%P^2UKHY5 z*)b)Vw=&+i@)0sM8d(Zlpw+~yWKlCMb+Z}8ECOZ)|54mjAzG|3E0t7vk0~ls)a>Q( zMUVaLVuvYjWQ59w+J?k~zG%l613iq$LVG25C@wb=gH-a;#46=yFDTVg>*o3IWm=b0 zG!c?42H&TOHPs^9x7tC!xn38BY31)NW_EgB-DrNV&Ai0SoX3e iG6s+ z%S&I6dyZFdk^!96fg~-2Ag#Fn7&WL*b>#;Lt|<8UU!Moy?#WiU4(ubH18k_ChOr!p z`Y(Z3Qh ewmdcu}gKMgv4& z24TE;gA`ntRgQ<1AQ368F!<~&IwO%ns!U g(PXtN6JD-tuct!x z%0aNbvQ8z7&Dh4wO7QW F3ri3Lk-sRWSCFs1kIulCsqRQviZ**(f2Bh~THt{QK-9O#m zz}W8UDt?`cZd5xPzen6u8Dtu9QEEJ%zK0U&;r!AawA{duJ$h&bdqBUEy1a~M3j4Eg zy{bkVfskOQeZ6l&=UA2@7?_0Vepx)vW33b-dj`DbW$luaBu|cZkSt3Va67msa*Nq( zJRR6{M0{Ryuhb>)1ab_&|1MCow!uZIG)Z0JkvgOv5%zqn@NOY(%>%9_59}~!eUKh? zjim`?;QeHWwkriG@-lPul 7! z6J}?wSHYH+p4xNKW2p*#DM3FrOKA&}W8{>AM>^2u6zo56H+!9n4W(J5WE+wSWfh!J z{+MQ$?6*1Qp>AiJ%nXBLk1FXg_2Y81Kh#@~h^`;EKNS67pX=fBGz a|$_M)Z zEjrpTmPanwvhCqw4sC?Mbv*w2Dl7WI?!>(Ofa()4O@{>tK%9dsZ*`Ozv499Sf(yfl zg}MY@aufmr6hH~yL4Y9m=H)tkJ9M~MK=506Jdx)FXn-{!!$6tTqa|#=V2cHiC#egj z{)irjs1J6YTEmrO(^0CU;pO14mKsq{P=Q8vPf+uYm6Gw4g)COWOId}{Op^gdY lne{uccxWxOx=T8g~-r35}r zPu~OmQ#BK-lO=41`H=H=ky_dYqT2?+nQm@hA(u^}-Hbx^@%-`A-3JiLMFP)dGKR|O zvA5vz{b9m>3*k@r4}=9Ad2ET3r)GAzZs;%0G{gt44g}5utJl BWtlT#DnZEIHXEXAmEK}~5uU=34Agq`%P-blEp 0E19$B4C)vq4BPY9Z zHd4u)-k#+8)h**}{8i0OEV{;m=Jf_+nD@hk-dITOIW+YVF6X-Oi_-;?%Rd)xC)ei> zfu0*bBa6iS?y5pbXInZK^DPWX68spVC(7F~!>!A@D&?aYvah9+PPu4|*7dSdD0^#d zWqm~U=#AdvinH`?GSU*p-&$D64v1&u(AWomakVYTO(~+Vkjc$9+IX94V_N3X)AK`w zlTAbY+2G-$>3cjznP{N>7VTF*{)(wSKni-rJ$VEdjWv-D7mdXajRgn{81_O>H|!-C zDDJ8Ka98}EHAC6405ju6D53peD5aoR-^cndnWQrigPH2x|2#Cqg8SMB%$R#jr_UM; zy}V&Z1+d0L0hb(OjApfI0SGC?l_yed_A6RyG^?G}#Q>4C;zMNOUTx%Lj? 9W6oS< JfZ?6WJzj^6I_31{Ad{ryRLSDAeRiOzg-v;4MhdtFs(C4UFk zk)e1-bZ#*mt$F?N!>3nTN>d(jNmrqW?aw;iO*jeWV6A*=l@louu$@;AD645*A|iR` z b47Sy7SxuUhe3FpGo)RuCG4&Tj!R{-O^;Td^?MWjY7vSB z#*{kq{D+(Ei&yd&u_qB;#tRJ=im{v`VG_g3rrjl$8E%<9dpuoD>Kr%kK5o8xVi@_v zKn#uC&T&xY6_3pkVw `9jjZfb|yY6%%tl22U|hPdLVTghV@jIps$T z*GS!HKoXIE?TK0)VBnU>|6IA;lV9%%;}YN18=JN>WP$AqSb{N(WTMsd99em>h?kR1 z_~bS{A`>POCtb~lhbo>3cm{$zi>VlwSr-KDB_0-|Dbs0J2M!*IJ6hI<-?J;Fcbgk$ zd2ym&2YX;}*r%1KSLF?STL*7~uM_E<^=$ObT-RN%@wJMN_vGugrbn!~(OB4C_%3Oz zltzc$_2q4wU1I9BvgnP)=-KQZ;e)fDrY(|xF`eSW&@;Y_>EihuE=%_Sf~C=5gdBGD z97Q=;Q}3;Kz9UYv$3Pjb mjb!$fSxKqeR&&j4dNVuYViYZ2iS#j3#`Wx46^fy^>g!qAiLa~ 3prVD1{4LQ2D3COPvys|%(p@qzupG-ODxche7II)5r2bk z+hI%~R)uDtk1uiV46F{Fw$iRYUpMbq$1uiDcDH+X&TWY?y5({a$zWRd`A7a4&DsNq zZrW?iS?5)i+Rf<3>mC0BqVd)rgTB}wr`4+(KW^Z^x{@#KZ;X8a(QLLa&eZdd-G=|L zlvCL$NxB`Cn!9_hX<|dxq#t`N(cFrDl{l++2CUn`xMnPS!?Vwyb5(Y7+oL_(=_Sf= zLaxjw&8GZ%gEQ U6Mm^&rb&wkqq{8vBGh0S-2xChtS*ttA%YAU#T?H8?;oS{!d!TsI2z+ zonIXjC<%Q`!zEp4XN8@`bcdQVh4Q{loep*smP}YJMsnvC$lk>h&k}u;ytPd)!mdtT zRfu$!<~4J?iiEn|l`k4DP0hYDVq9)K>e36|;6YQ5|QyvQDpmViMrqeT6T^lJ330 zi@AHLk|m|6kTmH|u)L`ko5R&3KDJuYq)U`B<4JdZcsG+}wfb|=VPfFNnZNwV8TCf> zYL3`+q3=(bG_1N5D|Ty!!IIG@X!a3|gMDAyjW^cL$WHcK&>aT8PsH8U)eYxm^o2uu zcDdYU=ohA2Kk4g#i;$L1npc?FQASJ;c=OHBu2i1PHUE5DU9}tQYP*QjuA@80qNTs_ zi!5XmSk5Ifeze=xnU|8JQ9B{y>*){k7_aigy|g7P6`evQPd(`)^3gTZD)helS{!D< zNw<5Ag5v17sbM85j^+LfE$^ SKf&R+RcmlaoPiyQ>n^z5Yrhb%%2AQ`h=uHK$tQN z_~{JznQeB1I8OtB=N2F}kO4H17)V9bg)$cB=Vk-ZFgn _N!vASBN1s6X>i zqh?X@00K=4`3ewd=sRACh>e1`vWpWrLl}iAUsjm|> {o0&)@uS!eaBEHeuH z*;r*vrF!)dy~%I}I_CA5Tg7*=f`Q-ie&$Kx6b;pW+MK>^&wc>StV MOZ z@MDlFe=!=UV%YmKm%i&0TW+zCO-`Chg}Z_IK^9%~2mPqG`b}uLLaQ|v=~;;6rz{1k z6R|pR*=0TpdD7MbXj<(ZR-^uV;ir4zOne-iut_1j5cxZ{AnmJQNS{@&1*4P5U0gPX z{JD4jwHU&2;bxkH`-|_2+1p%#M~t<%N)Zr&<-O(a@x1&3#D*2sq2b#|?`{iqvM<2- zT~<+Kvd2qy2*L`Zg<$SQcKYX{pE-~28nwzRx)l){B0U+OUMJQtn#rjOh>8) xKb&(jp z=b_aRsi7)U=EJhp%R14IigFl)FUZ%=V@{g!`ik(=mP;^DFvY2jS~-mKw&<{8vvzwT z1zgA4nsaf5GaApYW%nNMfJ}3mh;`)Ni=?{>^2Oqgjl(6(%sM;f?x|=)e)$}pej=Uh zFhiNw< VSime C#LZ(hLw{&?VVA{w+o zDP7t$YUqfOGmQYW=ZG2Vfj&VQVaFaVI=0S}lZ6=3u22Z8!e|q|yfE0ZSzIC3uY@u> zR37S?gX4Dcy=pkkc^LcdMaq?fdJ4qDD=L)%J}ZAXKk_vbx)7Q^o$IZftaaaBdV$ws z*)7bc*&C0_veB((!KDMqEUDUy+0HS$s4EA|J =RFf8lO#uA =%;pww6(xI0n0o*|_pV&$39+r-%< YQza zATS*{wrzx9Wz+mPn)*aF5lG+DOc4_5uU#40yE{M=jZl!k-dIs>W-=2&IP9J``@Nf( zmukelxC35oN9cT5S#2eQQ}N*Zm|E4DS}fElcyaK`U8l+9sb4+F4z#c7km&e5%lY{L z-COV+Y}=c@aBT>= $T76BHmMi9B)uv$Wi5gYh4m1m+pQOsCtb0IHwd=|Z? zhaYkrGK*{(;lV93`;5PbGO<)ir&r6@!z G%8a4BBp_OV+(FtHwZqd0NGLe!%=K<|!hk+C4%#ID<`DZHb-DlUN zVJ$iV!#6(?=@<;#Z2(I_qTC&%Mf>bAJO$XvS=z#*wFnYHG;&BaFL$NdzVXQ)iilDp zq#Y{vD}4?VYzFKOZ+x_$a23#qTO>IsckM(zR%gvr-@_|&19LF1pRhxw=`1T&r(4uH z)%@>1?tg 1L!HKZ!x0? zL0Tf`2HqlM$^jjc++aX<`vH0!R6tkf9K#bNiq#Sv5~d?|S`-O=u2I7i6i9(X#AgwD z-lv}-@!<*^WDxFMK#>la*ej9G!mk7r9iN!60f$9egc<*`b^hHU{8Hu7R?|m#LmsUb z%HCC}{NQ sFZ$sd1tgFuA+vqsxs2bxW<39u(ZK;rKZ8sGt7H{|Hz(>~g9AQYgD-xt3LW5Q zw%42bJ$@2$X+J{2!R^e^vUw#Dm|N{mU-o|Ci9AJ q$@VrT_1`E{cb*wNX_$uYym(AWv$0+uzj zftZ3FowCdvosEsbj*cI)OpI+!z-~mwR)!F3Wr&%Lp_8)%7}&+q5n=*Xd&~#o }F?W2$TkB=lrX1(!YKq{U!gOlHvV3$^O(0Z1Vr5Q22(9 zj$nsJ*%{0Y9nHZes!Ea!kLa8Kl1lIY22_6);rIu1k2MHb0)q?7-?4KO_(K3vX9o!B zFA2aVJfwds|CfFJ*LnSk@_(a{?%y)}m+SuD3-Ks817N0x|3)AFe?_0avigV7{8iSk z0wf+w`e*h0zo(7uqk5!|(*0r6))1RNXbRM%p_QMRDX?QKKsP@NfNxHQHpXDdH*R!p z)^ mHHD{qS%5g)9!a*AvI&gw0%yR<+JNuW`jy^yLTu=Hvg8R zS^opn{EtE*-b#egDGeE$cEvf^n>m`)LCN$<5OPz~)n2miKbK{N{Iw@<<}Z2J{)Wnb zN{YYI|7{Q7KLIG>64dNaICte6A=;4E^wp)z?Xi(8WT6bgGQ_!^2bSOlfxi9e<^R}K z_&@dX|70+b9+dRx;xo+ty!bZL^p7LUU$WWSfo;Gh7J$n)v<5qY9UNON{~043-~OQy z{eP#?KW_oT%Acw*4Zmahpk)P}fwsxBdt4_#HM%*h04&Cg`E$A09!1**7 iXnTRA&EI;pprK#(zXaKd|GY6Z42b27)@xHYi>RI&LLKLAJd zM;!W(wMrV2@b%*&2DEv!;uKrGJSTHefm_IqYC1fGh?j@lhs4;<&_wF7%zykrfBjQf z%3s2=7+d|v@cPR<0mlj410D4!Yu &8k-Tf zDW{R45xa?z)33br&4B80FmwWTp?YL=>o48RM9dAH#1&LrZ5_-QjBRb4fM{*#>}1aH zSflz5j;2fu9Gncy50JkC-TzZe{omQm`rpM=2V)1Yp%d6d|1a<7`2K(1_WuWM@sF%& z{yQ`OC$IjraWVf@`)$0R?;}GB%6h(y<~0c4)~4!CHhUhtmxqy-@A)HN>i;g^zij-^ zY!L@3eM)exUsdOi7l)tozO>4ggr9nV)|_j`hNmZVy8llaW{$vK;DC7lrcV6+X7wNt z%f+Ae`v=)rj2-`@{r+VzfC01gJR0!WdrgGKOehMx7yg V zR@7OJH$U2@8YOPozUW;G!7g=*F`>XC(ga8ZT%bTfA;W=~q?ieq@Ze!oVPTNb)xkz0 z|7iXJE<;3^8HMTT<8M!qVP(KJj?B-PP#;f`kP%cIoWXVwW9Fw!h>us`F`-qJnTT;w zSlF4^nAw@xnYfwQwSZHOzfRe-m=yj^a%MC@mS4HS%L86cSn_YBDcd?2GQVIVdHfv) z8Sl^1NFRkD6_Jr7h1ifjCSlTK!h}Zv)EVN3hJt_c>i`A{0p>Lb_Tq;(mBMZ^w>t%E zWy(fYGwtv!7fSkTPv+G1`;3{wXiJ&(jEWsY4VA#a=gfq)-HNWSc2EOETcAtXTx-&$ zo3h>xGrj%BgbYYPgb4-p01M3o`Xvt$87v+Xjvtm5iKXdy>}I*}JMUyoQ IXg1i8avuC5j~dv3KoY6>mT{R!2Wea{>RU#usE<-x8Xk-4krZ9Z17|B zltp@$Mcyi|{i-V>v`5)tVW1KG{$0%j^Dv-5LR$J9oK2qB(NnyX(@e!&n5D_w0wW`{ z{uI}#PwO`&pC~Y7
<-(c <<9Cw@?KhGdpX=%!)6S(eP-`aPs~C5*x<^zv(&nAd?Z?rPnVmZLwacJ#2j 0L=c clz>rs3mDSt7_Yv0WD=81Kg&9bvUnZcD)iCoP3AWhBf+m3 zj!Cr`uUG6T*6bH`@XuZo=H cQKLw4ml>lf0!-|GQ5(lt<%3m6lP`?CT |8d$?t$H+vOMdVT|f$cdEJ$lb&f=Jk6^@$G=S(1c1P7njOB}GWHg$@(fAge|EXUh z5?XWj3CCs`V-Ej~Z_J@ Bp7?%yRFFMMLYs7MrP)#VuA`Wts;V=lHC|xlJ6JC?dQb=~@_cm8p}2Zu^j! z7CWT|jP>ph-sX61(3Q5(Fi;? d86w*Z`g-^NY|RM z7HjAWj{tjL(ftrF<&nZo=6Xj#S7pO=!?awv4?8D6d->-=HzU=t%k{mYIE-To%+ 3M65(v%Z9xVr#rC__y#~^FMX9}sV0~8tJ)oagZxTIR7-_`QJtel4x zRQix (xy(YY}c$uE8^O$HiuWkQ&l`ZiakUSh?4oO*pmn z^ujMyl2eIgzUm}m_^Qso&rBBjY#zK0d04A#Op0lEkdk)Rb)-9Z({I{lNNK;PP(U{R zLXqQbSdm&pt{dX>dDUYlW!5X~O{P3aOqqs!vdW6W`<#iz{)sNmI=-Oq0#&6$lD0Bd zeG;C#CyL>Vq0{4Dpb^MtmYi7T_|I(=n=cTF2sZ1q>^PPtsWH;B+iioptXCTmsUQ4< z-Be2rgJ>E(x6|$v9)M|rMz!<)l-r{jkIh(3n(BWvVt;@CM&LIBzY+M2z;6V8Bk&u6 z-w6Ch;5P!l5%`V3Zv=iL@Ed{O2>eFiHv+#A_>I7C1b!p%8-d>l{6^q60>2UXjlgdN zek1T3f!_%HM&LIBzY+M2z;6V8Bk&u6-w6Ch;C~8%a}A;0J -YNM za?$tp=fIL6t>03|8OfoK;EivBW%t9w)t;~B$}RcBT?#8y@`Faq!>u*S^$n=^3AsgD z(LLYZ)gj*^H;5F53tk&GZPKjmf?J4O!FDx$M^7Kh4b%i>vVT8*fpx9})n@-vz>@1G z+yEbhnkFysfD`FO8oayGV&^Ay@L?D$O%m93%FKSa4Q{%k0-7uDfdQ28*5j!}M+Qg! zV47ajd9+Szcaep~6M?)B$yA+<