You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

297 lines
11 KiB

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <!-- Minima -->
  5. <!-- Hexo theme created by @adisaktijrs -->
  6. <!-- Basic Page Needs
  7. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  8. <meta charset="utf-8">
  9. <title>All Posts - Tim Kicker</title>
  10. <link rel="canonical" href="https://tim.kicker.dev/archives/2023/">
  11. <meta name="description" content="">
  12. <meta name="author" content="Tim Kicker">
  13. <meta property="og:image" content="https://tim.kicker.dev/images/teddy-bear-apple.webp">
  14. <meta property="og:site_name" content="Tim&#39;s Blog" />
  15. <meta property="og:type" content="article" />
  16. <meta property="og:title" content="All Posts - Tim Kicker" />
  17. <meta property="og:description" content="">
  18. <meta property="og:url" content="https://tim.kicker.dev/archives/2023/" />
  19. <meta name="twitter:card" content="summary_large_image">
  20. <meta name="twitter:title" content="All Posts - Tim Kicker">
  21. <meta name="twitter:description" content="">
  22. <meta name="twitter:image" content="https://tim.kicker.dev/images/teddy-bear-apple.webp">
  23. <meta name="twitter:url" content="https://tim.kicker.dev/archives/2023/" />
  24. <!-- Mobile Specific Metas
  25. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  26. <meta name="viewport" content="width=device-width, initial-scale=1">
  27. <!-- Preload fonts
  28. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  29. <link rel="preload" href="../fonts/dm-serif-display-v4-latin-regular.woff2" as="font" type="font/woff2" crossorigin>
  30. <link rel="preload" href="../fonts/inter-v2-latin-regular.woff2" as="font" type="font/woff2" crossorigin>
  31. <!-- CSS
  32. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  33. <link rel="stylesheet" href="/css/normalize.css">
  34. <link rel="stylesheet" href="/css/skeleton.css">
  35. <link rel="stylesheet" href="/css/custom.css">
  36. <link rel="stylesheet" href="/css/prism-dark.css">
  37. <link rel="stylesheet" href="/css/prism-line-numbers.css">
  38. <!-- User css -->
  39. <link rel="stylesheet" href="/css/user.css">
  40. <!-- Favicon
  41. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  42. <link rel="icon" type="image/png" href="/images/teddy-bear-apple.webp">
  43. <!-- Custom Theme Color Style
  44. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  45. <style>
  46. a:not(.icon) {
  47. text-decoration-color: #0FA0CE;
  48. background-image: linear-gradient(
  49. to bottom,
  50. rgba(0, 0, 0, 0) 50%,
  51. #0FA0CE 50%
  52. );
  53. }
  54. blockquote {
  55. border-left: 8px solid #0FA0CE;
  56. }
  57. .nanobar .bar {
  58. background: #0FA0CE;
  59. }
  60. .button.button-primary:hover,
  61. button.button-primary:hover,
  62. input[type="submit"].button-primary:hover,
  63. input[type="reset"].button-primary:hover,
  64. input[type="button"].button-primary:hover,
  65. .button.button-primary:focus,
  66. button.button-primary:focus,
  67. input[type="submit"].button-primary:focus,
  68. input[type="reset"].button-primary:focus,
  69. input[type="button"].button-primary:focus {
  70. background-color: #0FA0CE;
  71. border-color: #0FA0CE;
  72. }
  73. input[type="email"]:focus,
  74. input[type="number"]:focus,
  75. input[type="search"]:focus,
  76. input[type="text"]:focus,
  77. input[type="tel"]:focus,
  78. input[type="url"]:focus,
  79. input[type="password"]:focus,
  80. textarea:focus,
  81. select:focus {
  82. border: 1px solid #0FA0CE;
  83. }
  84. </style>
  85. <!-- Google Analytics (With Privacy Settings On)
  86. –––––––––––––––––––––––––––––––––––––––––––––––––– -->
  87. <meta name="generator" content="Hexo 6.3.0"><link rel="alternate" href="/atom.xml" title="Tim's Blog" type="application/atom+xml">
  88. </head>
  89. <body>
  90. <div class="container">
  91. <div class="row">
  92. <div>
  93. <script async src="https://stats.kicker.dev/script.js" data-website-id="295db5f5-27a1-42e8-9783-1e410896a596"></script>
  94. <script data-goatcounter="https://altstats.kicker.dev/count" async src="//altstats.kicker.dev/count.js"></script>
  95. <div class="row">
  96. <div class="two columns" style="max-width: 50px">
  97. <h1 class="mt-2 mode">
  98. <div onclick=setDarkMode(true) id="darkBtn">🌑</div>
  99. <div onclick=setDarkMode(false) id="lightBtn" class=hidden>☀️</div>
  100. <script >
  101. if (localStorage.getItem('preferredTheme') == 'dark') {
  102. setDarkMode(true)
  103. }
  104. function setDarkMode(isDark) {
  105. var darkBtn = document.getElementById('darkBtn')
  106. var lightBtn = document.getElementById('lightBtn')
  107. if (isDark) {
  108. lightBtn.style.display = "block"
  109. darkBtn.style.display = "none"
  110. localStorage.setItem('preferredTheme', 'dark');
  111. } else {
  112. lightBtn.style.display = "none"
  113. darkBtn.style.display = "block"
  114. localStorage.removeItem('preferredTheme');
  115. }
  116. document.body.classList.toggle("darkmode");
  117. }
  118. </script>
  119. </h1>
  120. </div>
  121. <div class="six columns ml-1">
  122. <h1 class="mt-2">
  123. <div onclick=navigateHome()>Hello World.</div>
  124. <script >
  125. function navigateHome() {
  126. window.location.replace('https://tim.kicker.dev');
  127. }
  128. </script>
  129. </h1>
  130. </div>
  131. <!--
  132. <div class="six columns ml-1">
  133. <h1 class="mt-2">
  134. <a class="mt-2" href="/">Hello World.</a>
  135. </h1>
  136. </div>
  137. -->
  138. <div class="twelve columns">
  139. <div class="row">
  140. <div class="nine columns left">
  141. <a href="/">Home</a>
  142. <a href="/archives" class="ml">Blog</a>
  143. <a href="/About" class="ml">About</a>
  144. <a href="mailto:[email protected]" target="_blank" class="ml">Email</a>
  145. </div>
  146. </div>
  147. <hr style="margin-bottom: 2.6rem">
  148. </div>
  149. </div>
  150. <div class="trans">
  151. <h2>All Posts</h2>
  152. <article>
  153. <div class="row">
  154. <div class="three columns left lit">
  155. <p class="bottom">May 18, 2023</p>
  156. </div>
  157. <div class="nine columns left mb-3">
  158. <a href="/2023/05/18/whatsapp-analyze/" class="">
  159. Data about data
  160. </a>
  161. </div>
  162. </div>
  163. </article>
  164. <div class="pagination-bar">
  165. <ul class="pagination">
  166. </ul>
  167. </div>
  168. <div class="row mt-2">
  169. <div class="eight columns">
  170. <p id="madewith">
  171. #<a href="https://git.kicker.dev/tim/tim.kicker.dev" target="_blank" rel="noreferrer">opensource</a></p>
  172. </div>
  173. <!-- Sepcial thanks to https://simpleicons.org/ for the icons -->
  174. <div class="four columns mb-3 posisi" >
  175. <a class="ml-0 footer-link icon" href="https://twitter.com/timjkicker/" target="_blank" style="text-decoration: none" rel="noreferrer" aria-label="Twitter">
  176. <svg class="twitter svg-hov" width="18" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitter</title><path d="M23.954 4.569c-.885.389-1.83.654-2.825.775 1.014-.611 1.794-1.574 2.163-2.723-.951.555-2.005.959-3.127 1.184-.896-.959-2.173-1.559-3.591-1.559-2.717 0-4.92 2.203-4.92 4.917 0 .39.045.765.127 1.124C7.691 8.094 4.066 6.13 1.64 3.161c-.427.722-.666 1.561-.666 2.475 0 1.71.87 3.213 2.188 4.096-.807-.026-1.566-.248-2.228-.616v.061c0 2.385 1.693 4.374 3.946 4.827-.413.111-.849.171-1.296.171-.314 0-.615-.03-.916-.086.631 1.953 2.445 3.377 4.604 3.417-1.68 1.319-3.809 2.105-6.102 2.105-.39 0-.779-.023-1.17-.067 2.189 1.394 4.768 2.209 7.557 2.209 9.054 0 13.999-7.496 13.999-13.986 0-.209 0-.42-.015-.63.961-.689 1.8-1.56 2.46-2.548l-.047-.02z"/></svg>
  177. </a>
  178. <a class="ml-0 footer-link icon" href="https://github.com/timkicker" target="_blank" style="text-decoration: none" rel="noreferrer" aria-label="GitHub">
  179. <svg class="github svg-hov" width="18" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>
  180. </a>
  181. <a class="ml-0 footer-link icon" href="https://www.linkedin.com/in/tim-kicker-5438b1237/" target="_blank" style="text-decoration: none" rel="noreferrer" aria-label="LinkedIn">
  182. <svg class="linkedin svg-hov" width="18" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>LinkedIn</title><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg>
  183. </a>
  184. </div>
  185. </div>
  186. </div>
  187. </div>
  188. </div>
  189. </div>
  190. <script src="/js/nanobar.min.js"></script>
  191. <script>
  192. var options = {
  193. classname: 'nanobar',
  194. id: 'myNanobar'
  195. };
  196. var nanobar = new Nanobar(options);
  197. nanobar.go(30);
  198. nanobar.go(76);
  199. nanobar.go(100);
  200. </script>
  201. <script>(function (w, d, s, id) {
  202. if (typeof (w.webpushr) !== 'undefined') return; w.webpushr = w.webpushr || function () { (w.webpushr.q = w.webpushr.q || []).push(arguments) }; var js, fjs = d.getElementsByTagName(s)[0]; js = d.createElement(s); js.id = id; js.async = 1; js.src = "https://cdn.webpushr.com/app.min.js";fjs.parentNode.appendChild(js);}(window, document, 'script', 'webpushr-jssdk'));webpushr('setup', { 'key': 'BLrRztSWnClZ_Jjg50n_ziB6VHz0Wcp721ZbAl9So1t0DMi4ChlDXQ1Ta2wKVYebMjm1l2HQNdZBkaLwBeNoQ2Y' });</script></body>
  203. </html>