{"id":15638018,"url":"https://github.com/ickynavigator/portfolio","last_synced_at":"2025-10-24T01:45:16.650Z","repository":{"id":270868571,"uuid":"880033907","full_name":"ickynavigator/portfolio","owner":"ickynavigator","description":"My personal website built using Astro + sanity CMS and hosted on CF pages","archived":false,"fork":false,"pushed_at":"2025-03-26T06:21:50.000Z","size":1979,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T07:26:49.561Z","etag":null,"topics":["astro","astrojs","cloudflare","cloudflare-pages","sanity","sanitycms"],"latest_commit_sha":null,"homepage":"https://v4.obifortune.com","language":"Astro","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ickynavigator.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-10-29T01:46:58.000Z","updated_at":"2025-03-24T20:17:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"0f51be2d-5d49-4873-aea2-5d0d2af67b06","html_url":"https://github.com/ickynavigator/portfolio","commit_stats":null,"previous_names":["ickynavigator/portfolio"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ickynavigator%2Fportfolio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ickynavigator%2Fportfolio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ickynavigator%2Fportfolio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ickynavigator%2Fportfolio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ickynavigator","download_url":"https://codeload.github.com/ickynavigator/portfolio/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246243553,"owners_count":20746311,"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","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","astrojs","cloudflare","cloudflare-pages","sanity","sanitycms"],"created_at":"2024-10-03T11:16:58.494Z","updated_at":"2025-10-24T01:45:16.645Z","avatar_url":"https://github.com/ickynavigator.png","language":"Astro","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Portfolio Sanity Client\n\nMy personal portfolio website built with [Astro](https://astro.build/) project. It uses [Sanity](https://www.sanity.io/) as the CMS (data store). The project is statically generated and deployed to [Cloudflare Pages](https://pages.cloudflare.com/).\n\n## Getting Started\n\n### 🤫 Environment Variables\n\nFill up the .dev.vars file with the variables in the .env.example\n\n| Key                                    | Description                                                      |\n| :------------------------------------- | :--------------------------------------------------------------- |\n| `WEBSITE_URL`                          | URL of the website. Defaults to `https://obifortune.com`         |\n| `PUBLIC_SANITY_VISUAL_EDITING_ENABLED` | Enable visual editing in the studio. Defaults to `false`         |\n| `SANITY_API_READ_TOKEN`                | Read token for the sanity project                                |\n| `PUBLIC_POSTHOG_API_KEY`               | API key for Posthog                                              |\n| `PUBLIC_POSTHOG_API_HOST`              | Host for Posthog events. Defaults to `https://us.i.posthog.com`  |\n| `PUBLIC_POSTHOG_UI_HOST`               | UI Host for Posthog events. Defaults to `https://us.posthog.com` |\n| `WAKATIME_API_KEY`                     | API key for the wakatime API                                     |\n| `LASTFM_API_KEY`                       | Last.fm API key                                                  |\n| `LASTFM_USER`                          | Last.fm username                                                 |\n\n### 🧞 Commands\n\nAll commands are run from the root of the project, from a terminal with `pnpm run`:\n\n| Command      | Action                                                                                 |\n| :----------- | :------------------------------------------------------------------------------------- |\n| `dev`        | Starts local dev server at `localhost:4321`                                            |\n| `build`      | Build your production site to `./dist/`, will generate app types and check astro setup |\n| `preview`    | Deploy a local preview of the build with wrangler                                      |\n| `typegen`    | Generate all user types                                                                |\n| `cf-typegen` | Generate types from bindings and module rules in configuration                         |\n| `sa-dev`     | Starts sanity dev server at `localhost:3333`                                           |\n| `sa-deploy`  | Deploy sanity schema to the cloud                                                      |\n| `sa-typegen` | Extract sanity schema info and generate types                                          |\n| `lint`       | Run eslint on the project                                                              |\n| `lint:fix`   | Run eslint on the project and resolve auto-fixable issues                              |\n| `typecheck`  | Run tsc to check for type errors                                                       |\n\n\u003cdetails\u003e\n\u003csummary\u003eSetting up Sanity\u003c/summary\u003e\n\n### Setting up the sanity project\n\nYou need to create a sanity project to work with this portfolio. This can be done by running this in the root of the app\n\n```bash\npnpm create sanity@latest\n```\n\nThis will prompt you to do a few things\n\n1. Login to your sanity\n1. Create a new project\n1. Don't add configuration files (this has already been done for you)\n1. Select `clean project with no predefined schemas`. You can delete the newly created sanity changes\n1. Go to the [Sanity dashboard](https://www.sanity.io/manage) and select your project to view your project ID and other details\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fickynavigator%2Fportfolio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fickynavigator%2Fportfolio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fickynavigator%2Fportfolio/lists"}