website
git clone https://git.pyrossh.dev/website
木 Personal website of pyrossh. Built with astrojs, shiki, vite.
src/_data/site.js
| 3c79a68 | 1 | const REPOS = [ |
| ad05b07 | 2 | { |
| ad05b07 | 3 | title: "rust-embed", |
| ad05b07 | 4 | description: |
| ad05b07 | 5 | "rust macro which loads files into the rust binary at compile time during release and loads the file from the fs during dev.", |
| ad05b07 | 6 | tags: ["rust", "proc-macro", "http"], |
| ad05b07 | 7 | }, |
| ad05b07 | 8 | { |
| ad05b07 | 9 | title: "website", |
| ad05b07 | 10 | description: "木 Personal website of pyrossh. Built with astrojs, shiki, vite.", |
| ad05b07 | 11 | tags: ["astro", "js", "html", "css"], |
| ad05b07 | 12 | }, |
| ad05b07 | 13 | { |
| ad05b07 | 14 | title: "plum", |
| ad05b07 | 15 | description: "A statically typed, imperative programming language inspired by rust, python", |
| ad05b07 | 16 | tags: ["treesitter", "compiler", "wasm"], |
| ad05b07 | 17 | }, |
| ad05b07 | 18 | { |
| ad05b07 | 19 | title: "edge-city", |
| 3c79a68 | 20 | description: "edge-city is a next level meta-framework for react that runs only on edge runtimes", |
| ad05b07 | 21 | tags: ["react", "js", "ssr"], |
| ad05b07 | 22 | }, |
| ad05b07 | 23 | { |
| ad05b07 | 24 | title: "gromer", |
| 3c79a68 | 25 | description: "gromer is a framework and cli to build multipage web apps in golang using htmx and alpinejs.", |
| ad05b07 | 26 | tags: ["golang", "htmx", "ssr"], |
| ad05b07 | 27 | }, |
| ad05b07 | 28 | { |
| ad05b07 | 29 | title: "atoms-element", |
| ad05b07 | 30 | description: |
| ad05b07 | 31 | "A simple web component library for defining your custom elements. It works on both client and server.", |
| ad05b07 | 32 | tags: ["js"], |
| ad05b07 | 33 | }, |
| ad05b07 | 34 | { |
| ad05b07 | 35 | title: "atoms-state", |
| ad05b07 | 36 | description: "Simple State management for react", |
| ad05b07 | 37 | tags: ["js", "react", "flux"], |
| ad05b07 | 38 | }, |
| ad05b07 | 39 | { |
| ad05b07 | 40 | title: "remote-monitor", |
| ad05b07 | 41 | description: "Remote Monitoring and Control using GSM-SMS", |
| ad05b07 | 42 | tags: ["c++", "teensy", "arduino"], |
| ad05b07 | 43 | }, |
| ad05b07 | 44 | { |
| ad05b07 | 45 | title: "only-bible-app", |
| 3c79a68 | 46 | description: "The only bible app you will ever need. No ads. No in-app purchases. No distractions.", |
| ad05b07 | 47 | tags: ["kotlin", "android", "ios"], |
| ad05b07 | 48 | }, |
| ad05b07 | 49 | { |
| ad05b07 | 50 | title: "gdx-studio", |
| ad05b07 | 51 | description: |
| ad05b07 | 52 | "An IDE for creating Games using libgdx and Java supported on all platforms Android, iOS, Desktop", |
| ad05b07 | 53 | tags: ["libgdx", "java", "desktop"], |
| ad05b07 | 54 | }, |
| ad05b07 | 55 | { |
| ad05b07 | 56 | title: "rp2350", |
| ad05b07 | 57 | description: "code to drive rp2350", |
| ad05b07 | 58 | tags: ["zig", "raspberry-pi"], |
| ad05b07 | 59 | }, |
| ad05b07 | 60 | { |
| ad05b07 | 61 | title: "config", |
| ad05b07 | 62 | description: "Common configuration", |
| ad05b07 | 63 | tags: ["brew", "nushell"], |
| ad05b07 | 64 | }, |
| ad05b07 | 65 | { |
| ad05b07 | 66 | title: "sabel-ide", |
| ad05b07 | 67 | description: "sabel-ide", |
| ad05b07 | 68 | tags: ["python", "qt"], |
| ad05b07 | 69 | }, |
| ad05b07 | 70 | { |
| ad05b07 | 71 | title: "tide-jsx", |
| ad05b07 | 72 | description: "Tide + JSX", |
| ad05b07 | 73 | tags: ["rust", "proc-macro", "jsx"], |
| ad05b07 | 74 | }, |
| ad05b07 | 75 | ]; |
| 3c79a68 | 76 | |
| 3c79a68 | 77 | const TOOLS = [ |
| 3c79a68 | 78 | { name: "Stats", link: "https://github.com/exelban/stats", image: "/assets/logos/stats.png" }, |
| 3c79a68 | 79 | { name: "Ghostty", link: "https://github.com/ghostty-org/ghostty", image: "/assets/logos/ghostty.png" }, |
| a3ff3a4 | 80 | { name: "Nushell", link: "https://github.com/nushell/nushell", image: "/assets/logos/nu.png" }, |
| 3c79a68 | 81 | { name: "Zellij", link: "https://zellij.dev/", image: "/assets/logos/zellij.png" }, |
| a3ff3a4 | 82 | { name: "Helix", link: "https://github.com/helix-editor/helix", image: "/assets/logos/helix.png" }, |
| 1980b5c | 83 | { name: "Helium", link: "https://github.com/imputnet/helium", image: "/assets/logos/helium.png" }, |
| a3ff3a4 | 84 | { name: "Hurl", link: "https://github.com/Orange-OpenSource/hurl", image: "/assets/logos/hurl.png" }, |
| ad05b07 | 85 | ]; |
| 3c79a68 | 86 | |
| 3c79a68 | 87 | // Eleventy only unwraps a JS data file's `default` export when it's the module's |
| 3c79a68 | 88 | // sole export, so this file must not have any other named exports (REPOS is |
| 3c79a68 | 89 | // re-read from here by src/_helpers/gitRepos.js via the default export instead). |
| 3c79a68 | 90 | export default { |
| 3c79a68 | 91 | title: "pyrossh", |
| 3c79a68 | 92 | description: "Welcome to my website!", |
| 3c79a68 | 93 | url: "https://pyrossh.dev", |
| 3c79a68 | 94 | navItems: [ |
| 3c79a68 | 95 | { href: "/cv", label: "cv" }, |
| 3c79a68 | 96 | { href: "/posts", label: "posts" }, |
| 3c79a68 | 97 | ], |
| 3c79a68 | 98 | repos: REPOS, |
| 3c79a68 | 99 | tools: TOOLS, |
| 3c79a68 | 100 | year: new Date().getFullYear(), |
| 3c79a68 | 101 | }; |