{"id":29408207,"url":"https://github.com/aminnausin/astrofolio","last_synced_at":"2026-04-15T22:33:47.124Z","repository":{"id":303004812,"uuid":"1010830736","full_name":"aminnausin/astrofolio","owner":"aminnausin","description":"Portfolio site built with Astro","archived":false,"fork":false,"pushed_at":"2025-08-07T04:25:04.000Z","size":21140,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-07T06:20:06.487Z","etag":null,"topics":["astro","docker-image","portfolio","static-site","vue"],"latest_commit_sha":null,"homepage":"https://nausin.me","language":"Astro","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aminnausin.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,"zenodo":null}},"created_at":"2025-06-29T22:10:51.000Z","updated_at":"2025-08-07T04:25:07.000Z","dependencies_parsed_at":"2025-07-05T05:37:02.626Z","dependency_job_id":"d2e2c474-28c2-417f-8bb9-3a9ea3f609ff","html_url":"https://github.com/aminnausin/astrofolio","commit_stats":null,"previous_names":["aminnausin/astrofolio"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aminnausin/astrofolio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminnausin%2Fastrofolio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminnausin%2Fastrofolio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminnausin%2Fastrofolio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminnausin%2Fastrofolio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aminnausin","download_url":"https://codeload.github.com/aminnausin/astrofolio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aminnausin%2Fastrofolio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279016887,"owners_count":26085884,"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-13T02:00:06.723Z","response_time":61,"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","docker-image","portfolio","static-site","vue"],"created_at":"2025-07-11T02:25:00.510Z","updated_at":"2025-10-13T19:15:57.824Z","avatar_url":"https://github.com/aminnausin.png","language":"Astro","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Amin Nausin – Portfolio\n\n\u003cp  align=\"left\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/package-json/v/aminnausin/astrofolio?color=white\u0026logo=docker\u0026logoColor=white\" alt=\"version\"/\u003e\n    \u003ca href=\"https://nausin.me\"\u003e\u003cimg src=\"https://img.shields.io/website?url=https%3A%2F%2Fnausin.me\u0026up_color=purple\u0026down_color=F9322C\u0026label=Build\u0026link=https%3A%2F%2Fnausin.me\u0026logo=digitalocean\u0026logoColor=white\" alt=\"Build Status\"\u003e\u003c/a\u003e\n    \u003cimg src=\"https://repo-view-counter.nausin.me/?repo=aminnausin/astrofolio\u0026colour=F9322C\u0026label=views\" alt=\"Repo View Counter\"\u003e\n\u003c/p\u003e\n\nA stylised personal portfolio site built with [Astro](https://astro.build/), [Vue 3](https://vuejs.org/), and [Tailwind CSS](https://tailwindcss.com/).  \nIt showcases projects, experiences, and skills with dynamic visuals, including a starfield background rendered using [Three.js](https://threejs.org/).\n\n```sh\nnpm run docker:build\n```\n\n\u003e 🧑‍🚀 **Powered by:** Digital Ocean\n\n![preview](https://github.com/user-attachments/assets/bd79858f-c4d8-4a7e-a795-da5c8a37b5ce#gh-light-mode-only)\n![preview](https://github.com/user-attachments/assets/a357ad2c-01a1-49da-9359-467f7381b3be#gh-dark-mode-only)\n\n## 🚀 Project Structure\n\nStructure of my portfolio:\n\n```text\n/\n├── public/\n│   └── favicon.svg\n├── src/\n│   ├── layouts/\n│   │   └── Layout.astro\n│   ├── types/\n│   │   └── types.ts\n│   ├── styles/\n│   │   └── global.css\n│   ├── content/\n│   │   └── collection/index.json\n│   ├── components/\n│   │   └── category/component.[astro/vue]\n│   ├── assets/\n│   │   └── asset.*\n│   └── pages/\n│       └── index.astro\n├── Dockerfile\n├── compose.yaml\n└── package.json\n```\n\n### Features\n\n- **Fully static, fast-loading** site powered by Astro\n- **Dynamic starfield background** using Three.js\n- **Dark/light theme toggle** with animated transitions\n- **Responsive** layout with Tailwind CSS\n- **Dockerised** for easy deployment (Nginx/Alpine-based)\n- **CI via GitHub Actions** with automatic Docker Hub publishing and versioning\n- **CD via [watchtower](https://github.com/containrrr/watchtower)** with auto deployment to Digital Ocean\n\n### Tech Stack\n\n- Astro + Vue\n- TailwindCSS\n- Three.js (for starfield)\n- Docker + Nginx Container\n- GitHub Actions CI\n- Plausible (self-hosted analytics)\n\n## 🧞 Commands\n\nAll commands are run from the root of the project, from a terminal:\n\n| Command                   | Action                                           |\n| :------------------------ | :----------------------------------------------- |\n| `npm install`             | Installs dependencies                            |\n| `npm run dev`             | Starts local dev server at `localhost:4321`      |\n| `npm run build`           | Build your production site to `./dist/`          |\n| `npm run preview`         | Preview your build locally, before deploying     |\n| `npm run type-check`      | Run Astro and Vue type checking for CI           |\n| `npm run docker:build`    | Build and publish Docker image for CI            |\n| `npm run astro ...`       | Run CLI commands like `astro add`, `astro check` |\n\n## 👀 Want to see more of my projects?\n\nFeel free to check [my longest running project](https://github.com/aminnausin/mediaServer) or add my [GitHub Statistics Snapshot](https://github.com/aminnausin/snapshot) to your profile README.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faminnausin%2Fastrofolio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faminnausin%2Fastrofolio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faminnausin%2Fastrofolio/lists"}