- ID de l'analyse :
- 577f795e-8bee-408e-8fee-1eabb2676e70Terminée
- URL soumise :
- https://zupzup.org/
- Fin du rapport :
Liens : 1 trouvé(s)
Liens sortants identifiés à partir de la page
Lien | texte |
---|---|
https://github.com/zupzup | github |
Variables JavaScript : 3 trouvée(s)
Les variables JavaScript globales chargées dans l'objet fenêtre d'une page sont des variables déclarées en dehors des fonctions et accessibles depuis n'importe quel endroit du code au sein du champ d'application actuel
Nom | Type |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
Messages de journal de console : 0 trouvé(s)
Messages consignés dans la console web
HTML
Le corps HTML de la page en données brutes
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="title" content="zupzup">
<meta name="description" content="A blog about the joy of Programming">
<link id="feedLink" rel="alternate" type="application/rss+xml" title="RSS" href="/index.xml">
<meta name="referrer" content="always">
<meta name="keywords" content="programming, golang, rust, go, javascript, development, software, opensource, oss">
<meta name="author" content="Mario Zupan">
<link rel="canonical" href="/">
<title>zupzup</title>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
<style>
html {
font-family: sans-serif;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
hr {
width: 200px;
margin-top: 40px;
margin-bottom: 40px;
}
body {
margin: 0;
background-color: #fafafa;
}
a:link, a:visited, a:hover, a:active {
text-decoration: none;
color: #008080;
}
#contactmobile {
display: none;
}
#footer {
display: flex;
flex-direction: column;
background-color: #008080;
align-items: center;
justify-content: center;
color: #fff;
font-size: small;
}
#footer a {
color: #fff;
text-decoration: underline;
}
#footer a:hover {
color: #eee;
text-decoration: none;
}
#header {
display: flex;
width: 100%;
background-color: #008080;
color: #fff;
}
#header #header-inner {
display: flex;
width: 740px;
margin-left: auto;
margin-right: auto;
background-color: #008080;
color: #fff;
}
#header a {
color: #fff
}
#header ul li{
display: inline-block;
}
#header #logo {
flex: 1;
padding: 1em 0 1em 0;
vertical-align: top;
}
#header #logo #logotext {
display: inline-block;
margin-left: 5px;
}
#header #logo #logotext small {
font-size: small;
}
#header #logo strong {
display: block;
font-size: 1.2rem;
}
#header #menu {
flex: 2.5;
padding: 1em;
vertical-align: middle;
margin: auto;
text-align: center
}
#header #menu .menuitem {
width: 70px;
}
#header #menu .menuitem a, svg {
display: block;
text-align: center;
font-size: 12px;
}
#header #menu .menuitem div {
margin-top: 2px;
}
#header #contact {
flex: 0.5;
padding: 1em 0 1em 0;
vertical-align: middle;
margin: auto;
text-align: right;
}
#header #contact svg {
width: 40px;
height: 40px;
display: inline-block;
fill: white;
}
#taglist {
list-style-type: none;
}
#pagetitle {
margin-top: 5px;
}
#content {
max-width: 740px;
margin-left: auto;
margin-right: auto;
padding: 1em;
background-color: #fafafa;
}
#content p, li, table {
font-family: medium-content-serif-font,Georgia,Cambria,"Times New Roman",Times,serif;
font-weight: 400;
font-style: normal;
font-size: 21px;
line-height: 1.58;
letter-spacing: -.003em;
color: #000;
word-break: break-word;
word-wrap: break-word;
text-align: justify;
}
#content p {
text-align: justify;
}
#content .short p {
text-align: justify;
word-break: break-word;
word-wrap: break-word;
font-weight: 400;
font-style: normal;
font-size: 18px;
line-height: 1.58;
letter-spacing: -.004em;
margin: 10px 0 10px 0;
}
#content .short h2 {
margin-bottom: 10px;
font-size: 22px;
}
#content .short .tags, .readmore, .datettr {
font-size: 14px;
}
#content img {
max-width: 500px;
}
.old-articles-link {
text-align: center;
margin: 1.5rem 0;
}
code[class*="language-"] {
font-size: 16px;
}
@media only screen and (max-width: 768px), screen and (orientation: landscape) and (max-width: 640px) {
#header {
display: block;
}
#header #logo {
display: inline-block;
max-width: 10%;
padding: .5em 0 .5em .5em;
}
#header #header-inner {
display: flex;
max-width: 740px;
width: auto;
margin-left: auto;
margin-right: auto;
background-color: #008080;
color: #fff;
}
#header #logo #logotext {
display: none;
}
#header #menu {
padding: .2em 0 .2em 0;
display: inline-block;
width: 80%;
text-align: center;
}
#header #menu .menuitem {
width: 55px;
}
#header #menu .menuitem svg {
width: 55px;
height: 30px;
}
#header #contact{
display: none;
}
#content p, li, table {
font-size: 18px;
word-break: break-word;
word-wrap: break-word;
line-height: 1.58;
letter-spacing: -.004em;
text-align: justify;
}
#content .short p {
font-size: 16px;
}
#content h1 {
font-size: 1.4rem;
}
#content h2 {
font-size: 1.2rem;
}
#content h3 {
font-size: 1.1rem;
}
#content img {
max-width: 300px;
}
code[class*="language-"] {
font-size: 14px;
}
#content .short h2 {
margin-bottom: 10px;
font-size: 1.2em;
}
#contactmobile {
display: flex;
background-color: #008080;
}
#contactmobile svg {
width: 40px;
height: 40px;
fill: white;
}
}
/* Background */ .chroma { background-color: #ffffff }
/* Error */ .chroma .err { background-color: #a848a8 }
/* LineTableTD */ .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; }
/* LineTable */ .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; width: auto; overflow: auto; display: block; }
/* LineHighlight */ .chroma .hl { display: block; width: 100%;background-color: #e5e5e5 }
/* LineNumbersTable */ .chroma .lnt { margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f }
/* LineNumbers */ .chroma .ln { margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f }
/* Keyword */ .chroma .k { color: #2838b0 }
/* KeywordConstant */ .chroma .kc { color: #444444; font-style: italic }
/* KeywordDeclaration */ .chroma .kd { color: #2838b0; font-style: italic }
/* KeywordNamespace */ .chroma .kn { color: #2838b0 }
/* KeywordPseudo */ .chroma .kp { color: #2838b0 }
/* KeywordReserved */ .chroma .kr { color: #2838b0 }
/* KeywordType */ .chroma .kt { color: #2838b0; font-style: italic }
/* NameAttribute */ .chroma .na { color: #388038 }
/* NameBuiltin */ .chroma .nb { color: #388038 }
/* NameBuiltinPseudo */ .chroma .bp { font-style: italic }
/* NameClass */ .chroma .nc { color: #287088 }
/* NameConstant */ .chroma .no { color: #b85820 }
/* NameDecorator */ .chroma .nd { color: #287088 }
/* NameEntity */ .chroma .ni { color: #709030 }
/* NameException */ .chroma .ne { color: #908828 }
/* NameFunction */ .chroma .nf { color: #785840 }
/* NameFunctionMagic */ .chroma .fm { color: #b85820 }
/* NameLabel */ .chroma .nl { color: #289870 }
/* NameNamespace */ .chroma .nn { color: #289870 }
/* NameTag */ .chroma .nt { color: #2838b0 }
/* NameVariable */ .chroma .nv { color: #b04040 }
/* NameVariableGlobal */ .chroma .vg { color: #908828 }
/* NameVariableMagic */ .chroma .vm { color: #b85820 }
/* LiteralString */ .chroma .s { color: #b83838 }
/* LiteralStringAffix */ .chroma .sa { color: #444444 }
/* LiteralStringBacktick */ .chroma .sb { color: #b83838 }
/* LiteralStringChar */ .chroma .sc { color: #a848a8 }
/* LiteralStringDelimiter */ .chroma .dl { color: #b85820 }
/* LiteralStringDoc */ .chroma .sd { color: #b85820; font-style: italic }
/* LiteralStringDouble */ .chroma .s2 { color: #b83838 }
/* LiteralStringEscape */ .chroma .se { color: #709030 }
/* LiteralStringHeredoc */ .chroma .sh { color: #b83838 }
/* LiteralStringInterpol */ .chroma .si { color: #b83838; text-decoration: underline }
/* LiteralStringOther */ .chroma .sx { color: #a848a8 }
/* LiteralStringRegex */ .chroma .sr { color: #a848a8 }
/* LiteralStringSingle */ .chroma .s1 { color: #b83838 }
/* LiteralStringSymbol */ .chroma .ss { color: #b83838 }
/* LiteralNumber */ .chroma .m { color: #444444 }
/* LiteralNumberBin */ .chroma .mb { color: #444444 }
/* LiteralNumberFloat */ .chroma .mf { color: #444444 }
/* LiteralNumberHex */ .chroma .mh { color: #444444 }
/* LiteralNumberInteger */ .chroma .mi { color: #444444 }
/* LiteralNumberIntegerLong */ .chroma .il { color: #444444 }
/* LiteralNumberOct */ .chroma .mo { color: #444444 }
/* Operator */ .chroma .o { color: #666666 }
/* OperatorWord */ .chroma .ow { color: #a848a8 }
/* Punctuation */ .chroma .p { color: #888888 }
/* Comment */ .chroma .c { color: #888888; font-style: italic }
/* CommentHashbang */ .chroma .ch { color: #287088; font-style: italic }
/* CommentMultiline */ .chroma .cm { color: #888888; font-style: italic }
/* CommentSingle */ .chroma .c1 { color: #888888; font-style: italic }
/* CommentSpecial */ .chroma .cs { color: #888888; font-style: italic }
/* CommentPreproc */ .chroma .cp { color: #289870 }
/* CommentPreprocFile */ .chroma .cpf { color: #289870 }
/* GenericDeleted */ .chroma .gd { color: #c02828 }
/* GenericEmph */ .chroma .ge { font-style: italic }
/* GenericError */ .chroma .gr { color: #c02828 }
/* GenericHeading */ .chroma .gh { color: #666666 }
/* GenericInserted */ .chroma .gi { color: #388038 }
/* GenericOutput */ .chroma .go { color: #666666 }
/* GenericPrompt */ .chroma .gp { color: #444444 }
/* GenericStrong */ .chroma .gs { font-weight: bold }
/* GenericSubheading */ .chroma .gu { color: #444444 }
/* GenericTraceback */ .chroma .gt { color: #2838b0 }
/* GenericUnderline */ .chroma .gl { text-decoration: underline }
/* TextWhitespace */ .chroma .w { color: #a89028 }
.chroma .err {
background-color: transparent;
color: #272822;
}
.chroma {
overflow: auto;
min-height: 30px;
}
</style>
</head>
<body>
<div id="header">
<div id="header-inner">
<div id="logo">
<a href="/">
<img alt="logo - small dude in pixel art" id="logoimage" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAC2UlEQVRYR72YS5LTMBCG5evEj+IE2TCV7FnwCHAJCnKJoTgFhBkWrJPFsMgeisJyVhyBMyC6W2pHVuxRy9ijqlRspa3+9He3JCdT8WbAJIOP/81PYT+20CY+6oAFD3jfAOhsTJOMfTGu5KGxQKGKokk9BBCCSPwQsMTwfxVKUmoUkPn1qUd+y51Vr4ZCI/GVplALMlRzDiWrXvZBTQ/kezH1TmXl5sKxqUE9EKsHajogY1w4Mjsm3evPShUvbJjCfuirwabqKjU30A0APR8E0vBL2VVwQqAa1GiHGxjXqWhjaBQCYfOgpgMiFxoUiTYIpVsktLuYA8imTQeobwuztI1TyApmWCGROpSP0Um7GGgCipkbVUBeWVtIMZdjggdbjJgHNjRa30I1DeOjIkXx7AIGK9JVociXyIi0x3A0t53J5vnTC0IERzBsWkMmAVBZluJoSIEoIZrmy4BE5+0uz88weZ63a5Q0bElATNMPZhTDoCpN04BSBT1yPB7VcrkUqZQCZMsm0sJVfb/fq/V6Lc6jZKDdbqc2m+4ehn3Ywv7D4aBWqxX9Jk3sUUC+SAjBQKF4VVVBGPN5gTA3/IYOsa/93gLAX2uhr+0GklJpyQpxjpxOJ7VYLCgUCITX2LA/f2tVQaDZFeIZh0DomKuLIVi5WXMIB/fDxqHiMLKCWPLBwkhckSKNGwQD2C0T1pmYQhhKBEpdHKPEfUCsUl8OcZgQqK5rWhz5RDm1QnAEwb0MdKdN1FYQh4a/uc/goc7WGH2ykg7+UQGiBp5C7ZkooyPGORx8zcpxmPBFgCjsUVbkS2TkQ/F1CIQKYW5hP+9hKaHicVOB+Dk4H3VDxtXl55w7dojVSTIcSu6gv+82adJJxn7oHj15E2X5+fVD8qRHA11t7fv9n9/fFTrmez90d9f0np/kI8nYV+hq+9EB/SCgx+/sPb1t0P9pRn17/3p2oOgBrSeOSZP+B7Q7ZDSN5kdTAAAAAElFTkSuQmCC">
<div id="logotext">
<strong>zupzup</strong>
<small>I ♡ Programming</small>
</div>
</a>
</div>
<ul id="menu">
<li>
<div class="menuitem">
<a href="/">
<svg width="70px" height="35px" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>home</title>
<g id="Octicons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="home" fill="#ffffff">
<path d="M16,9 L13,6 L13,2 L11,2 L11,4 L8,1 L0,9 L2,9 L3,14 C3,14.55 3.45,15 4,15 L12,15 C12.55,15 13,14.55 13,14 L14,9 L16,9 L16,9 Z M12,14 L9,14 L9,10 L7,10 L7,14 L4,14 L2.81,7.69 L8,2.5 L13.19,7.69 L12,14 L12,14 Z" id="Shape"></path>
</g>
</g>
</svg>
<div>Home</div>
</a>
</div>
</li>
<li>
<div class="menuitem">
<a href="/about/">
<svg width="70px" height="35px" viewBox="0 0 12 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>about</title>
<g id="Octicons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="light-bulb" fill="#ffffff">
<path d="M6.5,0 C3.48,0 1,2.19 1,5 C1,5.92 1.55,7.25 2,8 C3.34,10.25 3.78,10.78 4,12 L4,13 L9,13 L9,12 C9.22,10.78 9.66,10.25 11,8 C11.45,7.25 12,5.92 12,5 C12,2.19 9.52,0 6.5,0 L6.5,0 Z M10.14,7.48 C9.89,7.92 9.67,8.28 9.47,8.59 C8.61,10 8.22,10.65 8.02,11.82 C8,11.87 8,11.93 8,11.99 L5,11.99 C5,11.93 5,11.86 4.98,11.82 C4.78,10.65 4.39,9.99 3.53,8.59 C3.33,8.28 3.11,7.92 2.86,7.48 C2.44,6.78 2,5.65 2,5 C2,2.8 4.02,1 6.5,1 C7.72,1 8.86,1.42 9.72,2.19 C10.55,2.94 11,3.94 11,5 C11,5.66 10.56,6.78 10.14,7.48 L10.14,7.48 Z M4,14 L9,14 C8.77,15.14 7.7,16 6.5,16 C5.3,16 4.23,15.14 4,14 L4,14 Z" id="Shape"></path>
</g>
</g>
</svg>
<div>About</div>
</a>
</div>
</li>
<li>
<div class="menuitem">
<a href="/projects/">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="70px" height="35px">
<title>projects</title>
<g id="Octicons" stroke="none" stroke-width="5" fill="none" fill-rule="evenodd">
<g id="tag" fill="#ffffff">
<path d="M7.875 2.292a.114.114 0 0 0-.032.018A7.239 7.239 0 0 0 4.75 8.25a7.248 7.248 0 0 0 3.654 6.297c.57.327.982.955.941 1.682v.002l-.317 6.058a.75.75 0 1 1-1.498-.078l.317-6.062v-.004c.006-.09-.047-.215-.188-.296A8.749 8.749 0 0 1 3.25 8.25a8.738 8.738 0 0 1 3.732-7.169 1.547 1.547 0 0 1 1.709-.064c.484.292.809.835.809 1.46v4.714a.25.25 0 0 0 .119.213l2.25 1.385c.08.05.182.05.262 0l2.25-1.385a.25.25 0 0 0 .119-.213V2.478c0-.626.325-1.169.81-1.461a1.547 1.547 0 0 1 1.708.064 8.741 8.741 0 0 1 3.732 7.17 8.747 8.747 0 0 1-4.41 7.598c-.14.081-.193.206-.188.296v.004l.318 6.062a.75.75 0 1 1-1.498.078l-.317-6.058v-.002c-.041-.727.37-1.355.94-1.682A7.247 7.247 0 0 0 19.25 8.25a7.239 7.239 0 0 0-3.093-5.94.114.114 0 0 0-.032-.018l-.01-.001c-.003 0-.014 0-.031.01-.036.022-.084.079-.084.177V7.19c0 .608-.315 1.172-.833 1.49l-2.25 1.385a1.75 1.75 0 0 1-1.834 0l-2.25-1.384A1.752 1.752 0 0 1 8 7.192V2.477c0-.098-.048-.155-.084-.176a.068.068 0 0 0-.031-.011l-.01.001Z">
</path>
</g>
</g>
</svg>
<div>Projects</div>
</a>
</div>
</li>
<li>
<div class="menuitem">
<a href="/tags/">
<svg width="70px" height="35px" viewBox="0 0 14 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>tags</title>
<g id="Octicons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="tag" fill="#ffffff">
<path d="M7.73,1.73 C7.26,1.26 6.62,1 5.96,1 L3.5,1 C2.13,1 1,2.13 1,3.5 L1,5.97 C1,6.63 1.27,7.27 1.73,7.74 L7.79,13.8 C8.18,14.19 8.81,14.19 9.2,13.8 L13.79,9.21 C14.18,8.82 14.18,8.19 13.79,7.8 L7.73,1.73 L7.73,1.73 Z M2.38,7.09 C2.07,6.79 1.91,6.39 1.91,5.96 L1.91,3.5 C1.91,2.62 2.63,1.91 3.5,1.91 L5.97,1.91 C6.39,1.91 6.8,2.07 7.1,2.38 L13.24,8.51 L8.51,13.24 L2.38,7.09 L2.38,7.09 Z M3.01,3 L5.01,3 L5.01,5 L3,5 L3,3 L3.01,3 Z" id="Shape"></path>
</g>
</g>
</svg>
<div>Tags</div>
</a>
</div>
</li>
<li>
<div class="menuitem">
<a href="/archive/">
<svg width="70px" height="35px" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>archive</title>
<g id="Octicons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="book" fill="#ffffff">
<path d="M3,5 L7,5 L7,6 L3,6 L3,5 L3,5 Z M3,8 L7,8 L7,7 L3,7 L3,8 L3,8 Z M3,10 L7,10 L7,9 L3,9 L3,10 L3,10 Z M14,5 L10,5 L10,6 L14,6 L14,5 L14,5 Z M14,7 L10,7 L10,8 L14,8 L14,7 L14,7 Z M14,9 L10,9 L10,10 L14,10 L14,9 L14,9 Z M16,3 L16,12 C16,12.55 15.55,13 15,13 L9.5,13 L8.5,14 L7.5,13 L2,13 C1.45,13 1,12.55 1,12 L1,3 C1,2.45 1.45,2 2,2 L7.5,2 L8.5,3 L9.5,2 L15,2 C15.55,2 16,2.45 16,3 L16,3 Z M8,3.5 L7.5,3 L2,3 L2,12 L8,12 L8,3.5 L8,3.5 Z M15,3 L9.5,3 L9,3.5 L9,12 L15,12 L15,3 L15,3 Z" id="Shape"></path>
</g>
</g>
</svg>
<div>Archive</div>
</a>
</div>
</li>
</ul>
<div id="contact">
<a href="https://github.com/zupzup" class="github" target="_blank" title="GitHub">
<svg viewBox="0 0 512 512">
<title>github</title>
<g fill="FA9B39">
<path d="M256 70.7c-102.6 0-185.9 83.2-185.9 185.9 0 82.1 53.3 151.8 127.1 176.4 9.3 1.7 12.3-4 12.3-8.9V389.4c-51.7 11.3-62.5-21.9-62.5-21.9 -8.4-21.5-20.6-27.2-20.6-27.2 -16.9-11.5 1.3-11.3 1.3-11.3 18.7 1.3 28.5 19.2 28.5 19.2 16.6 28.4 43.5 20.2 54.1 15.4 1.7-12 6.5-20.2 11.8-24.9 -41.3-4.7-84.7-20.6-84.7-91.9 0-20.3 7.3-36.9 19.2-49.9 -1.9-4.7-8.3-23.6 1.8-49.2 0 0 15.6-5 51.1 19.1 14.8-4.1 30.7-6.2 46.5-6.3 15.8 0.1 31.7 2.1 46.6 6.3 35.5-24 51.1-19.1 51.1-19.1 10.1 25.6 3.8 44.5 1.8 49.2 11.9 13 19.1 29.6 19.1 49.9 0 71.4-43.5 87.1-84.9 91.7 6.7 5.8 12.8 17.1 12.8 34.4 0 24.9 0 44.9 0 51 0 4.9 3 10.7 12.4 8.9 73.8-24.6 127-94.3 127-176.4C441.9 153.9 358.6 70.7 256 70.7z"></path>
</g>
</svg>
</a>
<a href="/index.xml" target="_blank" class="rss" title="RSS">
<svg title="rss" viewBox="0 0 512 512">
<title>rss</title>
<g fill="FA9B39">
<path d="M201.8 347.2c0 20.3-16.5 36.8-36.8 36.8 -20.3 0-36.8-16.5-36.8-36.8s16.5-36.8 36.8-36.8C185.3 310.4 201.8 326.8 201.8 347.2zM128.2 204.7v54.5c68.5 0.7 124 56.3 124.7 124.7h54.5C306.7 285.3 226.9 205.4 128.2 204.7zM128.2 166.6c57.9 0.3 112.3 22.9 153.2 63.9 41 41 63.7 95.5 63.9 153.5h54.5c-0.3-149.9-121.7-271.4-271.6-271.9V166.6L128.2 166.6z"></path>
</g></svg>
</a>
</div>
</div>
</div>
<div id="content">
<div class="short">
<h2><a href="/rust-polars/">Using Polars in Rust for high-performance data analysis</a></h2>
<div class="datettr">
<span class="date">05.11.2024</span> - <span class="ttr">44m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/polars/">polars</a></span>
<span><a href="/tags/data/">data</a></span>
<span><a href="/tags/analysis/">analysis</a></span>
</span>
</div>
<div>
<a href="/rust-polars/">
<p>
In this post, we'll build a basic data analysis pipeline using Rust and Polars.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-polars/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-egui/">Building cross-platform GUI apps in Rust using egui</a></h2>
<div class="datettr">
<span class="date">06.09.2024</span> - <span class="ttr">57m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/egui/">egui</a></span>
<span><a href="/tags/gui/">gui</a></span>
</span>
</div>
<div>
<a href="/rust-egui/">
<p>
In this post, we'll build a simple cross-platform GUI using Rust and egui.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-egui/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-wgpu/">Leverage Rust and wgpu for effective cross-platform graphics</a></h2>
<div class="datettr">
<span class="date">11.06.2024</span> - <span class="ttr">96m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/wgpu/">wgpu</a></span>
</span>
</div>
<div>
<a href="/rust-wgpu/">
<p>
In this post, we'll check out wgpu and see how we can build a very basic GUI out of triangles using the GPU.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-wgpu/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-ai-chatbot-ollama/">Building a simple AI chatbot using Rust and Ollama</a></h2>
<div class="datettr">
<span class="date">08.03.2024</span> - <span class="ttr">9m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/async/">async</a></span>
<span><a href="/tags/ai/">ai</a></span>
<span><a href="/tags/llm/">llm</a></span>
<span><a href="/tags/ollama/">ollama</a></span>
<span><a href="/tags/llama2/">llama2</a></span>
</span>
</div>
<div>
<a href="/rust-ai-chatbot-ollama/">
<p>
In this post, we'll build a simple AI chatbot, leveraging a locally running LLM, using Rust and Ollama.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-ai-chatbot-ollama/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-crdt/">Using CRDTs to build collaborative Rust web applications</a></h2>
<div class="datettr">
<span class="date">23.02.2024</span> - <span class="ttr">54m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/crdt/">crdt</a></span>
</span>
</div>
<div>
<a href="/rust-crdt/">
<p>
In this post, I’ll show how to build a simple web app leveraging CRDTs for keeping consistent state between all clients.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-crdt/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-capnproto/">Using Cap'n Proto with Rust</a></h2>
<div class="datettr">
<span class="date">09.08.2023</span> - <span class="ttr">22m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/capnproto/">capnproto</a></span>
<span><a href="/tags/serialization/">serialization</a></span>
<span><a href="/tags/rpc/">rpc</a></span>
</span>
</div>
<div>
<a href="/rust-capnproto/">
<p>
Cap'n Proto is a binary serialization and RPC system optimized for performance. In this article, we'll take a look at how we can use it within Rust.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-capnproto/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/typescript-trpc/">Build a full-stack TypeScript app using tRPC and React</a></h2>
<div class="datettr">
<span class="date">30.06.2023</span> - <span class="ttr">28m read</span> - <span class="tags">
<span><a href="/tags/typescript/">typescript</a></span>
<span><a href="/tags/trpc/">trpc</a></span>
<span><a href="/tags/react/">react</a></span>
</span>
</div>
<div>
<a href="/typescript-trpc/">
<p>
In this post, I’ll show how to use tRPC to build a full-stack TypeScript app.
</p>
</a>
</div>
<div class="readmore">
<a href="/typescript-trpc/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-webpack-swc/">Writing webpack plugins in Rust using SWC for faster builds</a></h2>
<div class="datettr">
<span class="date">21.06.2023</span> - <span class="ttr">17m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/webpack/">webpack</a></span>
<span><a href="/tags/swc/">swc</a></span>
</span>
</div>
<div>
<a href="/rust-webpack-swc/">
<p>
In this post, I’ll show how to use SWC for writing Webpack plugins in Rust.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-webpack-swc/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-websocket/">How to build a WebSocket server with Rust</a></h2>
<div class="datettr">
<span class="date">12.05.2023</span> - <span class="ttr">20m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/web/">web</a></span>
<span><a href="/tags/websocket/">websocket</a></span>
</span>
</div>
<div>
<a href="/rust-websocket/">
<p>
In this post, I’ll show how implement a WebSocket server with Rust.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-websocket/">read more...</a>
</div>
</div>
<br><div class="short">
<h2><a href="/rust-web-async-warp/">Create an async CRUD web service in Rust with warp</a></h2>
<div class="datettr">
<span class="date">09.05.2023</span> - <span class="ttr">32m read</span> - <span class="tags">
<span><a href="/tags/rust/">rust</a></span>
<span><a href="/tags/async/">async</a></span>
<span><a href="/tags/crud/">crud</a></span>
<span><a href="/tags/warp/">warp</a></span>
</span>
</div>
<div>
<a href="/rust-web-async-warp/">
<p>
In this post, I’ll show how to implement an async CRUD Rust web application using Warp.
</p>
</a>
</div>
<div class="readmore">
<a href="/rust-web-async-warp/">read more...</a>
</div>
</div>
<div class="old-articles-link">
<a href="/archive/">Older Articles (98)</a>
</div>
</div>
<div id="footer">
<p>2016-2024 Mario Zupan | <a href="/imprint/">Imprint</a></p>
<div id="contactmobile">
<a href="https://github.com/zupzup" class="github" target="_blank" title="GitHub">
<svg viewBox="0 0 512 512">
<g fill="FA9B39">
<path d="M256 70.7c-102.6 0-185.9 83.2-185.9 185.9 0 82.1 53.3 151.8 127.1 176.4 9.3 1.7 12.3-4 12.3-8.9V389.4c-51.7 11.3-62.5-21.9-62.5-21.9 -8.4-21.5-20.6-27.2-20.6-27.2 -16.9-11.5 1.3-11.3 1.3-11.3 18.7 1.3 28.5 19.2 28.5 19.2 16.6 28.4 43.5 20.2 54.1 15.4 1.7-12 6.5-20.2 11.8-24.9 -41.3-4.7-84.7-20.6-84.7-91.9 0-20.3 7.3-36.9 19.2-49.9 -1.9-4.7-8.3-23.6 1.8-49.2 0 0 15.6-5 51.1 19.1 14.8-4.1 30.7-6.2 46.5-6.3 15.8 0.1 31.7 2.1 46.6 6.3 35.5-24 51.1-19.1 51.1-19.1 10.1 25.6 3.8 44.5 1.8 49.2 11.9 13 19.1 29.6 19.1 49.9 0 71.4-43.5 87.1-84.9 91.7 6.7 5.8 12.8 17.1 12.8 34.4 0 24.9 0 44.9 0 51 0 4.9 3 10.7 12.4 8.9 73.8-24.6 127-94.3 127-176.4C441.9 153.9 358.6 70.7 256 70.7z"></path>
</g>
</svg>
</a>
<a href="/index.xml" target="_blank" class="rss" title="RSS">
<svg viewBox="0 0 512 512">
<path d="M201.8 347.2c0 20.3-16.5 36.8-36.8 36.8 -20.3 0-36.8-16.5-36.8-36.8s16.5-36.8 36.8-36.8C185.3 310.4 201.8 326.8 201.8 347.2zM128.2 204.7v54.5c68.5 0.7 124 56.3 124.7 124.7h54.5C306.7 285.3 226.9 205.4 128.2 204.7zM128.2 166.6c57.9 0.3 112.3 22.9 153.2 63.9 41 41 63.7 95.5 63.9 153.5h54.5c-0.3-149.9-121.7-271.4-271.6-271.9V166.6L128.2 166.6z"></path>
</svg>
</a>
</div>
</div>
</body></html>