{"id":21390162,"url":"https://github.com/deanlogan/go-course","last_synced_at":"2025-03-16T13:15:38.178Z","repository":{"id":213578351,"uuid":"733405542","full_name":"DeanLogan/go-course","owner":"DeanLogan","description":"This is the code created while following the go course on freecodecamp's youtube. Link here -\u003e https://www.youtube.com/watch?v=un6ZyFkqFKo\u0026list=WL\u0026index=49\u0026t=161s","archived":false,"fork":false,"pushed_at":"2024-01-02T16:28:57.000Z","size":1157,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-02T07:37:20.587Z","etag":null,"topics":["course","go","golang","rss-aggregator","rss-feed"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/watch?v=un6ZyFkqFKo\u0026list=WL\u0026index=49\u0026t=161s","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/DeanLogan.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":"2023-12-19T08:58:14.000Z","updated_at":"2023-12-31T17:09:01.000Z","dependencies_parsed_at":"2024-01-02T17:46:38.567Z","dependency_job_id":null,"html_url":"https://github.com/DeanLogan/go-course","commit_stats":null,"previous_names":["deanlogan/go-course"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeanLogan%2Fgo-course","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeanLogan%2Fgo-course/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeanLogan%2Fgo-course/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeanLogan%2Fgo-course/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DeanLogan","download_url":"https://codeload.github.com/DeanLogan/go-course/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243871911,"owners_count":20361380,"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":["course","go","golang","rss-aggregator","rss-feed"],"created_at":"2024-11-22T13:16:18.617Z","updated_at":"2025-03-16T13:15:38.140Z","avatar_url":"https://github.com/DeanLogan.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go-Course Repository\n\nWelcome to the Go-Course repository! This repository contains code developed while following the Go programming language course on FreeCodeCamp's YouTube channel. You can find the course [here](https://www.youtube.com/watch?v=un6ZyFkqFKo\u0026amp;list=WL\u0026amp;index=49\u0026amp;t=161s).\n\n## Repository Structure\n\nThe repository is meticulously organized into two primary folders:\n\n1. **course**: This section encompasses the code corresponding to each chapter within the instructional segment of the course.\n\n2. **project**: Here, you'll discover the code associated with the hands-on project developed during the course.\n\nFeel free to explore these folders and delve into the code, enhancing your understanding of Go programming.\n\n# Course Description\n\nThe course is divided into different chapters within the [YT video](https://www.youtube.com/watch?v=un6ZyFkqFKo\u0026amp;list=WL\u0026amp;index=49\u0026amp;t=161s). The concepts are explained within this video by the instructor, the code within the files for each chapter are a combination of the code created by the intstructor and some of my own notes. \n\n# Project: RSS Feed Aggregator\n\nThe project is a RSS feed aggregator. It's a web server that allows clients to:\n\n- Add RSS feeds to be collected\n- Follow and unfollow RSS feeds that other users have added\n- Fetch all of the latest posts from the RSS feeds they follow\n\nRSS feeds are a way for websites to publish updates to their content. You can use this project to keep up with your favorite blogs, news sites, podcasts, and more!\n\n## Getting Started\n\nTo get started with this project, clone the repository and navigate to the project directory.\n\n### Prerequisites\n\n- Go 1.21.5 or later\n- PostgreSQL database\n\n### Environment Variables\n\nThe project requires the following environment variables:\n\n- `PORT`: The port on which the server will run\n- `DB_URL`: The connection string for the PostgreSQL database\n\nYou can set these in a `.env` file at the root of the project directory.\n\n### Project Structure\n\nThe project is organized into several Go files, each responsible for a specific part of the functionality:\n\n- `main.go`: The entry point of the application. It sets up the server and the routes.\n- `handler_user.go`: Contains handlers for user-related routes.\n- `handler_feed.go`: Contains handlers for feed-related routes.\n- `handler_feed_follows.go`: Contains handlers for feed follow-related routes.\n- `handler_readiness.go`: Contains the readiness probe handler.\n- `models.go`: Defines the data models used in the project.\n- `rss.go`: Contains the logic for fetching and parsing RSS feeds.\n- `middleware_auth.go`: Contains the authentication middleware.\n\nAdditionally, the project includes a `/sql` folder:\n\n- `/sql`: Contains SQL scripts for database setup and migrations. These scripts are used to create the necessary tables and relationships in the database.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeanlogan%2Fgo-course","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeanlogan%2Fgo-course","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeanlogan%2Fgo-course/lists"}