{"id":39877273,"url":"https://github.com/emfcamp/badge-2024-app-store","last_synced_at":"2026-01-20T18:03:07.136Z","repository":{"id":233139967,"uuid":"778918099","full_name":"emfcamp/badge-2024-app-store","owner":"emfcamp","description":"App Store Infrastructure for Tildagon","archived":false,"fork":false,"pushed_at":"2026-01-14T10:12:13.000Z","size":564,"stargazers_count":0,"open_issues_count":18,"forks_count":3,"subscribers_count":15,"default_branch":"main","last_synced_at":"2026-01-14T14:21:26.492Z","etag":null,"topics":["emfcamp"],"latest_commit_sha":null,"homepage":"https://apps.badge.emfcamp.org/","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/emfcamp.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-03-28T17:01:58.000Z","updated_at":"2026-01-14T10:12:15.000Z","dependencies_parsed_at":"2024-04-14T04:40:35.061Z","dependency_job_id":"1eeeb3f7-17be-4751-9f95-99e5c67855de","html_url":"https://github.com/emfcamp/badge-2024-app-store","commit_stats":null,"previous_names":["emfcamp/badge-2024-app-store"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/emfcamp/badge-2024-app-store","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emfcamp%2Fbadge-2024-app-store","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emfcamp%2Fbadge-2024-app-store/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emfcamp%2Fbadge-2024-app-store/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emfcamp%2Fbadge-2024-app-store/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/emfcamp","download_url":"https://codeload.github.com/emfcamp/badge-2024-app-store/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emfcamp%2Fbadge-2024-app-store/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28607973,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T16:10:39.856Z","status":"ssl_error","status_checked_at":"2026-01-20T16:10:39.493Z","response_time":117,"last_error":"SSL_read: 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":["emfcamp"],"created_at":"2026-01-18T14:26:04.637Z","updated_at":"2026-01-20T18:03:07.103Z","avatar_url":"https://github.com/emfcamp.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tildagon App Store\n\nHere's the implementation of the [app store](https://apps.badge.emfcamp.org/) for\n[Tildagon](https://tildagon.badge.emfcamp.org/), the EMFcamp 2024 badge.\n\n## Submitting an app\n\nTo make an app available in the badge app store, first follow the [app dev\ninstructions](https://tildagon.badge.emfcamp.org/tildagon-apps/) and put the app in\na repository on GitHub. Currently only GitHub is supported - if you'd like to contribute\nsupport for another platform, see \"Hacking the App Store\" below\n\nOnce your app is in a repository, add the `tildagon-app` topic to your repo.\n\n## Hacking the App Store\n\nThe app store is a little typescript monorepo containing two packages:\n\n- _tildagon-app-directory-api_: _a backend that fetches apps from implemented app\n  sources and exposes them to the web frontend and to the badges_\n- _tildagon-app-directory-site_: _a web frontend showing apps and installation\n  instructions_\n\nYou could add additional app sources, modify the website, or add new features.\n\n### Development\n\nThe repo is set up as a monorepo with separate packages for the API and the\nsite.\n\nWe use bun to run code as it supports TypeScript natively. To get started,\ninstall the correct version of bun. This is specified in mise.toml. You can\ninstall manually, or with mise.\n\n```bash\nmise install\nbun install\n```\n\nSome packages within the monorepo are libraries that have a build step. To build\nthose, run:\n\n```bash\nbun --filter='*' run build\n```\n\nThen you can run the site locally with:\n\n```bash\n# First export a GITHUB_TOKEN environment variable with a GitHub personal access token\nexport GITHUB_TOKEN=your_github_token_here\n# Then run the site\nbun --filter='*' run dev\n```\n\nIf you would like to avoid having to provide a GitHub token, for example you\nintend to work only on the frontend, you can set the following environment\nvariable, which will have the backend provide a dataset pulled from the\nproduction app store on 2025-10-07.\n\n```bash\nexport APP_STORE_MOCK=true\n```\n\n#### API\n\nThe API is a bun server that uses zod to specify the domain models for the\nstore, and implements upstream app \"registries\" - where the app store retrieves\napps from.\n\n#### Site\n\nThe site is an Astro site that uses the API to fetch apps and display them.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femfcamp%2Fbadge-2024-app-store","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Femfcamp%2Fbadge-2024-app-store","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femfcamp%2Fbadge-2024-app-store/lists"}