{"id":30614340,"url":"https://github.com/clwaniga/book-api-app","last_synced_at":"2026-04-10T06:31:40.384Z","repository":{"id":312334637,"uuid":"1047158831","full_name":"Clwaniga/Book-API-app","owner":"Clwaniga","description":"Book-API-app","archived":false,"fork":false,"pushed_at":"2025-08-29T21:09:30.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-29T23:23:12.918Z","etag":null,"topics":["css","docker","dockercompose","dockerfile","dockernetworking","html","javascript","nginx","nginx-proxy","nginxconf","postgresql","python","redis","yaml"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Clwaniga.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-29T20:52:50.000Z","updated_at":"2025-08-29T21:16:22.000Z","dependencies_parsed_at":"2025-08-29T23:23:39.494Z","dependency_job_id":"bba4b326-7a89-42c9-80e0-6a21634ad41d","html_url":"https://github.com/Clwaniga/Book-API-app","commit_stats":null,"previous_names":["clwaniga/book-api-app"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Clwaniga/Book-API-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Clwaniga%2FBook-API-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Clwaniga%2FBook-API-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Clwaniga%2FBook-API-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Clwaniga%2FBook-API-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Clwaniga","download_url":"https://codeload.github.com/Clwaniga/Book-API-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Clwaniga%2FBook-API-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272815834,"owners_count":24997662,"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","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["css","docker","dockercompose","dockerfile","dockernetworking","html","javascript","nginx","nginx-proxy","nginxconf","postgresql","python","redis","yaml"],"created_at":"2025-08-30T07:01:48.018Z","updated_at":"2025-12-30T19:52:08.081Z","avatar_url":"https://github.com/Clwaniga.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Book API with Flask, Docker, PostgreSQL, Redis, Nginx, and Kubernetes\r\n\r\n\r\n\r\nTechnologies: Python, Flask, PostgreSQL, Redis, Docker, Kubernetes, Nginx\r\n\r\n\r\n\r\nDeveloped a RESTful API to manage book data, utilizing modern tools and technologies for containerization, caching, and orchestration.\r\n\r\n\r\n\r\nKey Features:\r\n\r\nFlask-based API: Built a simple API to create, read, and list books.\r\n\r\nPostgreSQL: Used PostgreSQL as the backend database to store book data.\r\n\r\nRedis Caching: Integrated Redis to cache book data for faster retrieval, optimizing API performance.\r\n\r\nDocker: Containerized the application with Docker for easy deployment and scalability.\r\n\r\nNginx Reverse Proxy: Set up Nginx as a reverse proxy to handle traffic and manage load balancing.\r\n\r\nKubernetes: Orchestrated the application using Kubernetes to manage containerized services (PostgreSQL, Redis, Flask API, and Nginx).\r\n\r\n\r\n\r\n\r\nLearning Outcomes:\r\n\r\nGained hands-on experience in API development with Flask and PostgreSQL.\r\n\r\nLearned about caching strategies using Redis to optimize API response time.\r\n\r\nGained practical knowledge of containerization with Docker for isolating the application and database.\r\n\r\nImplemented microservices orchestration using Kubernetes to deploy and manage application components.\r\n\r\nConfigured reverse proxy with Nginx for efficient traffic routing and handling.\r\n\r\n\r\n\r\nNext Steps:\r\n\r\nIntegrate CI/CD pipelines \r\n\r\nAuto-scaling container orchestration with Kubernetes \r\n\r\nAPI monitoring \u0026 alerting \r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclwaniga%2Fbook-api-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclwaniga%2Fbook-api-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclwaniga%2Fbook-api-app/lists"}