{"id":18074392,"url":"https://github.com/headwinds/northwind-frostpunk","last_synced_at":"2026-07-29T02:31:22.549Z","repository":{"id":59864073,"uuid":"539631089","full_name":"headwinds/northwind-frostpunk","owner":"headwinds","description":"a tutorial exploring golang, the northwind database, and the post apocalypse ","archived":false,"fork":false,"pushed_at":"2023-12-08T17:39:25.000Z","size":11059,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-11T16:21:18.605Z","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/headwinds.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":"2022-09-21T18:28:20.000Z","updated_at":"2022-09-22T00:05:20.000Z","dependencies_parsed_at":"2024-06-19T13:26:09.719Z","dependency_job_id":"0f427223-2712-4178-bc63-0f3176e9ca8e","html_url":"https://github.com/headwinds/northwind-frostpunk","commit_stats":{"total_commits":27,"total_committers":3,"mean_commits":9.0,"dds":0.07407407407407407,"last_synced_commit":"c1d8899b3c34020c8dd497d6bccacdbfc8e0ef23"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/headwinds%2Fnorthwind-frostpunk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/headwinds%2Fnorthwind-frostpunk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/headwinds%2Fnorthwind-frostpunk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/headwinds%2Fnorthwind-frostpunk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/headwinds","download_url":"https://codeload.github.com/headwinds/northwind-frostpunk/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247385633,"owners_count":20930599,"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":"2024-10-31T10:12:28.452Z","updated_at":"2025-10-10T07:06:44.130Z","avatar_url":"https://github.com/headwinds.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# northwind-frostpunk\n\u003cimg src=\"frostpunk.png\" /\u003e\n\nThis is a study exploring golang, the northwind database, and an order status story.  \n\n1. connect Go to Postgres featuring the Northwind database augmented with Frostpunk tables\n2. interact with a Go CLI \n3. simulate orders, view a report \u0026 have fun!\n\nGolang 1.8+ [install gvm](https://jimkang.medium.com/install-go-on-mac-with-homebrew-5fa421fc55f5)\n\n## Example SQL Query \n\n``` \n SELECT  C.category_name\n       ,COUNT(P.category_id) AS total_products\n  FROM categories AS C\n  JOIN products AS P\n    ON P.category_id = C.category_id\n GROUP BY C.category_name\n ORDER BY total_products DESC;\n```\n\n## 1. Database\n\nFirst, start the up the database container in a terminal using the [northwind_psql](https://github.com/pthom/northwind_psql) repo not this repo! \n\n```\ncd northwind_psql\ndocker-compose up\n```\n\nFrom the pgAdmin4 or psql, you will need to modify this database to include the frostpunk-inspired tables.\n\n## 2. API\n\nOpen a second terminal for the API which is back to this repo. \n\n```\ngo run . \n```\n\nYou should see the message `Successfully connected to the Northwind database` \n\n## 3. CLI\n\nThe API has to be running in a separate terminal before you can interact with it via the CLI\n\nOpen a third terminal to run the CLI\n\n```\ncd cli\ngo run . \n```\n## Tests\n\n```\ngo test ./...\n```\n\n## Log\n\n[Captain's Log](log/captainsLog.md)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheadwinds%2Fnorthwind-frostpunk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fheadwinds%2Fnorthwind-frostpunk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheadwinds%2Fnorthwind-frostpunk/lists"}