website

#astro#js#html#css

git clone https://git.pyrossh.dev/website

木 Personal website of pyrossh. Built with astrojs, shiki, vite.


src/_data/site.js
const REPOS = [
  {
    title: "rust-embed",
    description:
      "rust macro which loads files into the rust binary at compile time during release and loads the file from the fs during dev.",
    tags: ["rust", "proc-macro", "http"],
  },
  {
    title: "website",
    description: "木 Personal website of pyrossh. Built with astrojs, shiki, vite.",
    tags: ["astro", "js", "html", "css"],
  },
  {
    title: "plum",
    description: "A statically typed, imperative programming language inspired by rust, python",
    tags: ["treesitter", "compiler", "wasm"],
  },
  {
    title: "edge-city",
    description: "edge-city is a next level meta-framework for react that runs only on edge runtimes",
    tags: ["react", "js", "ssr"],
  },
  {
    title: "gromer",
    description: "gromer is a framework and cli to build multipage web apps in golang using htmx and alpinejs.",
    tags: ["golang", "htmx", "ssr"],
  },
  {
    title: "atoms-element",
    description:
      "A simple web component library for defining your custom elements. It works on both client and server.",
    tags: ["js"],
  },
  {
    title: "atoms-state",
    description: "Simple State management for react",
    tags: ["js", "react", "flux"],
  },
  {
    title: "remote-monitor",
    description: "Remote Monitoring and Control using GSM-SMS",
    tags: ["c++", "teensy", "arduino"],
  },
  {
    title: "only-bible-app",
    description: "The only bible app you will ever need. No ads. No in-app purchases. No distractions.",
    tags: ["kotlin", "android", "ios"],
  },
  {
    title: "gdx-studio",
    description:
      "An IDE for creating Games using libgdx and Java supported on all platforms Android, iOS, Desktop",
    tags: ["libgdx", "java", "desktop"],
  },
  {
    title: "rp2350",
    description: "code to drive rp2350",
    tags: ["zig", "raspberry-pi"],
  },
  {
    title: "config",
    description: "Common configuration",
    tags: ["brew", "nushell"],
  },
  {
    title: "sabel-ide",
    description: "sabel-ide",
    tags: ["python", "qt"],
  },
  {
    title: "tide-jsx",
    description: "Tide + JSX",
    tags: ["rust", "proc-macro", "jsx"],
  },
];

const TOOLS = [
  { name: "Stats", link: "https://github.com/exelban/stats", image: "/assets/logos/stats.png" },
  { name: "Ghostty", link: "https://github.com/ghostty-org/ghostty", image: "/assets/logos/ghostty.png" },
  { name: "Nushell", link: "https://github.com/nushell/nushell", image: "/assets/logos/nu.png" },
  { name: "Zellij", link: "https://zellij.dev/", image: "/assets/logos/zellij.png" },
  { name: "Helix", link: "https://github.com/helix-editor/helix", image: "/assets/logos/helix.png" },
  { name: "Helium", link: "https://github.com/imputnet/helium", image: "/assets/logos/helium.png" },
  { name: "Hurl", link: "https://github.com/Orange-OpenSource/hurl", image: "/assets/logos/hurl.png" },
];

// Eleventy only unwraps a JS data file's `default` export when it's the module's
// sole export, so this file must not have any other named exports (REPOS is
// re-read from here by src/_helpers/gitRepos.js via the default export instead).
export default {
  title: "pyrossh",
  description: "Welcome to my website!",
  url: "https://pyrossh.dev",
  navItems: [
    { href: "/cv", label: "cv" },
    { href: "/posts", label: "posts" },
  ],
  repos: REPOS,
  tools: TOOLS,
  year: new Date().getFullYear(),
};