{"id":32142980,"url":"https://github.com/eddyv/personal-website","last_synced_at":"2026-04-12T13:34:06.568Z","repository":{"id":38986637,"uuid":"382543128","full_name":"eddyv/personal-website","owner":"eddyv","description":"Welcome to the source code of my website!","archived":false,"fork":false,"pushed_at":"2025-03-24T13:13:17.000Z","size":15681,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T14:25:08.286Z","etag":null,"topics":["astro","bun","cloudflare","react","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"https://edwardvaisman.ca/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eddyv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-03T06:28:30.000Z","updated_at":"2025-03-24T13:13:20.000Z","dependencies_parsed_at":"2025-02-23T21:28:31.007Z","dependency_job_id":null,"html_url":"https://github.com/eddyv/personal-website","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eddyv/personal-website","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddyv%2Fpersonal-website","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddyv%2Fpersonal-website/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddyv%2Fpersonal-website/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddyv%2Fpersonal-website/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eddyv","download_url":"https://codeload.github.com/eddyv/personal-website/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eddyv%2Fpersonal-website/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280225805,"owners_count":26293888,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-21T02:00:06.614Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astro","bun","cloudflare","react","tailwindcss","typescript"],"created_at":"2025-10-21T07:43:45.842Z","updated_at":"2025-10-21T07:43:50.737Z","avatar_url":"https://github.com/eddyv.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Edward Vaisman's Website\n\nInteractive personal website built with Astro and hosted on Cloudflare Pages. Features a macOS-inspired terminal interface with integrated LLM capabilities for resume queries and interaction. Looking for my resume? Head on over to [my resume repository](https://github.com/eddyv/awesome_cv/blob/main/cv.pdf)\n\n## 🚀 Project Structure\n\n```sh\n/\n├── public/                   # Static assets served as-is\n│   └── favicon.svg          # Browser favicon\n├── src/\n│   ├── assets/              # Project assets (images, fonts, etc.)\n│   │   └── wallpapers/      # Background wallpaper images\n│   ├── components/          # Reusable UI components\n│   ├── hooks/              # React custom hooks\n│   ├── icons/              # Custom SVG icons\n│   ├── layouts/            # Page layout templates\n│   ├── middleware/         # Request middleware (rate limiting, CORS)\n│   ├── pages/             # Route components and API endpoints\n│   │   └── api/           # API route handlers\n│   │       └── llm/       # Language model integration endpoints\n│   ├── styles/            # Global styles and Tailwind config\n│   └── utils/             # Shared utility functions\n└── package.json\n```\n\n## 🧞 Commands\n\nAll commands are run from the root of the project:\n\n| Command              | Action                                      |\n| :------------------- | :------------------------------------------ |\n| `bun install`        | Installs dependencies                       |\n| `bun run dev`        | Starts local dev server at `localhost:4321` |\n| `bun run build`      | Build your production site                  |\n| `bun run preview`    | Preview your build locally with Wrangler    |\n| `bun run deploy`     | Deploy to Cloudflare Pages                  |\n| `bun run format`     | Format code with Prettier                   |\n| `bun run cf-typegen` | Generate Cloudflare types                   |\n\n## 🛠️ Technologies\n\n- [Astro](https://astro.build)\n- [React](https://react.dev)\n- [Tailwind CSS](https://tailwindcss.com)\n- [Cloudflare Pages](https://pages.cloudflare.com)\n- [Google Gemini](https://ai.google.dev/gemini-api/docs#node.js)\n\n## Demo\n\n### Desktop Example\n\n![Desktop](./images/desktop.png)\n\n### Mobile Example\n\n![Mobile](./images/mobile.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feddyv%2Fpersonal-website","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feddyv%2Fpersonal-website","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feddyv%2Fpersonal-website/lists"}