[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-RezaSi--go-interview-practice":3,"tool-RezaSi--go-interview-practice":65},[4,23,32,40,49,57],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":22},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85092,2,"2026-04-10T11:13:16",[13,14,15,16,17,18,19,20,21],"图像","数据工具","视频","插件","Agent","其他","语言模型","开发框架","音频","ready",{"id":24,"name":25,"github_repo":26,"description_zh":27,"stars":28,"difficulty_score":29,"last_commit_at":30,"category_tags":31,"status":22},5784,"funNLP","fighting41love\u002FfunNLP","funNLP 是一个专为中文自然语言处理（NLP）打造的超级资源库，被誉为\"NLP 民工的乐园”。它并非单一的软件工具，而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。\n\n面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点，funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具，还独特地收录了丰富的垂直领域资源，如法律、医疗、金融行业的专用词库与数据集，甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性，从基础的字典词典到前沿的 BERT、GPT-2 模型代码，再到高质量的标注数据和竞赛方案，应有尽有。\n\n无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师，还是从事人工智能研究的学者，都能在这里找到急需的“武器弹药”。对于开发者而言，它能大幅减少寻找数据和复现模型的时间；对于研究者，它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神，极大地降低了中文自然语言处理的开发与研究成本，是中文 AI 社区不可或缺的宝藏仓库。",79857,1,"2026-04-08T20:11:31",[19,14,18],{"id":33,"name":34,"github_repo":35,"description_zh":36,"stars":37,"difficulty_score":29,"last_commit_at":38,"category_tags":39,"status":22},5773,"cs-video-courses","Developer-Y\u002Fcs-video-courses","cs-video-courses 是一个精心整理的计算机科学视频课程清单，旨在为自学者提供系统化的学习路径。它汇集了全球知名高校（如加州大学伯克利分校、新南威尔士大学等）的完整课程录像，涵盖从编程基础、数据结构与算法，到操作系统、分布式系统、数据库等核心领域，并深入延伸至人工智能、机器学习、量子计算及区块链等前沿方向。\n\n面对网络上零散且质量参差不齐的教学资源，cs-video-courses 解决了学习者难以找到成体系、高难度大学级别课程的痛点。该项目严格筛选内容，仅收录真正的大学层级课程，排除了碎片化的简短教程或商业广告，确保用户能接触到严谨的学术内容。\n\n这份清单特别适合希望夯实计算机基础的开发者、需要补充特定领域知识的研究人员，以及渴望像在校生一样系统学习计算机科学的自学者。其独特的技术亮点在于分类极其详尽，不仅包含传统的软件工程与网络安全，还细分了生成式 AI、大语言模型、计算生物学等新兴学科，并直接链接至官方视频播放列表，让用户能一站式获取高质量的教育资源，免费享受世界顶尖大学的课堂体验。",79792,"2026-04-08T22:03:59",[18,13,14,20],{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":46,"last_commit_at":47,"category_tags":48,"status":22},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,3,"2026-04-04T04:44:48",[17,13,20,19,18],{"id":50,"name":51,"github_repo":52,"description_zh":53,"stars":54,"difficulty_score":46,"last_commit_at":55,"category_tags":56,"status":22},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",75435,"2026-04-12T23:10:18",[19,13,20,18],{"id":58,"name":59,"github_repo":60,"description_zh":61,"stars":62,"difficulty_score":29,"last_commit_at":63,"category_tags":64,"status":22},3215,"awesome-machine-learning","josephmisiti\u002Fawesome-machine-learning","awesome-machine-learning 是一份精心整理的机器学习资源清单，汇集了全球优秀的机器学习框架、库和软件工具。面对机器学习领域技术迭代快、资源分散且难以甄选的痛点，这份清单按编程语言（如 Python、C++、Go 等）和应用场景（如计算机视觉、自然语言处理、深度学习等）进行了系统化分类，帮助使用者快速定位高质量项目。\n\n它特别适合开发者、数据科学家及研究人员使用。无论是初学者寻找入门库，还是资深工程师对比不同语言的技术选型，都能从中获得极具价值的参考。此外，清单还延伸提供了免费书籍、在线课程、行业会议、技术博客及线下聚会等丰富资源，构建了从学习到实践的全链路支持体系。\n\n其独特亮点在于严格的维护标准：明确标记已停止维护或长期未更新的项目，确保推荐内容的时效性与可靠性。作为机器学习领域的“导航图”，awesome-machine-learning 以开源协作的方式持续更新，旨在降低技术探索门槛，让每一位从业者都能高效地站在巨人的肩膀上创新。",72149,"2026-04-03T21:50:24",[20,18],{"id":66,"github_repo":67,"name":68,"description_en":69,"description_zh":70,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":76,"owner_avatar_url":77,"owner_bio":78,"owner_company":78,"owner_location":79,"owner_email":80,"owner_twitter":78,"owner_website":78,"owner_url":81,"languages":82,"stars":111,"forks":112,"last_commit_at":113,"license":114,"difficulty_score":10,"env_os":115,"env_gpu":116,"env_ram":117,"env_deps":118,"category_tags":123,"github_topics":124,"view_count":10,"oss_zip_url":78,"oss_zip_packed_at":78,"status":22,"created_at":145,"updated_at":146,"faqs":147,"releases":178},7012,"RezaSi\u002Fgo-interview-practice","go-interview-practice","Interactive Go Interview Platform - 30+ coding challenges with instant feedback, AI interview simulation, competitive leaderboards, and automated testing. From beginner to advanced levels with real-world scenarios.","go-interview-practice 是一个专为 Go 语言开发者打造的交互式面试练习平台。它旨在解决求职者在准备技术面试时缺乏真实场景演练、即时反馈不足以及难以自我评估水平的痛点。\n\n该平台提供了 30 多个涵盖从入门到高级难度的编码挑战，题目设计贴近实际工作场景。用户可以在内置的代码编辑器中直接编写和调试代码，系统会自动运行测试并立即返回结果与性能分析，帮助开发者快速发现并修正错误。此外，平台还引入了 AI 模拟面试功能，提供智能化的指导与建议；配套的竞争性排行榜则能激发学习动力，让用户清晰看到自己在社区中的进度与成就。\n\ngo-interview-practice 非常适合正在准备 Go 岗位面试的程序员、希望提升编码能力的初学者，以及想要通过实战巩固语法的中高级开发者。其核心亮点在于将传统的刷题体验升级为“写码 - 测试 - 反馈 - 排名”的闭环流程，并结合 AI 导师机制，让备考过程更加高效且有趣。无论是独自打磨技能，还是与全球开发者切磋较量，这里都是提升 Go 技术实力的理想之地。","\n# Go Interview Practice\n\n\u003Cdiv align=\"center\">\n\n[![GitHub Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FRezaSi\u002Fgo-interview-practice?style=for-the-badge&logo=github&color=yellow)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fstargazers)\n[![Go Version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FGo-1.19+-00ADD8?style=for-the-badge&logo=go)](https:\u002F\u002Fgolang.org\u002F)\n[![Challenges](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FChallenges-30+-brightgreen?style=for-the-badge&logo=checkmarx)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n\u003C!-- [![Discord](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-Join%20Community-5865F2?style=for-the-badge&logo=discord)](https:\u002F\u002Fdiscord.gg\u002FG2DH2qpF) -->\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F14255\" target=\"_blank\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_4a68feb902da.png\" alt=\"RezaSi%2Fgo-interview-practice | Trendshift\" style=\"width: 250px;\" width=\"250\"\u002F>\n\u003C\u002Fa>\n\n**⭐ Star the repo if it’s useful to you**\n\u003Cbr\u002F>\n\u003Cbr\u002F>\n\u003C\u002Fdiv>\n\n\n\nWelcome to the **Go Interview Practice** repository! Master Go programming and ace your technical interviews with our interactive coding challenges.\n\n\u003Ca href=\"https:\u002F\u002Fprodpath.dev\" target=\"_blank\">\n          \u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_785ff15f061b.png\" alt=\"Go Interview Practice Banner\" width=\"100%\">\n\u003C\u002Fp>\n\u003C\u002Fa>\n\n**Go Interview Practice is now part of [ProdPath](https:\u002F\u002Fprodpath.dev)** — the complete platform for becoming a production-ready developer with Cloud Labs, System Design, and AI mentorship.\n\nOur interactive platform is live at **[app.gointerview.dev](https:\u002F\u002Fapp.gointerview.dev\u002F)** 🎉 Explore challenges, track your progress, and elevate your Go skills with AI-powered mentorship.\n\n\u003Cdiv align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fapp.gointerview.dev\u002F\" target=\"_blank\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FStart%20Practicing-Now-blue?style=for-the-badge&logo=go\" alt=\"Start Practicing Now\">\n  \u003C\u002Fa>\n\u003C\u002Fdiv>\n\n---\n\n## Visual Overview\n\n### Interactive Challenge Platform\nOur comprehensive web interface provides everything you need to practice and master Go programming:\n\n\n\u003Cdiv align=\"center\">\n  \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F23468aab-a032-4326-9d05-84de86c9128c\" controls width=\"90%\">\u003C\u002Fvideo>\n  \u003Cp>\u003Cem>A brief introduction to the project\u003C\u002Fem>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n---\n\n### Code & Test Experience\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c1cceefaa39e.png\" alt=\"Go Interview Practice Web UI - challenge\" width=\"48%\" style=\"margin-right: 2%;\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_3e0d24dcdd78.png\" alt=\"Go Interview Practice Web UI - result\" width=\"48%\">\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>Interactive Code Editor\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>Write, edit, and test your Go solutions\u003Cbr>with syntax highlighting and real-time feedback\u003C\u002Fem>\n      \u003C\u002Ftd>\n      \u003Ctd width=\"4%\">\u003C\u002Ftd>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>Instant Results & Analytics\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>Get immediate test results, performance metrics,\u003Cbr>and detailed execution analysis\u003C\u002Fem>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n---\n\n### Competitive Leaderboard\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c9e52feda47f.png\" alt=\"Go Interview Practice - Main Leaderboard\" width=\"90%\">\n  \u003Cp>\u003Cem>Beautiful leaderboard showcasing top developers with challenge completion indicators, rankings, and achievements\u003C\u002Fem>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n---\n\n## 🏆 Top 10 Leaderboard\n\nOur most accomplished Go developers, ranked by number of challenges completed:\n\n> **Note**: The data below is automatically updated by GitHub Actions when challenge scoreboards change.\n\n| 🏅 | Developer | Solved | Rate | Achievement | Progress |\n|:---:|:---:|:---:|:---:|:---:|:---|\n| 🥇 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b91985d55efe.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | **30**\u002F30 | **100.0%** | Master | ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ |\n| 🥈 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_714cf9c77622.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[nzamulov](https:\u002F\u002Fgithub.com\u002Fnzamulov)** | **30**\u002F30 | **100.0%** | Master | ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ |\n| 🥉 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_4331b133395c.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | **30**\u002F30 | **100.0%** | Master | ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ |\n| 4 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b40fbd9674d3.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[mick4711](https:\u002F\u002Fgithub.com\u002Fmick4711)** | **23**\u002F30 | **76.7%** | Master | ✅✅✅✅✅✅✅✅✅✅⬜⬜✅✅⬜\u003Cbr\u002F>✅✅✅✅✅✅✅✅⬜⬜✅✅⬜⬜✅ |\n| 5 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_6f89eebdc583.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Gandook](https:\u002F\u002Fgithub.com\u002FGandook)** | **22**\u002F30 | **73.3%** | Master | ✅✅✅✅✅✅✅✅✅✅⬜⬜✅⬜⬜\u003Cbr\u002F>⬜✅✅✅⬜✅✅✅✅✅✅✅⬜⬜✅ |\n| 6 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_ad9f93698bd5.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[y1hao](https:\u002F\u002Fgithub.com\u002Fy1hao)** | **21**\u002F30 | **70.0%** | Master | ✅✅✅✅✅✅✅✅⬜✅⬜⬜✅✅⬜\u003Cbr\u002F>✅✅✅✅✅✅✅✅⬜⬜⬜✅⬜⬜✅ |\n| 7 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_5c26cfac11d1.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[JackDalberg](https:\u002F\u002Fgithub.com\u002FJackDalberg)** | **20**\u002F30 | **66.7%** | Master | ✅✅✅✅✅✅✅✅⬜✅⬜⬜✅✅⬜\u003Cbr\u002F>⬜✅✅✅✅✅✅✅⬜⬜⬜✅⬜⬜✅ |\n| 8 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_d8c340fb0a15.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Ali-Fartoot](https:\u002F\u002Fgithub.com\u002FAli-Fartoot)** | **19**\u002F30 | **63.3%** | Expert | ✅✅✅✅✅✅✅✅⬜✅⬜⬜✅⬜⬜\u003Cbr\u002F>✅✅✅✅⬜✅✅✅⬜⬜⬜✅⬜⬜✅ |\n| 9 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_fa2aee4bc687.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Cpoing](https:\u002F\u002Fgithub.com\u002FCpoing)** | **17**\u002F30 | **56.7%** | Expert | ✅✅✅✅⬜✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>⬜✅✅⬜⬜✅⬜⬜⬜⬜⬜⬜⬜⬜⬜ |\n| 10 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c3a005e2e50a.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[ashwinipatankar](https:\u002F\u002Fgithub.com\u002Fashwinipatankar)** ❤️ | **17**\u002F30 | **56.7%** | Expert | ✅✅✅⬜✅✅✅⬜✅✅⬜⬜✅✅⬜\u003Cbr\u002F>⬜✅✅✅⬜⬜✅✅⬜⬜⬜✅⬜⬜✅ |\n\n\u003Cdiv align=\"center\">\n\n✅ Completed • ⬜ Not Completed\n\n*All 30 challenges shown in two rows*\n\n\u003C\u002Fdiv>\n\n*Updated automatically based on 30 available challenges*\n\n### Challenge Progress Overview\n\n- **Total Challenges Available**: 30\n- **Active Developers**: 252\n- **Most Challenges Solved**: 30 by PolinaSvet\n\n\u003C!-- END_CLASSIC_LEADERBOARD -->\n## 🚀 Package Challenges Leaderboard\n\nMaster Go packages through hands-on challenges! Each package offers a structured learning path with real-world scenarios.\n\n> **Note**: The data below is automatically updated by GitHub Actions when package challenge scoreboards change.\n\n| 🏅 | Developer | Total Solved | Packages | Achievement | Challenge Distribution |\n|:---:|:---:|:---:|:---:|:---:|:---|\n| 🥇 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_4331b133395c.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | **17** | **4** pkgs | 🔥 Package Master | **cobra**: 4 • **fiber**: 4 • **gin**: 4 • **gorm**: 5 |\n| 🥈 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b91985d55efe.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | **8** | **2** pkgs | 💪 Package Advanced | **cobra**: 4 • **gin**: 4 |\n| 🥉 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_83634b7af683.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | **7** | **6** pkgs | 💪 Package Advanced | **cobra**: 1 • **echo**: 1 • **fiber**: 1 • **gin**: 1 • **gorm**: 1 • **mongodb**: 2 |\n| 4 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_7a560a2d7fe6.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[22-7-co](https:\u002F\u002Fgithub.com\u002F22-7-co)** | **5** | **2** pkgs | 💪 Package Advanced | **gin**: 4 • **gorm**: 1 |\n| 5 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_5f5bb38b01f3.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[father-frog](https:\u002F\u002Fgithub.com\u002Ffather-frog)** | **4** | **1** pkg | 🚀 Package Intermediate | **gin**: 4 |\n| 6 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b5d8ce970493.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[q1ngy](https:\u002F\u002Fgithub.com\u002Fq1ngy)** | **4** | **1** pkg | 🚀 Package Intermediate | **gin**: 4 |\n| 7 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_3156899ef01b.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[BrianHuang813](https:\u002F\u002Fgithub.com\u002FBrianHuang813)** | **3** | **1** pkg | 🚀 Package Intermediate | **gin**: 3 |\n| 8 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_bd764b7e3ce1.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Kinsue](https:\u002F\u002Fgithub.com\u002FKinsue)** | **3** | **2** pkgs | 🚀 Package Intermediate | **gin**: 2 • **gorm**: 1 |\n| 9 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c3a005e2e50a.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[ashwinipatankar](https:\u002F\u002Fgithub.com\u002Fashwinipatankar)** ❤️ | **3** | **1** pkg | 🚀 Package Intermediate | **cobra**: 3 |\n| 10 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_d680c25338f4.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[aswinsreeraj](https:\u002F\u002Fgithub.com\u002Faswinsreeraj)** | **3** | **1** pkg | 🚀 Package Intermediate | **gorm**: 3 |\n\n\u003Cdiv align=\"center\">\n\n🚀 **Package Challenges** - Learn Go packages through practical, real-world scenarios\n\n\u003C\u002Fdiv>\n\n### 📦 Per-Package Progress\n\n#### Cobra Package\n\n| Rank | Developer | Completed | Progress |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥉 | **[ashwinipatankar](https:\u002F\u002Fgithub.com\u002Fashwinipatankar)** | 3\u002F4 | 🟩🟩🟩🟩🟩🟩🟩⬜⬜⬜ 75% |\n| 4 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 1\u002F4 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 25% |\n\n#### Echo Package\n\n| Rank | Developer | Completed | Progress |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 1\u002F4 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 25% |\n\n#### Fiber Package\n\n| Rank | Developer | Completed | Progress |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 1\u002F4 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 25% |\n\n#### Gin Package\n\n| Rank | Developer | Completed | Progress |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[22-7-co](https:\u002F\u002Fgithub.com\u002F22-7-co)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥉 | **[father-frog](https:\u002F\u002Fgithub.com\u002Ffather-frog)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 4 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 5 | **[q1ngy](https:\u002F\u002Fgithub.com\u002Fq1ngy)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n\n#### Gorm Package\n\n| Rank | Developer | Completed | Progress |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 5\u002F5 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[aswinsreeraj](https:\u002F\u002Fgithub.com\u002Faswinsreeraj)** | 3\u002F5 | 🟩🟩🟩🟩🟩🟩⬜⬜⬜⬜ 60% |\n| 🥉 | **[grozdovk](https:\u002F\u002Fgithub.com\u002Fgrozdovk)** | 2\u002F5 | 🟩🟩🟩🟩⬜⬜⬜⬜⬜⬜ 40% |\n| 4 | **[22-7-co](https:\u002F\u002Fgithub.com\u002F22-7-co)** | 1\u002F5 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 20% |\n| 5 | **[Kinsue](https:\u002F\u002Fgithub.com\u002FKinsue)** | 1\u002F5 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 20% |\n\n#### Mongodb Package\n\n| Rank | Developer | Completed | Progress |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 2\u002F5 | 🟩🟩🟩🟩⬜⬜⬜⬜⬜⬜ 40% |\n| 🥈 | **[Onkar-25](https:\u002F\u002Fgithub.com\u002FOnkar-25)** | 1\u002F5 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 20% |\n\n### 📊 Package Challenge Statistics\n\n- **Total Package Challenges Available**: 26\n- **Active Package Learners**: 35\n- **Available Packages**: 6 (cobra, echo, fiber, gin, gorm, mongodb)\n\n- **Most Package Challenges Solved**: 17 by odelbos\n\n\u003C!-- END_PACKAGE_LEADERBOARD -->\n## Key Features\n\n- **Interactive Web UI** - Code, test, and submit solutions in your browser\n- **Automated Testing** - Get immediate feedback on your solutions\n- **Automated Scoreboards** - Solutions are automatically scored and ranked\n- **Profile Badges** - Beautiful auto-updating badges for GitHub profiles, LinkedIn, and portfolios\n- **Performance Analytics** - Track execution time and memory usage for your solutions\n- **Comprehensive Learning** - Each challenge includes detailed explanations and resources\n- **Progressive Difficulty** - From beginner to advanced Go concepts\n- **AI Interview Simulation** - Practice with AI-powered code review and interviewer questions\n\n## AI Interview Simulation\n\nTransform your coding practice into realistic interview scenarios with our AI-powered features:\n\n**Real-Time Code Review** - Get instant feedback on code quality, complexity analysis, and improvement suggestions\n\n**Dynamic Interview Questions** - AI generates follow-up questions based on your solution approach\n\n**Progressive Hints** - 4-level hint system from subtle nudges to detailed explanations\n\n**Multi-LLM Support** - Works with Gemini (recommended), OpenAI, or Claude\n\nSimply add your API key to experience interview-style feedback that adapts to your code and challenges you with realistic technical questions.\n\n### AI Interview Experience\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_975389ec8af3.png\" alt=\"AI Code Review - Real-time feedback and analysis\" width=\"48%\" style=\"margin-right: 2%;\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_98b381393839.png\" alt=\"AI Interview Questions - Dynamic follow-up questions\" width=\"48%\">\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>AI Code Review\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>Get instant feedback on code quality, complexity analysis,\u003Cbr>and improvement suggestions from AI\u003C\u002Fem>\n      \u003C\u002Ftd>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>Dynamic Interview Questions\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>AI generates follow-up questions based on your\u003Cbr>solution approach and coding patterns\u003C\u002Fem>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n---\n\n## Quick Start\n\n> **Important**: You must fork this repository first before cloning, otherwise you won't be able to push your solutions or create pull requests!\n\n### Option 1: Web UI (Recommended)\n\n```bash\n# 1. First, fork this repository on GitHub\n#    Go to https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\n#    Click the \"Fork\" button in the top-right corner\n\n# 2. Clone your forked repository (replace 'yourusername' with your GitHub username)\ngit clone https:\u002F\u002Fgithub.com\u002Fyourusername\u002Fgo-interview-practice.git\ncd go-interview-practice\n\n# 3. Start the web interface\ncd web-ui\ngo run main.go\n\n# 4. Open http:\u002F\u002Flocalhost:8080 in your browser\n\n# 5. Optional: Enable AI Features (Recommended) 🤖\n# Add your free Gemini API key to enable AI interview simulation\necho \"AI_PROVIDER=gemini\" > web-ui\u002F.env\necho \"GEMINI_API_KEY=your_actual_api_key_here\" >> web-ui\u002F.env\n# Get your free API key: https:\u002F\u002Fmakersuite.google.com\u002Fapp\u002Fapikey\n# Note: .env files are automatically ignored by git for security\n```\n\n**After solving challenges and submitting solutions:**\n- Your solutions will be automatically saved to your local repository\n- Follow the provided Git commands to commit and push your changes\n- Create a pull request to contribute your solutions back to the main project\n\n### Option 2: GitHub Codespaces (Cloud Development + Web UI)\n\nWant to get started instantly without setting up anything locally? Use GitHub Codespaces!\n\n1. **Fork this repository** (if you haven't already)\n2. **Open in Codespaces**: Click the green \"Code\" button on your forked repository, then select \"Codespaces\" tab\n3. **Create Codespace**: Click \"Create codespace on main\"\n4. **Start the Web UI**: Once the codespace loads, open a terminal and run:\n   ```bash\n   cd web-ui\n   go run main.go\n   ```\n5. **Optional: Enable AI Features**: Add your Gemini API key:\n   ```bash\n   echo \"AI_PROVIDER=gemini\" > .env\n   echo \"GEMINI_API_KEY=your_actual_api_key_here\" >> .env\n   ```\n6. **Access the Web UI**: Click on the \"Ports\" tab in the bottom panel, then click the \"Open in Browser\" button next to port 8080\n\n**Benefits of using Codespaces:**\n- No local setup required\n- Pre-configured Go environment\n- Full VS Code experience in the browser\n- Automatic port forwarding for the web UI\n- All dependencies pre-installed\n- Works on any device with a browser\n\n\u003C!--\n### Option 3: Railway Deployment (One-Click Cloud Hosting)\n\nDeploy your own instance of the platform to the cloud with Railway!\n\n[![Deploy on Railway](https:\u002F\u002Frailway.com\u002Fbutton.svg)](https:\u002F\u002Frailway.com\u002Fdeploy\u002Fgo-interview-practice?referralCode=F6emx6&utm_medium=integration&utm_source=template&utm_campaign=generic)\n\n**Perfect for:**\n- **Teams & Organizations**: Private instance for internal use\n- **Educators**: Custom environment for students\n- **Customization**: Fork and modify for specific needs\n- **Always Available**: 24\u002F7 cloud hosting with automatic scaling\n\n**Setup Steps:**\n1. **Click Deploy Button** above\n2. **Configure AI Features** (optional but recommended):\n   - Choose AI provider: `gemini` (recommended - free tier)\n   - Add API key: [Get free Gemini key](https:\u002F\u002Fmakersuite.google.com\u002Fapp\u002Fapikey)\n3. **Access Your Platform**: Railway provides instant public URL\n4. **Start Using**: Full platform with all challenges immediately available\n-->\n\n### Option 3: Command Line\n\n```bash\n# 1. Fork the repository first (see step 1 above)\n# 2. Clone your fork and set up a challenge workspace\ngit clone https:\u002F\u002Fgithub.com\u002Fyourusername\u002Fgo-interview-practice.git\ncd go-interview-practice\n.\u002Fcreate_submission.sh 1  # For challenge #1\n\n# 3. Implement your solution in the editor of your choice\n\n# 4. Run tests\ncd challenge-1\n.\u002Frun_tests.sh\n```\n\n## Profile Badges for Contributors\n\nShowcase your Go programming achievements with auto-updating profile badges for GitHub profiles, portfolios, and personal websites.\n\n### Examples\n\n[![Go Interview Practice Achievement](https:\u002F\u002Fraw.githubusercontent.com\u002FRezaSi\u002Fgo-interview-practice\u002Fmain\u002Fbadges\u002FRezaSi.svg)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n\n[![Go Interview Practice Compact](https:\u002F\u002Fraw.githubusercontent.com\u002FRezaSi\u002Fgo-interview-practice\u002Fmain\u002Fbadges\u002FRezaSi_compact.svg)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n\n### Quick Usage\n\n```markdown\n[![Go Interview Practice Achievement](https:\u002F\u002Fraw.githubusercontent.com\u002FRezaSi\u002Fgo-interview-practice\u002Fmain\u002Fbadges\u002FYOUR_USERNAME.svg)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n```\n\nAfter contributing solutions, your badges are automatically generated in [`badges\u002FYOUR_USERNAME_badges.md`](badges\u002F) with multiple formats ready to use.\n\n**[Complete Badge Guide & Examples →](docs\u002Fprofile-badges-guide.md)**\n\n## Challenge Categories\n\n### Beginner\nPerfect for those new to Go or brushing up on fundamentals\n- **[Challenge 1](.\u002Fchallenge-1)**: Sum of Two Numbers\n- **[Challenge 2](.\u002Fchallenge-2)**: Reverse a String\n- **[Challenge 3](.\u002Fchallenge-3)**: Employee Data Management\n- **[Challenge 6](.\u002Fchallenge-6)**: Word Frequency Counter\n- **[Challenge 18](.\u002Fchallenge-18)**: Temperature Converter\n- **[Challenge 21](.\u002Fchallenge-21)**: Binary Search Implementation\n- **[Challenge 22](.\u002Fchallenge-22)**: Greedy Coin Change\n\n### Intermediate\nFor developers familiar with Go who want to deepen their knowledge\n- **[Challenge 4](.\u002Fchallenge-4)**: Concurrent Graph BFS Queries\n- **[Challenge 5](.\u002Fchallenge-5)**: HTTP Authentication Middleware\n- **[Challenge 7](.\u002Fchallenge-7)**: Bank Account with Error Handling\n- **[Challenge 10](.\u002Fchallenge-10)**: Polymorphic Shape Calculator\n- **[Challenge 13](.\u002Fchallenge-13)**: SQL Database Operations\n- **[Challenge 14](.\u002Fchallenge-14)**: Microservices with gRPC\n- **[Challenge 16](.\u002Fchallenge-16)**: Performance Optimization\n- **[Challenge 17](.\u002Fchallenge-17)**: Interactive Debugging Tutorial\n- **[Challenge 19](.\u002Fchallenge-19)**: Slice Operations\n- **[Challenge 20](.\u002Fchallenge-20)**: Circuit Breaker Pattern\n- **[Challenge 23](.\u002Fchallenge-23)**: String Pattern Matching\n- **[Challenge 27](.\u002Fchallenge-27)**: Go Generics Data Structures\n- **[Challenge 30](.\u002Fchallenge-30)**: Context Management Implementation\n\n### Advanced\nChallenging problems that test mastery of Go and computer science concepts\n- **[Challenge 8](.\u002Fchallenge-8)**: Chat Server with Channels\n- **[Challenge 9](.\u002Fchallenge-9)**: RESTful Book Management API\n- **[Challenge 11](.\u002Fchallenge-11)**: Concurrent Web Content Aggregator\n- **[Challenge 12](.\u002Fchallenge-12)**: File Processing Pipeline\n- **[Challenge 15](.\u002Fchallenge-15)**: OAuth2 Authentication\n- **[Challenge 24](.\u002Fchallenge-24)**: Dynamic Programming - Longest Increasing Subsequence\n- **[Challenge 25](.\u002Fchallenge-25)**: Graph Algorithms - Shortest Path\n- **[Challenge 26](.\u002Fchallenge-26)**: Regular Expression Text Processor\n- **[Challenge 28](.\u002Fchallenge-28)**: Cache Implementation with Multiple Eviction Policies\n- **[Challenge 29](.\u002Fchallenge-29)**: Rate Limiter Implementation\n\n## How to Use This Repository\n\n### 1. Explore Challenges\nBrowse challenges through the web UI or in the code repository. Each challenge includes:\n- Detailed problem statement\n- Function signature to implement\n- Comprehensive test cases\n- Learning resources\n\n### 2. Implement Your Solution\nWrite code that solves the challenge requirements and passes all test cases.\n\n### 3. Test & Refine\nUse the built-in testing tools to validate your solution, then refine it for:\n- Correctness\n- Efficiency\n- Code quality\n\n### 4. Submit & Compare\nSubmit your passing solution to be added to the scoreboard:\n- Your solution is automatically tested and scored\n- Execution time and resource usage are recorded\n- Your solution is ranked among other submissions\n- Access detailed performance metrics to optimize further\n\n### 5. Learn & Progress\nReview the learning materials to deepen your understanding of the concepts used.\n\n## Contributing\n\nWe welcome contributions! You can contribute in several ways:\n\n**Submit Solutions:**\n- Solve existing classic or package challenges\n- Submit your solutions via pull request\n\n**Add New Challenges:**\n- **Package Challenges:** Framework-specific practical applications (Gin, Cobra, GORM, etc.)\n\n**Quick Steps:**\n1. Fork the repository\n2. Choose challenge type (classic or package-based)\n3. Follow our template structure\n4. Submit a pull request\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines on both challenge types.\n\n---\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Stargazers over time\n[![Stargazers over time](https:\u002F\u002Fstarchart.cc\u002FRezaSi\u002Fgo-interview-practice.svg?variant=adaptive)](https:\u002F\u002Fstarchart.cc\u002FRezaSi\u002Fgo-interview-practice)\n\n---\n\n## 🏢 Premium Sponsors\n\n*Thank you to our premium sponsors who make this project possible!*\n\n### 🥈 Silver Sponsors\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\">\n        \u003Ca href=\"https:\u002F\u002Fcoderabbit.ai\" target=\"_blank\">\n          \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_8772f7773bcf.png\" alt=\"CodeRabbit\" width=\"80\" height=\"80\" style=\"border-radius: 20px; border: 2px solid #e1e5e9;\">\n        \u003C\u002Fa>\n        \u003Cbr>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n### 🏗️ Infrastructure Sponsors\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\">\n        \u003Ca href=\"https:\u002F\u002Fsentry.io\" target=\"_blank\">\n          \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_1e560ab132a1.png\" alt=\"Sentry\" width=\"80\" height=\"80\" style=\"border-radius: 20px; border: 2px solid #e1e5e9;\">\n        \u003C\u002Fa>\n        \u003Cbr>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n\n###### Interested in premium sponsorship? [Contact us](https:\u002F\u002Fgithub.com\u002Fsponsors\u002FRezaSi) to feature your company logo here and on our platform!\n\n---\n\n\n**Happy Coding!** 💻\n","# Go 面试练习\n\n\u003Cdiv align=\"center\">\n\n[![GitHub 星标](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FRezaSi\u002Fgo-interview-practice?style=for-the-badge&logo=github&color=yellow)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fstargazers)\n[![Go 版本](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FGo-1.19+-00ADD8?style=for-the-badge&logo=go)](https:\u002F\u002Fgolang.org\u002F)\n[![挑战数量](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FChallenges-30+-brightgreen?style=for-the-badge&logo=checkmarx)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n\u003C!-- [![Discord](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-Join%20Community-5865F2?style=for-the-badge&logo=discord)](https:\u002F\u002Fdiscord.gg\u002FG2DH2qpF) -->\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F14255\" target=\"_blank\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_4a68feb902da.png\" alt=\"RezaSi%2Fgo-interview-practice | Trendshift\" style=\"width: 250px;\" width=\"250\"\u002F>\n\u003C\u002Fa>\n\n**⭐ 如果这个仓库对你有帮助，请给它点个星**\n\u003Cbr\u002F>\n\u003Cbr\u002F>\n\u003C\u002Fdiv>\n\n\n\n欢迎来到 **Go 面试练习** 仓库！通过我们的交互式编程挑战，掌握 Go 编程并轻松应对技术面试。\n\n\u003Ca href=\"https:\u002F\u002Fprodpath.dev\" target=\"_blank\">\n          \u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_785ff15f061b.png\" alt=\"Go Interview Practice Banner\" width=\"100%\">\n\u003C\u002Fp>\n\u003C\u002Fa>\n\n**Go 面试练习现在已成为 [ProdPath](https:\u002F\u002Fprodpath.dev)** 的一部分——一个集云实验室、系统设计和 AI 辅导于一体的完整平台，助你成为一名具备生产级开发能力的工程师。\n\n我们的交互式平台已上线至 **[app.gointerview.dev](https:\u002F\u002Fapp.gointerview.dev\u002F)** 🎉 探索挑战、跟踪进度，并借助 AI 驱动的辅导提升你的 Go 技能。\n\n\u003Cdiv align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fapp.gointerview.dev\u002F\" target=\"_blank\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F开始练习-现在-blue?style=for-the-badge&logo=go\" alt=\"立即开始练习\">\n  \u003C\u002Fa>\n\u003C\u002Fdiv>\n\n---\n\n## 可视化概览\n\n### 交互式挑战平台\n我们全面的网页界面提供了你练习和精通 Go 编程所需的一切：\n\n\n\u003Cdiv align=\"center\">\n  \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F23468aab-a032-4326-9d05-84de86c9128c\" controls width=\"90%\">\u003C\u002Fvideo>\n  \u003Cp>\u003Cem>项目简要介绍\u003C\u002Fem>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n---\n\n### 代码与测试体验\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c1cceefaa39e.png\" alt=\"Go Interview Practice Web UI - 挑战\" width=\"48%\" style=\"margin-right: 2%;\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_3e0d24dcdd78.png\" alt=\"Go Interview Practice Web UI - 结果\" width=\"48%\">\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>交互式代码编辑器\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>编写、编辑和测试你的 Go 解决方案\u003Cbr>支持语法高亮和实时反馈\u003C\u002Fem>\n      \u003C\u002Ftd>\n      \u003Ctd width=\"4%\">\u003C\u002Ftd>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>即时结果与分析\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>获取即时测试结果、性能指标\u003Cbr>以及详细的执行分析\u003C\u002Fem>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n---\n\n### 竞争性排行榜\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c9e52feda47f.png\" alt=\"Go Interview Practice - 主排行榜\" width=\"90%\">\n  \u003Cp>\u003Cem>精美的排行榜展示了顶尖开发者，包含挑战完成情况、排名和成就\u003C\u002Fem>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\n---\n\n## 🏆 前十名排行榜\n\n我们最优秀的 Go 开发者，按完成的挑战数量排序：\n\n> **注**：以下数据由 GitHub Actions 在挑战排行榜更新时自动同步。\n\n| 🏅 | 开发者 | 已解决 | 完成率 | 成就 | 进度 |\n|:---:|:---:|:---:|:---:|:---:|:---|\n| 🥇 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b91985d55efe.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | **30**\u002F30 | **100.0%** | 大师 | ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ |\n| 🥈 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_714cf9c77622.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[nzamulov](https:\u002F\u002Fgithub.com\u002Fnzamulov)** | **30**\u002F30 | **100.0%** | 大师 | ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ |\n| 🥉 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_4331b133395c.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | **30**\u002F30 | **100.0%** | 大师 | ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ |\n| 第4名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b40fbd9674d3.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[mick4711](https:\u002F\u002Fgithub.com\u002Fmick4711)** | **23**\u002F30 | **76.7%** | 大师 | ✅✅✅✅✅✅✅✅✅✅⬜⬜✅✅⬜\u003Cbr\u002F>✅✅✅✅✅✅✅✅⬜⬜✅✅⬜⬜✅ |\n| 第5名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_6f89eebdc583.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Gandook](https:\u002F\u002Fgithub.com\u002FGandook)** | **22**\u002F30 | **73.3%** | 大师 | ✅✅✅✅✅✅✅✅✅✅⬜⬜✅⬜⬜\u003Cbr\u002F>⬜✅✅✅⬜✅✅✅✅✅✅✅⬜⬜✅ |\n| 第6名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_ad9f93698bd5.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[y1hao](https:\u002F\u002Fgithub.com\u002Fy1hao)** | **21**\u002F30 | **70.0%** | 大师 | ✅✅✅✅✅✅✅✅⬜✅⬜⬜✅✅⬜\u003Cbr\u002F>✅✅✅✅✅✅✅✅⬜⬜⬜✅⬜⬜✅ |\n| 第7名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_5c26cfac11d1.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[JackDalberg](https:\u002F\u002Fgithub.com\u002FJackDalberg)** | **20**\u002F30 | **66.7%** | 大师 | ✅✅✅✅✅✅✅✅⬜✅⬜⬜✅✅⬜\u003Cbr\u002F>⬜✅✅✅✅✅✅✅⬜⬜⬜✅⬜⬜✅ |\n| 第8名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_d8c340fb0a15.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Ali-Fartoot](https:\u002F\u002Fgithub.com\u002FAli-Fartoot)** | **19**\u002F30 | **63.3%** | 专家 | ✅✅✅✅✅✅✅✅⬜✅⬜⬜✅⬜⬜\u003Cbr\u002F>✅✅✅✅⬜✅✅✅⬜⬜⬜✅⬜⬜✅ |\n| 第9名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_fa2aee4bc687.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Cpoing](https:\u002F\u002Fgithub.com\u002FCpoing)** | **17**\u002F30 | **56.7%** | 专家 | ✅✅✅✅⬜✅✅✅✅✅✅✅✅✅✅\u003Cbr\u002F>⬜✅✅⬜⬜✅⬜⬜⬜⬜⬜⬜⬜ |\n| 第10名 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c3a005e2e50a.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[ashwinipatankar](https:\u002F\u002Fgithub.com\u002Fashwinipatankar)** ❤️ | **17**\u002F30 | **56.7%** | 专家 | ✅✅✅⬜✅✅✅⬜✅✅⬜⬜✅✅⬜\u003Cbr\u002F>⬜✅✅✅⬜⬜✅✅⬜⬜⬜✅⬜⬜✅ |\n\n\u003Cdiv align=\"center\">\n\n✅ 已完成 • ⬜ 未完成\n\n*所有30个挑战分两行展示*\n\n\u003C\u002Fdiv>\n\n*根据当前可用的30个挑战自动更新*\n\n### 挑战进度概览\n\n- **总挑战数**：30\n- **活跃开发者**：252\n- **最多完成挑战数**：30，由 PolinaSvet 完成\n\n\u003C!-- END_CLASSIC_LEADERBOARD -->\n\n## 🚀 包挑战排行榜\n\n通过实践挑战掌握 Go 语言的各个包！每个包都提供了一个包含真实场景的结构化学习路径。\n\n> **注意**：以下数据会在包挑战积分榜发生变化时由 GitHub Actions 自动更新。\n\n| 🏅 | 开发者 | 已解决总数 | 包数量 | 成就 | 挑战分布 |\n|:---:|:---:|:---:|:---:|:---:|:---|\n| 🥇 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_4331b133395c.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | **17** | **4** 个包 | 🔥 包大师 | **cobra**: 4 • **fiber**: 4 • **gin**: 4 • **gorm**: 5 |\n| 🥈 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b91985d55efe.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | **8** | **2** 个包 | 💪 包进阶 | **cobra**: 4 • **gin**: 4 |\n| 🥉 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_83634b7af683.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | **7** | **6** 个包 | 💪 包进阶 | **cobra**: 1 • **echo**: 1 • **fiber**: 1 • **gin**: 1 • **gorm**: 1 • **mongodb**: 2 |\n| 4 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_7a560a2d7fe6.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[22-7-co](https:\u002F\u002Fgithub.com\u002F22-7-co)** | **5** | **2** 个包 | 💪 包进阶 | **gin**: 4 • **gorm**: 1 |\n| 5 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_5f5bb38b01f3.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[father-frog](https:\u002F\u002Fgithub.com\u002Ffather-frog)** | **4** | **1** 个包 | 🚀 包中级 | **gin**: 4 |\n| 6 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_b5d8ce970493.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[q1ngy](https:\u002F\u002Fgithub.com\u002Fq1ngy)** | **4** | **1** 个包 | 🚀 包中级 | **gin**: 4 |\n| 7 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_3156899ef01b.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[BrianHuang813](https:\u002F\u002Fgithub.com\u002FBrianHuang813)** | **3** | **1** 个包 | 🚀 包中级 | **gin**: 3 |\n| 8 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_bd764b7e3ce1.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[Kinsue](https:\u002F\u002Fgithub.com\u002FKinsue)** | **3** | **2** 个包 | 🚀 包中级 | **gin**: 2 • **gorm**: 1 |\n| 9 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_c3a005e2e50a.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[ashwinipatankar](https:\u002F\u002Fgithub.com\u002Fashwinipatankar)** ❤️ | **3** | **1** 个包 | 🚀 包中级 | **cobra**: 3 |\n| 10 | \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_d680c25338f4.png\" width=\"24\" height=\"24\" style=\"border-radius: 50%;\">\u003Cbr\u002F>**[aswinsreeraj](https:\u002F\u002Fgithub.com\u002Faswinsreeraj)** | **3** | **1** 个包 | 🚀 包中级 | **gorm**: 3 |\n\n\u003Cdiv align=\"center\">\n\n🚀 **包挑战** - 通过实际的、真实的场景学习 Go 包\n\n\u003C\u002Fdiv>\n\n### 📦 各包进度\n\n#### Cobra 包\n\n| 排名 | 开发者 | 已完成 | 进度 |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥉 | **[ashwinipatankar](https:\u002F\u002Fgithub.com\u002Fashwinipatankar)** | 3\u002F4 | 🟩🟩🟩🟩🟩🟩🟩⬜⬜⬜ 75% |\n| 4 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 1\u002F4 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 25% |\n\n#### Echo 包\n\n| 排名 | 开发者 | 已完成 | 进度 |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 1\u002F4 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 25% |\n\n#### Fiber 包\n\n| 排名 | 开发者 | 已完成 | 进度 |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 1\u002F4 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 25% |\n\n#### Gin 包\n\n| 排名 | 开发者 | 已完成 | 进度 |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[22-7-co](https:\u002F\u002Fgithub.com\u002F22-7-co)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[PolinaSvet](https:\u002F\u002Fgithub.com\u002FPolinaSvet)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥉 | **[father-frog](https:\u002F\u002Fgithub.com\u002Ffather-frog)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 4 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 5 | **[q1ngy](https:\u002F\u002Fgithub.com\u002Fq1ngy)** | 4\u002F4 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n\n#### Gorm 包\n\n| 排名 | 开发者 | 已完成 | 进度 |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[odelbos](https:\u002F\u002Fgithub.com\u002Fodelbos)** | 5\u002F5 | 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100% |\n| 🥈 | **[aswinsreeraj](https:\u002F\u002Fgithub.com\u002Faswinsreeraj)** | 3\u002F5 | 🟩🟩🟩🟩🟩🟩⬜⬜⬜⬜ 60% |\n| 🥉 | **[grozdovk](https:\u002F\u002Fgithub.com\u002Fgrozdovk)** | 2\u002F5 | 🟩🟩🟩🟩⬜⬜⬜⬜⬜⬜ 40% |\n| 4 | **[22-7-co](https:\u002F\u002Fgithub.com\u002F22-7-co)** | 1\u002F5 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 20% |\n| 5 | **[Kinsue](https:\u002F\u002Fgithub.com\u002FKinsue)** | 1\u002F5 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 20% |\n\n#### Mongodb 包\n\n| 排名 | 开发者 | 已完成 | 进度 |\n|:---:|:---:|:---:|:---|\n| 🥇 | **[RezaSi](https:\u002F\u002Fgithub.com\u002FRezaSi)** | 2\u002F5 | 🟩🟩🟩🟩⬜⬜⬜⬜⬜⬜ 40% |\n| 🥈 | **[Onkar-25](https:\u002F\u002Fgithub.com\u002FOnkar-25)** | 1\u002F5 | 🟩🟩⬜⬜⬜⬜⬜⬜⬜⬜ 20% |\n\n### 📊 包挑战统计数据\n\n- **可用的包挑战总数**：26\n- **活跃的包学习者**：35\n- **可用的包**：6 个（cobra、echo、fiber、gin、gorm、mongodb）\n\n- **已解决最多的包挑战数**：odelbos 的 17 个\n\n\u003C!-- END_PACKAGE_LEADERBOARD -->\n## 核心功能\n\n- **交互式 Web 界面** - 在浏览器中编写、测试并提交解决方案\n- **自动化测试** - 即时获得对解决方案的反馈\n- **自动化积分榜** - 解决方案会自动评分并排名\n- **个人资料徽章** - 为 GitHub 个人资料、LinkedIn 和作品集提供美观且自动更新的徽章\n- **性能分析** - 跟踪解决方案的执行时间和内存使用情况\n- **全面的学习资源** - 每个挑战都包含详细的解释和参考资料\n- **循序渐进的难度** - 从入门到高级的 Go 语言概念\n- **AI 面试模拟** - 通过 AI 驱动的代码审查和面试问题进行练习\n\n## AI 面试模拟\n\n借助我们的 AI 驱动功能，将你的编码练习转化为逼真的面试场景：\n\n**实时代码审查** - 即时获取关于代码质量、复杂度分析以及改进建议的反馈\n\n**动态面试问题** - AI 会根据你的解题思路生成后续问题\n\n**逐步提示系统** - 4 级提示系统，从轻微引导到详细解释\n\n**多模型支持** - 支持 Gemini（推荐）、OpenAI 或 Claude\n\n只需添加你的 API 密钥，即可体验适应你代码的面试式反馈，并以真实的 technical 问题来挑战自己。\n\n### AI 面试体验\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_975389ec8af3.png\" alt=\"AI 代码评审 - 实时反馈与分析\" width=\"48%\" style=\"margin-right: 2%;\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_98b381393839.png\" alt=\"AI 面试问题 - 动态跟进问题\" width=\"48%\">\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>AI 代码评审\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>通过 AI 获得代码质量、复杂度分析以及改进建议的即时反馈\u003C\u002Fem>\n      \u003C\u002Ftd>\n      \u003Ctd align=\"center\" width=\"48%\">\n        \u003Cstrong>动态面试问题\u003C\u002Fstrong>\u003Cbr>\n        \u003Cem>AI 会根据你的解题思路和编码模式生成后续问题\u003C\u002Fem>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n---\n\n## 快速开始\n\n> **重要提示**：在克隆之前，你必须先 fork 这个仓库，否则将无法推送你的解决方案或创建 pull request！\n\n### 选项 1：Web UI（推荐）\n\n```bash\n# 1. 首先，在 GitHub 上 fork 此仓库\n#    访问 https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\n#    点击右上角的“Fork”按钮\n\n# 2. 克隆你 fork 的仓库（将 'yourusername' 替换为你的 GitHub 用户名）\ngit clone https:\u002F\u002Fgithub.com\u002Fyourusername\u002Fgo-interview-practice.git\ncd go-interview-practice\n\n# 3. 启动 Web 界面\ncd web-ui\ngo run main.go\n\n# 4. 在浏览器中打开 http:\u002F\u002Flocalhost:8080\n\n# 5. 可选：启用 AI 功能（推荐）🤖\n# 添加你的免费 Gemini API 密钥以启用 AI 面试模拟\necho \"AI_PROVIDER=gemini\" > web-ui\u002F.env\necho \"GEMINI_API_KEY=your_actual_api_key_here\" >> web-ui\u002F.env\n# 获取你的免费 API 密钥：https:\u002F\u002Fmakersuite.google.com\u002Fapp\u002Fapikey\n# 注意：为了安全起见，.env 文件会被 Git 自动忽略\n```\n\n**解决挑战并提交解答后：**\n- 你的解答会自动保存到本地仓库\n- 按照提供的 Git 命令提交并推送更改\n- 创建一个 pull request，将你的解答贡献回主项目\n\n### 选项 2：GitHub Codespaces（云端开发 + Web UI）\n\n想无需本地配置即可立即开始吗？使用 GitHub Codespaces 吧！\n\n1. **Fork 此仓库**（如果你还没有进行过此操作）\n2. **在 Codespaces 中打开**：点击你 fork 的仓库上的绿色“Code”按钮，然后选择“Codespaces”选项卡\n3. **创建 Codespace**：点击“Create codespace on main”\n4. **启动 Web UI**：当 Codespace 加载完成后，打开终端并运行：\n   ```bash\n   cd web-ui\n   go run main.go\n   ```\n5. **可选：启用 AI 功能**：添加你的 Gemini API 密钥：\n   ```bash\n   echo \"AI_PROVIDER=gemini\" > .env\n   echo \"GEMINI_API_KEY=your_actual_api_key_here\" >> .env\n   ```\n6. **访问 Web UI**：点击底部面板中的“Ports”选项卡，然后点击端口 8080 旁边的“Open in Browser”按钮\n\n**使用 Codespaces 的优势：**\n- 无需本地设置\n- 预配置好的 Go 环境\n- 浏览器中的完整 VS Code 体验\n- 自动端口转发用于 Web UI\n- 所有依赖项已预装\n- 可在任何具备浏览器的设备上使用\n\n\u003C!--\n### 选项 3：Railway 部署（一键云托管）\n\n使用 Railway 将平台部署到云端，拥有属于你自己的实例！\n\n[![Deploy on Railway](https:\u002F\u002Frailway.com\u002Fbutton.svg)](https:\u002F\u002Frailway.com\u002Fdeploy\u002Fgo-interview-practice?referralCode=F6emx6&utm_medium=integration&utm_source=template&utm_campaign=generic)\n\n**非常适合：**\n- **团队与组织**：供内部使用的私有实例\n- **教育工作者**：为学生定制的环境\n- **自定义需求**：可根据特定需求 fork 并修改\n- **随时可用**：24\u002F7 云托管，支持自动扩展\n\n**设置步骤：**\n1. **点击上方的部署按钮**\n2. **配置 AI 功能**（可选但推荐）：\n   - 选择 AI 提供商：`gemini`（推荐 - 免费层级）\n   - 添加 API 密钥：[获取免费 Gemini 密钥](https:\u002F\u002Fmakersuite.google.com\u002Fapp\u002Fapikey)\n3. **访问你的平台**：Railway 会提供即时的公共 URL\n4. **开始使用**：完整的平台及所有挑战即刻可用\n-->\n\n### 选项 3：命令行\n\n```bash\n# 1. 首先 fork 仓库（参见上述步骤 1）\n# 2. 克隆你的 fork，并设置挑战工作区\ngit clone https:\u002F\u002Fgithub.com\u002Fyourusername\u002Fgo-interview-practice.git\ncd go-interview-practice\n.\u002Fcreate_submission.sh 1  # 对于第 1 号挑战\n\n# 3. 使用你喜欢的编辑器实现你的解法\n\n# 4. 运行测试\ncd challenge-1\n.\u002Frun_tests.sh\n```\n\n## 贡献者个人资料徽章\n\n用自动更新的个人资料徽章展示你在 Go 编程方面的成就，适用于 GitHub 个人资料、作品集和个人网站。\n\n### 示例\n\n[![Go 面试练习成就徽章](https:\u002F\u002Fraw.githubusercontent.com\u002FRezaSi\u002Fgo-interview-practice\u002Fmain\u002Fbadges\u002FRezaSi.svg)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n\n[![Go 面试练习紧凑型徽章](https:\u002F\u002Fraw.githubusercontent.com\u002FRezaSi\u002Fgo-interview-practice\u002Fmain\u002Fbadges\u002FRezaSi_compact.svg)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n\n### 快速使用方法\n\n```markdown\n[![Go 面试练习成就徽章](https:\u002F\u002Fraw.githubusercontent.com\u002FRezaSi\u002Fgo-interview-practice\u002Fmain\u002Fbadges\u002FYOUR_USERNAME.svg)](https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice)\n```\n\n在提交解决方案后，你的徽章会自动在 [`badges\u002FYOUR_USERNAME_badges.md`](badges\u002F) 中生成，提供多种格式供你直接使用。\n\n**[完整徽章指南与示例 →](docs\u002Fprofile-badges-guide.md)**\n\n## 挑战分类\n\n### 初级\n非常适合刚接触 Go 或正在复习基础知识的人\n- **[挑战 1](.\u002Fchallenge-1)**：两数之和\n- **[挑战 2](.\u002Fchallenge-2)**：字符串反转\n- **[挑战 3](.\u002Fchallenge-3)**：员工数据管理\n- **[挑战 6](.\u002Fchallenge-6)**：单词频率统计\n- **[挑战 18](.\u002Fchallenge-18)**：温度转换器\n- **[挑战 21](.\u002Fchallenge-21)**：二分查找实现\n- **[挑战 22](.\u002Fchallenge-22)**：贪心硬币找零\n\n### 中级\n适合熟悉 Go 语言并希望深入学习的开发者\n- **[挑战 4](.\u002Fchallenge-4)**：并发图 BFS 查询\n- **[挑战 5](.\u002Fchallenge-5)**：HTTP 认证中间件\n- **[挑战 7](.\u002Fchallenge-7)**：带错误处理的银行账户\n- **[挑战 10](.\u002Fchallenge-10)**：多态形状计算器\n- **[挑战 13](.\u002Fchallenge-13)**：SQL 数据库操作\n- **[挑战 14](.\u002Fchallenge-14)**：基于 gRPC 的微服务\n- **[挑战 16](.\u002Fchallenge-16)**：性能优化\n- **[挑战 17](.\u002Fchallenge-17)**：交互式调试教程\n- **[挑战 19](.\u002Fchallenge-19)**：切片操作\n- **[挑战 20](.\u002Fchallenge-20)**：断路器模式\n- **[挑战 23](.\u002Fchallenge-23)**：字符串模式匹配\n- **[挑战 27](.\u002Fchallenge-27)**：Go 泛型数据结构\n- **[挑战 30](.\u002Fchallenge-30)**：上下文管理实现\n\n### 高级\n考验对 Go 语言及计算机科学概念掌握程度的挑战性题目\n- **[挑战 8](.\u002Fchallenge-8)**：基于通道的聊天服务器\n- **[挑战 9](.\u002Fchallenge-9)**：RESTful 图书管理 API\n- **[挑战 11](.\u002Fchallenge-11)**：并发 Web 内容聚合器\n- **[挑战 12](.\u002Fchallenge-12)**：文件处理管道\n- **[挑战 15](.\u002Fchallenge-15)**：OAuth2 认证\n- **[挑战 24](.\u002Fchallenge-24)**：动态规划——最长递增子序列\n- **[挑战 25](.\u002Fchallenge-25)**：图算法——最短路径\n- **[挑战 26](.\u002Fchallenge-26)**：正则表达式文本处理器\n- **[挑战 28](.\u002Fchallenge-28)**：支持多种淘汰策略的缓存实现\n- **[挑战 29](.\u002Fchallenge-29)**：限流器实现\n\n## 如何使用本仓库\n\n### 1. 浏览挑战\n可通过网页界面或代码仓库浏览各个挑战。每个挑战包含：\n- 详细的问题描述\n- 需要实现的函数签名\n- 全面的测试用例\n- 学习资源\n\n### 2. 实现你的解决方案\n编写代码以解决挑战要求，并通过所有测试用例。\n\n### 3. 测试与优化\n使用内置的测试工具验证你的解决方案，然后从以下方面进行优化：\n- 正确性\n- 效率\n- 代码质量\n\n### 4. 提交并比较\n提交通过所有测试的解决方案，将其加入排行榜：\n- 您的解决方案将被自动测试和评分\n- 执行时间和资源使用情况会被记录\n- 您的解决方案将与其他提交结果进行排名\n- 您可以访问详细的性能指标，以便进一步优化\n\n### 5. 学习与进步\n查阅学习资料，加深对相关概念的理解。\n\n## 贡献\n我们欢迎各种形式的贡献！您可以从以下几个方面参与：\n\n**提交解决方案：**\n- 解决现有的经典或包相关挑战\n- 通过 Pull Request 提交您的解决方案\n\n**添加新挑战：**\n- **包挑战：** 针对特定框架的实际应用（如 Gin、Cobra、GORM 等）\n\n**快速步骤：**\n1. Fork 本仓库\n2. 选择挑战类型（经典或包相关）\n3. 按照我们的模板结构进行开发\n4. 提交 Pull Request\n\n有关两种挑战类型的详细指南，请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。\n\n---\n\n## 许可证\n本项目采用 MIT 许可证授权——详情请参阅 [LICENSE](LICENSE) 文件。\n\n## 星标数量随时间变化\n[![Stargazers over time](https:\u002F\u002Fstarchart.cc\u002FRezaSi\u002Fgo-interview-practice.svg?variant=adaptive)](https:\u002F\u002Fstarchart.cc\u002FRezaSi\u002Fgo-interview-practice)\n\n---\n\n## 🏢 高级赞助商\n\n*感谢我们的高级赞助商，是他们让这个项目得以持续！*\n\n### 🥈 银牌赞助商\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\">\n        \u003Ca href=\"https:\u002F\u002Fcoderabbit.ai\" target=\"_blank\">\n          \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_8772f7773bcf.png\" alt=\"CodeRabbit\" width=\"80\" height=\"80\" style=\"border-radius: 20px; border: 2px solid #e1e5e9;\">\n        \u003C\u002Fa>\n        \u003Cbr>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n### 🏗️ 基础设施赞助商\n\n\u003Cdiv align=\"center\">\n  \u003Ctable>\n    \u003Ctr>\n      \u003Ctd align=\"center\">\n        \u003Ca href=\"https:\u002F\u002Fsentry.io\" target=\"_blank\">\n          \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_readme_1e560ab132a1.png\" alt=\"Sentry\" width=\"80\" height=\"80\" style=\"border-radius: 20px; border: 2px solid #e1e5e9;\">\n        \u003C\u002Fa>\n        \u003Cbr>\n      \u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftable>\n\u003C\u002Fdiv>\n\n\n###### 您是否对高级赞助感兴趣？[联系我们](https:\u002F\u002Fgithub.com\u002Fsponsors\u002FRezaSi)，将贵公司的 logo 展示在此处以及我们的平台上！\n\n---\n\n\n**祝编码愉快！** 💻","# Go Interview Practice 快速上手指南\n\n**Go Interview Practice** 是一个交互式编程挑战平台，旨在帮助开发者掌握 Go 语言并顺利通过技术面试。该项目现已集成至 [ProdPath](https:\u002F\u002Fprodpath.dev) 平台，提供包含云实验室、系统设计和 AI 导师在内的完整学习体验。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Windows, macOS, 或 Linux\n*   **Go 版本**：需安装 **Go 1.19** 或更高版本\n    *   国内用户推荐使用清华源或阿里源加速下载：[Go 国内下载镜像](https:\u002F\u002Fgolang.google.cn\u002Fdl\u002F)\n*   **浏览器**：现代浏览器（Chrome, Firefox, Edge 等），用于访问交互式 Web 界面\n*   **网络环境**：需能访问 `app.gointerview.dev`\n\n> **注意**：本项目核心功能为在线交互式平台，无需在本地克隆仓库即可开始练习。本地仓库主要用于查看题目源码或贡献代码。\n\n## 安装与访问步骤\n\n本项目主要作为 SaaS 服务运行，**无需本地安装**即可直接使用全部核心功能。\n\n### 方式一：直接使用在线平台（推荐）\n\n这是最简单快捷的方式，适合立即开始刷题：\n\n1.  打开浏览器访问官方平台：\n    ```text\n    https:\u002F\u002Fapp.gointerview.dev\u002F\n    ```\n2.  使用 GitHub 账号登录（以便同步进度和排行榜）。\n3.  直接在网页端的代码编辑器中开始挑战。\n\n### 方式二：本地克隆（仅用于离线查看或贡献）\n\n如果您希望在本地查看题目代码或参与开源贡献：\n\n1.  克隆仓库：\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice.git\n    ```\n2.  进入目录：\n    ```bash\n    cd go-interview-practice\n    ```\n3.  查看具体挑战的代码实现（位于 `challenges` 目录下）。\n\n## 基本使用\n\n平台提供了从基础语法到高级并发、以及主流框架（Gin, Gorm, Cobra 等）的 30+ 个挑战。\n\n### 1. 选择挑战\n登录后，在仪表盘浏览挑战列表。挑战按难度分级，涵盖：\n*   **基础算法与数据结构**\n*   **Go 特性实践**（Channel, Mutex, Context 等）\n*   **流行框架实战**（Gin, Fiber, Gorm, MongoDB 驱动等）\n\n### 2. 编写与测试代码\n进入挑战页面后，您将看到：\n*   **题目描述**：包含详细的需求说明和资源链接。\n*   **交互式编辑器**：直接在浏览器中编写 Go 代码，支持语法高亮。\n*   **运行测试**：点击 \"Run\" 或 \"Submit\" 按钮，系统将自动编译并运行测试用例。\n\n**示例操作流**：\n1.  阅读题目要求（例如：实现一个线程安全的计数器）。\n2.  在右侧编辑器中补全函数逻辑：\n    ```go\n    func NewCounter() *Counter {\n        \u002F\u002F 在此处编写你的代码\n        return &Counter{}\n    }\n    ```\n3.  点击 **Run Tests**。\n4.  查看即时反馈：\n    *   ✅ **Pass**：显示执行时间、内存占用及通过率。\n    *   ❌ **Fail**：显示具体的错误信息和失败的测试用例。\n\n### 3. 查看分析与排行榜\n*   **性能分析**：提交成功后，查看详细的执行指标（Execution Time & Memory Usage）。\n*   **AI 导师**：利用集成的 AI 功能获取代码审查建议或模拟面试问答。\n*   **排行榜**：您的解题进度将自动同步至全球排行榜，竞争 \"Master\" 或 \"Expert\" 成就徽章。\n\n---\n*开始您的 Go 进阶之旅，前往 [app.gointerview.dev](https:\u002F\u002Fapp.gointerview.dev\u002F) 立即练习！*","刚转行 Go 语言的后端工程师李明，正面临一家知名互联网大厂的技术面试，急需在两周内系统性提升算法解题能力与代码实战手感。\n\n### 没有 go-interview-practice 时\n- **练习场景割裂**：需要在 LeetCode 看题、本地 IDE 写代码、再手动构造测试用例验证，流程繁琐且无法模拟真实面试的在线编码环境。\n- **反馈滞后模糊**：遇到报错只能靠自己调试，缺乏针对 Go 语言特性的即时语法纠正和性能分析，难以判断是逻辑错误还是并发处理不当。\n- **缺乏实战氛围**：独自刷题容易懈怠，不知道自己在候选人中的水平定位，缺少竞争机制来激发冲刺动力。\n- **场景脱离实际**：市面上的题目多为纯算法，缺乏结合 Go 协程、Channel 等特性的真实业务场景训练，面试时遇到工程化问题容易卡壳。\n\n### 使用 go-interview-practice 后\n- **一站式沉浸演练**：直接在内置的交互式编辑器中完成 30+ 道涵盖从入门到进阶的挑战，环境配置零成本，完美复刻线上面试体验。\n- **AI 驱动即时反馈**：提交代码后秒级获得测试结果与执行分析，AI 模拟面试官还能针对代码风格和优化空间提供具体建议，快速修正误区。\n- **竞技榜单激励**：通过全球排行榜实时查看自己的解题率与排名，看着其他开发者如 PolinaSvet 达成“大师”成就，激发了强烈的追赶意识。\n- **真实场景覆盖**：题目设计紧扣 Go 语言核心特性与现实业务痛点，让他不仅学会了算法，更掌握了在生产环境中处理并发与系统设计的技巧。\n\ngo-interview-practice 将枯燥的刷题过程转化为了一场有反馈、有竞争、贴近实战的进阶之旅，帮助求职者从“会写代码”蜕变为“能过面试”。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FRezaSi_go-interview-practice_c1cceefa.png","RezaSi","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FRezaSi_83634b7a.png",null,"Canada","rezashiri88@gmail.com","https:\u002F\u002Fgithub.com\u002FRezaSi",[83,87,91,95,99,103,107],{"name":84,"color":85,"percentage":86},"Go","#00ADD8",87.9,{"name":88,"color":89,"percentage":90},"HTML","#e34c26",7.3,{"name":92,"color":93,"percentage":94},"Shell","#89e051",2.4,{"name":96,"color":97,"percentage":98},"Python","#3572A5",1.6,{"name":100,"color":101,"percentage":102},"JavaScript","#f1e05a",0.5,{"name":104,"color":105,"percentage":106},"CSS","#663399",0.4,{"name":108,"color":109,"percentage":110},"Dockerfile","#384d54",0,1985,1011,"2026-04-12T20:20:30","NOASSERTION","未说明 (基于 Web 的平台，任何支持现代浏览器的操作系统均可)","不需要","未说明",{"notes":119,"python":120,"dependencies":121},"该工具主要是一个基于 Web 的交互式平台 (app.gointerview.dev)，用户无需在本地安装运行环境即可通过浏览器使用。README 中提到的 'Go 1.19+' 是指挑战题目所使用的编程语言版本，而非运行该平台本身的本地依赖。若需本地运行源码（README 未提供具体本地部署指南），则需安装 Go 1.19 或更高版本。","不适用",[122],"Go 1.19+",[18],[125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144],"go-interview-questions","golang","golang-interview-questions","hacktoberfest","interview","interview-practice","interview-questions","go-practice","golang-practice","learn-to-code","learning-resources","ai-interview-platform","ai-interview-simulator","ai-interviewer","interview-preparation","ai-interview","ai-interview-preparation","ai-interview-questions","learning-exercise","tutorial-exercises","2026-03-27T02:49:30.150509","2026-04-13T13:36:22.407989",[148,153,158,163,168,173],{"id":149,"question_zh":150,"answer_zh":151,"source_url":152},31567,"为什么应用请求的 GitHub 权限范围过广（读写所有公共仓库）？是否存在安全隐患？","该应用需要较宽的权限是因为它需要访问用户创建的 Fork 仓库以自动创建拉取请求（PR）。维护者已根据反馈调整了 UI 和说明文档，明确了权限用途。如果在使用中遇到 'Resource not accessible by integration' (403) 错误，通常是因为授权范围未覆盖到特定的 Fork 仓库，请重新检查授权设置或参考更新后的操作指引。","https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fissues\u002F349",{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},31568,"Challenge 12 中的测试用例是否存在逻辑错误导致无法通过正确的解决方案？","是的，此前测试用例中存在逻辑缺陷：Mock Transformer 在数据匹配时直接返回输出而忽略了预设的错误状态。维护者已合并修复补丁，修正了测试逻辑，使其先检查错误状态再进行数据比较。如果您之前的解决方案能通过旧测试，请重新运行测试以确保符合修正后的正确逻辑。","https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fissues\u002F488",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},31569,"Gin Challenge 2 中是否缺少对 RateLimitMiddleware 和 ErrorMiddleware 的有效测试？","此前确实存在测试缺失问题，导致未实现中间件也能通过测试。维护者已更新 `solution-template_test.go` 文件，补充了针对 `RateLimitMiddleware` 和 `ErrorMiddleware` 的具体测试用例。请拉取最新代码并重新运行测试，确保您的实现能通过这些新增的验证。","https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fissues\u002F167",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},31570,"Challenge 15 测试中的 codeChallenge 值计算结果与预期不符，是算法问题吗？","这不是算法错误，而是编码方式的差异。Challenge 15 使用 OAuth PKCE 标准，要求对 SHA256 哈希值进行 `base64.RawURLEncoding` 编码（无填充），而非标准的 `base64.URLEncoding`。请确保您的代码使用以下逻辑生成挑战码：\n```go\nhash := sha256.Sum256([]byte(\"test-verifier\"))\ncodeChallenge := base64.RawURLEncoding.EncodeToString(hash[:])\n```","https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fissues\u002F107",{"id":169,"question_zh":170,"answer_zh":171,"source_url":172},31571,"Fiber Challenge 1 的 run_tests.sh 脚本在终端运行时失败，与其他挑战的工作流程不同怎么办？","这是一个已修复的脚本问题。此前该脚本未正确复制用户提交的文件（`submissions\u002F\u003Cuser>\u002Fsolution.go`）到临时目录，且依赖默认模板文件。维护者已重构 `run_tests.sh`，使其与 Gin 等其他挑战保持一致：现在它会检查并提交用户目录下的 `solution.go` 文件。请更新仓库代码后重试，工作流程应与其他挑战完全相同。","https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fissues\u002F213",{"id":174,"question_zh":175,"answer_zh":176,"source_url":177},31572,"Challenge 9 运行 run_tests.sh 时报错 'no required module provides package' 且未安装依赖模块如何解决？","这是因为脚本未在临时目录中复制 `go.mod` 文件且未执行依赖整理。维护者已修复脚本，增加了复制 `go.mod` 和运行 `go mod tidy` 的步骤。如果您仍在使用旧版本脚本，请手动在脚本的临时目录创建逻辑中添加：\n1. `cp go.mod \"$TEMP_DIR\u002F\"`\n2. 在执行测试前运行 `go mod tidy`\n建议直接拉取最新代码以获取修复后的脚本。","https:\u002F\u002Fgithub.com\u002FRezaSi\u002Fgo-interview-practice\u002Fissues\u002F54",[]]