{"id":28139102,"url":"https://github.com/kennethnym/7am","last_synced_at":"2025-07-12T17:37:18.038Z","repository":{"id":292691340,"uuid":"981345933","full_name":"kennethnym/7am","owner":"kennethnym","description":"7am delivers daily weather summary to you at 7am","archived":false,"fork":false,"pushed_at":"2025-05-11T15:56:50.000Z","size":200,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-11T16:32:59.969Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","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/kennethnym.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,"zenodo":null}},"created_at":"2025-05-10T22:28:57.000Z","updated_at":"2025-05-11T15:56:53.000Z","dependencies_parsed_at":"2025-05-11T21:46:28.245Z","dependency_job_id":null,"html_url":"https://github.com/kennethnym/7am","commit_stats":null,"previous_names":["kennethnym/7am"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kennethnym/7am","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kennethnym%2F7am","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kennethnym%2F7am/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kennethnym%2F7am/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kennethnym%2F7am/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kennethnym","download_url":"https://codeload.github.com/kennethnym/7am/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kennethnym%2F7am/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265026166,"owners_count":23699903,"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":[],"created_at":"2025-05-14T17:16:23.633Z","updated_at":"2025-07-12T17:37:18.019Z","avatar_url":"https://github.com/kennethnym.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# 7am\n\n[7am.is](https://7am.is)\n\n![](./screenshot/homepage.png)\n\n7am is a website that delivers daily weather summary to the user at 7am.\n\nIt queries weather data from the [MET Norway API](https://developer.yr.no/), then uses Gemini-2.0-Flash to summarize the resulting response.\nFinally, the summary is delivered to the user using the [web push API](https://developer.mozilla.org/en-US/docs/Web/API/Push_API).\n\n## Deploying 7am\n\nBefore running 7am, create a `.env` file using the provided `.env.sample` file as a base template.\nThe sample file also contains documentation of what the variables are for.\n\n### Docker\n\n7am provides a `Dockerfile` that packages 7am into a Docker image that you can run.\nYou can choose to run the image as-is using `docker run`, or, you can also run it as part of a Docker Compose deployment.\n\n- **Volume**: 7am stores runtime data in `/app/data` within the container. The binary itself sits in `/app`\n- **Port**: 7am listens on port 8080 in the container.\n- **Running user**: 7am is run as `nonroot` within the container. You can pass `gid` and `uid` as build args to override the default user and group id.\n\nFor Docker Compose users, a `docker-compose.yml` file is provided for reference.\n\nIf you encounter permission issues, make sure that the data directory on the host is writable by the running user and group.\nFor example, if user id and group id `1001:1001` owns the data directory on the host,\nthen the running user and group in the container need to have the same user id and group id.\nUse `gid` and `uid` build args to override the IDs in the container accordingly.\n\n### Building 7am\n\nTo compile 7am, you need to have Go 1.24 installed. Run:\n\n```\ngo build -o ./server\n```\n\nto build 7am. A binary named `server` binary will be produced (you can choose to name it to something else.)\nUpon initial start up, a directory called `data` will be created in the current working directory.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkennethnym%2F7am","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkennethnym%2F7am","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkennethnym%2F7am/lists"}