1<!DOCTYPE html> 2<!-- 3 So Simple Jekyll Theme 3.2.0 4 Copyright 2013-2019 Michael Rose - mademistakes.com | @mmistakes 5 Free for personal and commercial use under the MIT license 6 https://github.com/mmistakes/so-simple-theme/blob/master/LICENSE 7--> 8<html lang="en-US" class="no-js"> 9 <head> 10 <meta charset="utf-8"> 11 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 12 <meta name="viewport" content="width=device-width, initial-scale=1"> 13 14 15 16 17 18 <!-- Begin Jekyll SEO tag v2.8.0 --> 19<title>Danielle Honigstein | Programmer. Physicist. Musician. Digital Artist. Here are cool things I did with code.</title> 20<meta name="generator" content="Jekyll v3.10.0" /> 21<meta property="og:title" content="Danielle Honigstein" /> 22<meta property="og:locale" content="en_US" /> 23<meta name="description" content="Projects, tools, videos, and posts by Danielle Honigstein" /> 24<meta property="og:description" content="Projects, tools, videos, and posts by Danielle Honigstein" /> 25<link rel="canonical" href="https://danielle-honig.com/" /> 26<meta property="og:url" content="https://danielle-honig.com/" /> 27<meta property="og:site_name" content="Danielle Honigstein" /> 28<meta property="og:type" content="website" /> 29<meta name="twitter:card" content="summary" /> 30<meta property="twitter:title" content="Danielle Honigstein" />
31<script type="application/ld+json"> 32{"@context":"https://schema.org","@type":"WebSite","description":"Projects, tools, videos, and posts by Danielle Honigstein","headline":"Danielle Honigstein","name":"Danielle Honigstein","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://danielle-honig.com/assets/images/vines.jpg"}},"url":"https://danielle-honig.com/"}</script>
32 33<!-- End Jekyll SEO tag --> 34 35 36 37 38
38<script> 39 /* Cut the mustard */ 40 if ( 'querySelector' in document && 'addEventListener' in window ) { 41 document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + 'js'; 42 } 43 </script>
43 44 45 <link rel="stylesheet" href="/assets/css/main.css"> 46 <link rel="stylesheet" href="/assets/css/skins/custom.css"> 47 <link rel="alternate" type="application/atom+xml" title="Danielle Honigstein" href="/feed.xml"> 48<!-- start custom head snippets --> 49 50<!-- insert favicons. use http://realfavicongenerator.net/ --> 51<link rel="apple-touch-icon" sizes="152x152" href="/assets/favicon/apple-touch-icon.png"> 52<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png"> 53<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png"> 54<link rel="manifest" href="/assets/favicon/site.webmanifest"> 55<link rel="mask-icon" href="/assets/favicon/safari-pinned-tab.svg" color="#5bbad5"> 56<meta name="msapplication-TileColor" content="#9f00a7"> 57<meta name="theme-color" content="#333333"> 58
59<script type="application/ld+json"> 60{ 61 "@context": "https://schema.org", 62 "@type": "Person", 63 "name": "Danielle Honigstein", 64 "alternateName": ["×× ××× ××× ××ש××××", "×× ×××× ××× ××ש××××"], 65 "url": "https://danielle-honig.com/", 66 "image": "https://danielle-honig.com/assets/images/vines.jpg", 67 "sameAs": [ 68 "https://www.linkedin.com/in/danielle-honigstein-a502bb27/", 69 "https://github.com/danielle-h", 70 "https://medium.com/@dsavir-h" 71 ] 72} 73</script>
73 74 75<!-- end custom head snippets --> 76</head> 77 78 79 <body class="layout--page-comment "> 80 <nav class="skip-links"> 81 <h2 class="screen-reader-text">Skip links</h2> 82 <ul> 83 <li><a href="#primary-nav" class="screen-reader-shortcut">Skip to primary navigation</a></li> 84 <li><a href="#main" class="screen-reader-shortcut">Skip to content</a></li> 85 <li><a href="#footer" class="screen-reader-shortcut">Skip to footer</a></li> 86 </ul> 87</nav> 88 89 90 <div class="navigation-wrapper"> 91 <a href="#menu-toggle" id="menu-toggle">Menu</a> 92 <nav id="primary-nav" class="site-nav animated drop"> 93 <ul><li><a href="/">Home</a></li><li><a href="/sketches/">Sketches</a></li><li><a href="/space-short">Space Short</a></li><li><a href="/int-array-converter">Int<->Array Converter</a></li><li><a href="/reverser">Reverser</a></li><li><a href="/categories/">Posts</a></li><li><a href="/contact/">Contact</a></li><li><a href="/about/">About</a></li></ul> 94 </nav> 95 </div><!-- /.navigation-wrapper --> 96 97 98 <header class="masthead"> 99 <div class="wrap"> 100 101 <a href="/" class="site-logo" rel="home" title="Danielle Honigstein"> 102 <img src="/assets/images/vines.jpg" class="site-logo-img animated fadeInDown" alt="Danielle Honigstein"> 103 </a> 104 105 106 107 108 <h1 class="site-title animated fadeIn"><a href="/">Danielle Honigstein</a></h1> 109 110 <p class="site-description animated fadeIn" itemprop="description">Programmer. Physicist. Musician. Digital Artist. Here are cool things I did with code.</p> 111 112 </div> 113</header><!-- /.masthead --> 114 115 116 <main id="main" class="main-content" aria-label="Content"> 117 <article> 118 119 120 <div class="page-wrapper"> 121 <header class="page-header"> 122 123 124 <h1 id="page-title" class="page-title"></h1> 125 126 </header> 127 <div class="page-content"> 128
128<script src="https://cdn.jsdelivr.net/npm/[email protected]/lib/p5.js"></script>
128 129<link rel="stylesheet" href="css/custom.css">
130<script type="text/javascript" src="/processing/vines/vine.js"></script>
vendor: 1 bytes, line 130
130
131<script type="text/javascript" src="/processing/vines/flower.js"></script>
vendor: 1 bytes, line 131
131
132<script type="text/javascript" src="/processing/vines/leaf.js"></script>
132 133<div> 134 <iframe style="margin:auto;display:block" scrolling="no" src="/sketches/vines/?fullscreen=true" width="401" 135 height="401" style="border:1px solid black;"></iframe> 136</div> 137 138 139<!-- <div id="bthn" lang="en"></div>
140<script> 141 (function () { 142 var script = document.createElement("script"); 143 script.type = "text/javascript"; 144 script.src = "https://bringthemhomenow.net/1.0.8/hostages-ticker.js"; 145 script.setAttribute( 146 "integrity", 147 "sha384-jQVW0E+wZK5Rv1fyN+b89m7cYY8txH4s3uShzHf1T51hdBTPo7yKL6Yizgr+Gp8C" 148 ); 149 script.setAttribute("crossorigin", "anonymous"); 150 document.getElementsByTagName("head")[0].appendChild(script); 151 })(); 152</script>
152 --> 153 154<p><em>This is a p5.js sketch that draws growing vines. Hypnotizing, isnât it? The original Processing code is <a 155 href="https://gitlab.com/dsavir/growing-vines">here</a>. The p5.js code is in the <a 156 href="https://github.com/danielle-h/danielle-h.github.io/tree/main/docs/processing/vines">site 157 repository</a>. I converted part of it manually, and part of it using this excellent 158 <a href="https://dkessner.github.io/processing-p5-convert/">converter</a>. For <a 159 href="/tools/p5js/2022/12/20/embed-iframe.html">embedding</a> it into e.g. web-screensaver, use <a 160 href="/sketches/vines/?fullscreen=true&maxVines=20">this link</a>. More sketches <a 161 href="sketches">here</a></em>.</p> 162 163<h1 id="welcome">Welcome!</h1> 164 165<p>I program in a variety of languages from Flutter to Arduino. So stay tuned - it will be interesting :)</p> 166 167<!-- apps section --> 168<section id="apps" style="margin-top: 2em;"> 169 <h2>Apps & Games</h2> 170 171 <div style="display: flex; flex-wrap: wrap; gap: 2em;"> 172 173 <!-- App 1 --> 174 <div style="flex: 1 1 250px; max-width: 300px;"> 175 <img src="assets/images/tefilat.png" alt="Auto Traveler's Prayer" style="width: 300px; 176 height: 300px; 177 object-fit: cover; 178 border-radius: 8px;"> 179 <h3><a href="https://play.google.com/store/apps/details?id=com.honeystone.tefilat_haderech" 180 target="_blank">Auto Traveler's Prayer</a></h3> 181 <p>A traveler's prayer (tefilat haderech) app that plays a timed audio recording when a trip starts. Android 182 only.</p> 183 </div> 184 185 <!-- App 2 --> 186 <div style="flex: 1 1 250px; max-width: 300px;"> 187 <img src="assets/images/space-short-screenshot-1-crop.png" alt="Space Short" style="width: 300px; 188 height: 300px; 189 object-fit: cover; 190 border-radius: 8px;"> 191 <h3><a href="https://play.google.com/store/apps/details?id=com.HoneystoneGames.SpaceShort" 192 target="_blank">Space Short</a></h3> 193 <p>10 levels. Two bosses. No distractions. Can you beat it?. Available on Android and <a href="space-short" 194 target="_blank">Web</a>.</p> 195 </div> 196 197 <!-- App 3 --> 198 <div style="flex: 1 1 250px; max-width: 300px;"> 199 <img src="assets/images/syllable_twist.png" alt="Syllable Twist" style="width: 300px; 200 height: 300px; 201 object-fit: cover; 202 border-width: 5px; 203 border-color: #673AB7; 204 border-style: ridge; 205 border-radius: 8px;"> 206 <h3>Coming Soon: Syllable Twist</h3> 207 <p>How many 3 syllable words can you think of that start with b? Play and find out!</p> 208 </div> 209 210 211 212 </div> 213</section> 214<section id="tools" style="margin-top: 2em;"> 215 <h2>Online Tools</h2> 216 217 <div style="display: flex; flex-wrap: wrap; gap: 2em;"> 218 219 <!-- App 1 --> 220 <div style="flex: 1 1 250px; max-width: 300px;"> 221 <img src="assets/images/int2bytearray.png" alt="Int 2 byte array" style="width: 300px; 222 height: 300px; 223 object-fit: cover; 224 border-radius: 8px;"> 225 <h3><a href="int-array-converter" target="_blank">Int 2 Byte 226 Array</a></h3> 227 <p>Convert int to byte array and vice versa</p> 228 </div> 229 230 231 232 <!-- App 3 --> 233 <div style="flex: 1 1 250px; max-width: 300px;"> 234 <img src="assets/images/reverser-screenshot.jpg" alt="Reverser app" style="width: 300px; 235 height: 300px; 236 object-fit: cover; 237 border-radius: 8px;"> 238 <h3><a href="reverser" target="_blank">Reverser</a></h3> 239 <p>A simple tool that reverses multi line text line by line.</p> 240 </div> 241 242 </div> 243</section> 244 245<section id="videos" style="margin-top: 2em;"> 246 <h2>Videos</h2> 247 248 <div style="display: flex; flex-wrap: wrap; gap: 2em;"> 249 250 <div style="flex: 1 1 250px; max-width: 300px;"> 251 <a href="https://www.youtube.com/watch?v=bcdVxweFhzI" target="_blank"> 252 <img src="https://img.youtube.com/vi/bcdVxweFhzI/0.jpg" alt="Video title" 253 style="width: 100%; border-radius: 8px;"> 254 </a> 255 <h3>
255Slide in animations in Flutter</h3> 256 <p style="margin-top: 0.5em;">How to enhance your column of widgets with that little extra that adds a lot 257 of 258 cool</p> 259 </div> 260 261 262 263 <div style="flex: 1 1 250px; max-width: 300px;"> 264 <a href="https://www.youtube.com/watch?v=mSKDRyqCIrI" target="_blank"> 265 <img src="https://img.youtube.com/vi/mSKDRyqCIrI/0.jpg" alt="Video title" 266 style="width: 100%; border-radius: 8px;"> 267 </a> 268 <h3>Flower and Candle Animation (Flutter)</h3> 269 <p style="margin-top: 0.5em;">A follow-along animation for the flower and candle breathing exercise for 270 children 271 to relieve anxiety</p> 272 </div> 273 274 275 276 <div style="flex: 1 1 250px; max-width: 300px;"> 277 <a href="https://www.youtube.com/watch?v=A_dMCVJ7tUE" target="_blank"> 278 <img src="https://img.youtube.com/vi/A_dMCVJ7tUE/0.jpg" alt="Video title" 279 style="width: 100%; border-radius: 8px;"> 280 </a> 281 <h3>Nothing else matters piano cover and video</h3> 282 <p style="margin-top: 0.5em;">This unites some of my favorite subjects: Singing, piano, Metallica, and 283 programming (Processing)</p> 284 </div> 285 286 <p>Check out more videos in my <a href="https://www.youtube.com/@daniellehonigstein3903" target="_blank">YouTube 287 page</a>.</p> 288 289 </div> 290</section> 291 292<section id="posts" style="margin-top: 2em;"> 293 <h2>Pinned Posts</h2> 294 <p>
294I blog mostly on <a href="https://dsavir-h.medium.com/" target="_blank">Medium</a>. If you are not a Medium 295 member and you want to read a paywalled post, please <a href="contact" target="_blank">contact me</a>.</p> 296 297 <div style="display: flex; flex-wrap: wrap; gap: 2em;"> 298 299 <!-- App 1 --> 300 <div style="flex: 1 1 250px; max-width: 300px;"> 301 <img src="assets\images\2023-10-27-animation-video-flutter\Screenshot_1698237878.png" 302 alt="Flower and candle breathing video" style="width: 300px; 303 height: 300px; 304 object-fit: cover; 305 border-radius: 8px;"> 306 <h3><a href="flutter/2023/10/27/Animation-video-in-flutter.html" target="_blank">Breathing animation video 307 in Flutter</a></h3> 308 <p>How I created an animated video using Flutter</p> 309 </div> 310 311 312 313 <div style="flex: 1 1 250px; max-width: 300px;"> 314 <img src="assets/images/mocking-bluetooth-building-blocks.png" alt="building blocks build a tower" style="width: 300px; 315 height: 300px; 316 object-fit: cover; 317 border-radius: 8px;"> 318 <h3><a href="flutter/2023/10/13/mocking-bluetooth-in-flutter-updated.html" target="_blank">Mocking Bluetooth 319 in Flutter: updated</a></h3> 320 <p>How to mock FlutterBluePlus now that all functions are static?</p> 321 </div> 322 323 <div style="flex: 1 1 250px; max-width: 300px;"> 324 <img src="assets/images/space-short-screenshot-1-crop.png" alt="screenshot from space short game" style="width: 300px; 325 height: 300px; 326 object-fit: cover; 327 border-radius: 8px;"> 328 <h3><a href="unity/space%20short/2023/11/19/space-short-is-out.html" target="_blank">Space Short is out!</a> 329 </h3> 330 <p>Finally done! Play it online or download from Google Play</p> 331 </div> 332 333 334 335 </div> 336 <p><a href="posts">More posts...</a></p> 337</section> 338 339 340<h2>Even more</h2> 341 342<p> 343 Also look at my <a href="https://gitlab.com/dsavir">GitLab</a> page, my <a 344 href="https://dsavir-h.medium.com/">Medium</a> articles, and <a href="https://github.com/danielle-h">GitHub</a> 345 page for other things I do with code. </p> 346 347 348 349 350 351 <div class="page-comments"> 352 <div id="disqus_thread"></div> 353
353<script> 354 var disqus_config = function () { 355 this.page.url = 'https://danielle-honig.com/'; 356 this.page.identifier = 'https://danielle-honig.com/'; 357 }; 358 359 (function() { 360 var d = document, s = d.createElement('script'); 361 s.src = 'https://danielle-honig.disqus.com/embed.js'; 362 s.setAttribute('data-timestamp', +new Date()); 363 (d.head || d.body).appendChild(s); 364 })(); 365 </script>
365 366 <noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript> 367 </div> 368 369 370 371 </div> 372 </div> 373 </article> 374</main> 375 376 <footer id="footer" class="site-footer"> 377 <!-- start custom footer snippets --> 378 379<!-- end custom footer snippets --> 380<div class="social-icons"><a class="social-icon" href="https://gitlab.com/dsavir"><i class="fab fa-gitlab fa-2x" title="GitLab"></i></a><a class="social-icon" href="https://www.linkedin.com/in/danielle-honigstein-a502bb27/"><i class="fab fa-linkedin fa-2x" title="LinkedIn"></i></a><a class="social-icon" href="https://dsavir-h.medium.com/"><i class="fab fa-medium fa-2x" title="Medium"></i></a><a class="social-icon" href="https://github.com/danielle-h/"><i class="fab fa-github fa-2x" title="GitHub"></i></a><a class="social-icon" href="https://www.youtube.com/@daniellehonigstein3903"><i class="fab fa-youtube fa-2x" title="YouTube"></i></a></div><div class="copyright"> 381 382 <p>© 2026 Danielle Honigstein. Powered by <a href="https://jekyllrb.com" rel="nofollow">Jekyll</a> & <a href="https://github.com/mmistakes/so-simple-theme" rel="nofollow">So Simple</a>.</p> 383 384 </div> 385</footer> 386 387
387<script src="https://code.jquery.com/jquery-3.3.1.min.js" 388 integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 388
388
389<script src="/assets/js/main.min.js"></script>
vendor: 1 bytes, line 389
389
390<script src="https://use.fontawesome.com/releases/v5.0.12/js/all.js"></script>
390<!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 390-391
390 391<script async src="https://www.googletagmanager.com/gtag/js?id=
391G-XE6GY7G848
vendor: 12 bytes, line 391
391"></script>
392<script> 393
vendor: 143 bytes, lines 393-397
393window.dataLayer = window.dataLayer || []; 394 function gtag() { dataLayer.push(arguments); } 395 gtag('js', new Date()); 396 397 gtag('config', '
397G-XE6GY7G848
vendor: 4 bytes, line 397
397');
398</script>
398 399 400 401 </body> 402 403</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.