website

Personal website
git clone https://github.com/michaelneuper/website.git
README | Files | Log | Refs

website/src/components/home/Hero.astro (1339B)


---
// The landing section: the name, which decodes itself bit by bit on load
// (src/scripts/home/decode.js), in front of a wall of my C code
// (src/scripts/home/wall.js, with the code in src/data/wall.js). data-file
// follows the window the wall's cursor is in.
import "../../styles/home/hero.css";
---
<section class="hero" id="top" data-file="cube.c" data-mode="C" aria-labelledby="hero-name">
  <canvas class="hero-wall" aria-hidden="true"></canvas>
  <div class="hero-in">
    <div class="hero-id">
      <h1 class="hero-name" id="hero-name">Michael Neuper</h1>
      <p class="hero-lede">Computer science student at Stellenbosch University. I like low-level software, electronics and the maths underneath both, and I do almost all of it in Emacs.</p>
      <ul class="legend" aria-label="Colour key used across the site">
        <li data-cat="hw">hardware</li>
        <li data-cat="sw">software</li>
        <li data-cat="math">maths</li>
        <li data-cat="sec">security</li>
      </ul>
    </div>
  </div>
</section>

<script>
  import { initDecode } from "../../scripts/home/decode.js";
  import { initWall } from "../../scripts/home/wall.js";

  initDecode().catch((err) => {
    console.error(err);
    document.documentElement.classList.remove("boot");
  });
  initWall().catch((err) => console.error(err));
</script>