@@ -14,21 +14,21 @@ def index_links() -> rx.Component:
1414 return rx .vstack (
1515 title ("Comunidad" ),
1616 link_button (
17- "Curso gratis de Desarrollo con IA" ,
18- "Apúntate a mi curso 100% gratis, online y con certificado " ,
17+ "Máster de Desarrollo con IA" ,
18+ "Acreditado con Titulación Universitaria " ,
1919 "/icons/logo_symbol.svg" ,
20- "https://mouredev.link/cursodesarrolloia " ,
20+ "https://mouredev.link/masterdesarrolloia " ,
2121 True ,
2222 Color .GREEN .value ,
23- animated = True
23+ animated = True ,
2424 ),
2525 link_button (
2626 "mouredev pro" ,
2727 "Estudia programación de manera diferente" ,
2828 "/icons/pro.svg" ,
2929 const .PRO_URL ,
3030 True ,
31- Color .ORANGE .value
31+ Color .ORANGE .value ,
3232 ),
3333 link_button (
3434 "Cursos gratis" ,
@@ -50,13 +50,13 @@ def index_links() -> rx.Component:
5050 "Discord" ,
5151 "El chat y los grupos de estudio de la comunidad" ,
5252 "/icons/discord.svg" ,
53- const .DISCORD_URL
53+ const .DISCORD_URL ,
5454 ),
5555 link_button (
5656 "YouTube" ,
5757 "Cursos y tutoriales sobre desarrollo de software" ,
5858 "/icons/youtube.svg" ,
59- const .YOUTUBE_URL
59+ const .YOUTUBE_URL ,
6060 ),
6161 title ("Newsletter" ),
6262 newsletter (),
@@ -65,34 +65,31 @@ def index_links() -> rx.Component:
6565 rx .vstack (
6666 title ("Destacado" ),
6767 rx .flex (
68- rx .foreach (
69- PageState .featured_info ,
70- featured_link
71- ),
68+ rx .foreach (PageState .featured_info , featured_link ),
7269 flex_direction = ["column" , "row" ],
73- spacing = Spacing .DEFAULT .value
70+ spacing = Spacing .DEFAULT .value ,
7471 ),
75- spacing = Spacing .DEFAULT .value
76- )
72+ spacing = Spacing .DEFAULT .value ,
73+ ),
7774 ),
7875 title ("Recursos y más" ),
7976 link_button (
8077 "Git y GitHub desde cero" ,
8178 "Aquí puedes comprar mi libro en formato físico y eBook" ,
8279 "/icons/git.svg" ,
83- const .BOOK_URL
80+ const .BOOK_URL ,
8481 ),
8582 link_button (
8683 "Twitch" ,
8784 "Transmisiones sobre programación y desarrollo" ,
8885 "/icons/twitch.svg" ,
89- const .TWITCH_URL
86+ const .TWITCH_URL ,
9087 ),
9188 link_button (
9289 "YouTube | canal secundario" ,
9390 "Emisiones en directo destacadas" ,
9491 "/icons/youtube.svg" ,
95- const .YOUTUBE_SECONDARY_URL
92+ const .YOUTUBE_SECONDARY_URL ,
9693 ),
9794 # link_button(
9895 # "Libros recomendados",
@@ -116,23 +113,17 @@ def index_links() -> rx.Component:
116113 "Invítame a un café" ,
117114 "¿Quieres ayudarme a que siga creando contenido?" ,
118115 "/icons/coffee.svg" ,
119- const .COFFEE_URL
116+ const .COFFEE_URL ,
120117 ),
121-
122118 title ("Contacto" ),
123119 link_button (
124120 "MyPublicInbox" ,
125121 "Respuesta rápida y con preferencia" ,
126122 "/icons/checkemail.svg" ,
127- const .MYPUBLICINBOX_URL
128- ),
129- link_button (
130- "Email" ,
131- const .EMAIL ,
132- "/icons/email.svg" ,
133- f"mailto:{ const .EMAIL } "
123+ const .MYPUBLICINBOX_URL ,
134124 ),
125+ link_button ("Email" , const .EMAIL , "/icons/email.svg" , f"mailto:{ const .EMAIL } " ),
135126 width = "100%" ,
136127 spacing = Spacing .DEFAULT .value ,
137- on_mount = PageState .featured_links
128+ on_mount = PageState .featured_links ,
138129 )
0 commit comments