{"id":23647695,"url":"https://github.com/toughyear/gaac","last_synced_at":"2026-03-13T15:03:59.839Z","repository":{"id":65017723,"uuid":"569772295","full_name":"toughyear/gaac","owner":"toughyear","description":"Use Github as a CDN","archived":false,"fork":false,"pushed_at":"2024-01-31T08:21:55.000Z","size":1618,"stargazers_count":44,"open_issues_count":2,"forks_count":14,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-31T23:40:00.392Z","etag":null,"topics":["cdn","github","github-api","nextjs","react"],"latest_commit_sha":null,"homepage":"https://gaac.vercel.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/toughyear.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2022-11-23T15:23:38.000Z","updated_at":"2025-08-28T16:41:33.000Z","dependencies_parsed_at":"2024-12-28T14:41:08.915Z","dependency_job_id":"fca63d7d-68b5-4d63-9a97-982542769343","html_url":"https://github.com/toughyear/gaac","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/toughyear/gaac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fgaac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fgaac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fgaac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fgaac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/toughyear","download_url":"https://codeload.github.com/toughyear/gaac/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toughyear%2Fgaac/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30469144,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-13T11:00:43.441Z","status":"ssl_error","status_checked_at":"2026-03-13T11:00:23.173Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["cdn","github","github-api","nextjs","react"],"created_at":"2024-12-28T14:38:56.275Z","updated_at":"2026-03-13T15:03:59.819Z","avatar_url":"https://github.com/toughyear.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gaac: Github as A CDN :sparkles:\n[![License: MIT](https://img.shields.io/badge/License-MIT-brightgreen.svg)](https://opensource.org/licenses/MIT) ![Beta](https://img.shields.io/badge/version-beta-blueviolet)\n\n**Gaac** is an open source project that allows you to store your images/static files in your public Github repository and use them in blogs, websites, apps, etc. It is built with [NextJS](https://nextjs.org/) and relies on [GitHub API](https://docs.github.com/en/rest) to fetch the files.\n\n### How to use\nVisit [gaac.vercel.app](https://gaac.vercel.app) and follow the instructions to get started.\n\n### Connect\nYou can connect your GitHub account by clicking on the `Connect` button on the homepage.\n![Connect](https://raw.githubusercontent.com/toughyear/blog-uploads/main/uploads/gaac/connect.png)\n\n### Upload\nYou can upload files by the file uploader on the homepage. You can also drag and drop files to upload or paste from the clipboard. All files are uploaded to the `/upload` directory in your public repository.\n![Upload via Gaac](https://raw.githubusercontent.com/toughyear/blog-uploads/main/uploads/gaac/upload.gif)\n\n### Searching\nYou can search for uploaded files using the UI -\n![Search In Gaac](https://raw.githubusercontent.com/toughyear/blog-uploads/main/uploads/gaac/search.gif)\n\nFun fact, the image above was uploaded using Gaac itself.\n### Self hosting\nYou can also host Gaac yourself.\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Ftoughyear%2Fgaac)\n\n### Run locally\nThis is a standard NextJS project. You can run it locally by following the instructions [here](https://nextjs.org/docs/getting-started).\n\nYou will need to set the environment variables `GITHUB_APP_CLIENT_ID` and `GITHUB_APP_CLIENT_ACCESS_TOKEN` in a `.env.local` file.\n\nYou can obtain the `GITHUB_APP_CLIENT_ID` and `GITHUB_APP_CLIENT_ACCESS_TOKEN` by creating a new GitHub OAuth app [here](https://docs.github.com/en/developers/apps/building-github-apps/creating-a-github-app).\n\n### Contributing\n\nContributions are welcome! Please open an issue or a pull request.\n\n### License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE.txt) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoughyear%2Fgaac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoughyear%2Fgaac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoughyear%2Fgaac/lists"}