{"id":22370012,"url":"https://github.com/fazers/learn-cpp","last_synced_at":"2025-07-06T13:03:38.261Z","repository":{"id":187528641,"uuid":"677024451","full_name":"FaZeRs/learn-cpp","owner":"FaZeRs","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-23T18:10:53.000Z","size":505,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T19:22:59.044Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FaZeRs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-08-10T15:00:34.000Z","updated_at":"2025-02-23T18:10:56.000Z","dependencies_parsed_at":"2025-02-23T19:22:15.017Z","dependency_job_id":"78f4f4d5-76ce-4ee7-b5b9-ac362db66fc7","html_url":"https://github.com/FaZeRs/learn-cpp","commit_stats":null,"previous_names":["fazers/learn-cpp"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FaZeRs%2Flearn-cpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FaZeRs%2Flearn-cpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FaZeRs%2Flearn-cpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FaZeRs%2Flearn-cpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FaZeRs","download_url":"https://codeload.github.com/FaZeRs/learn-cpp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245690452,"owners_count":20656587,"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-12-04T19:31:39.943Z","updated_at":"2025-03-26T16:24:42.781Z","avatar_url":"https://github.com/FaZeRs.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# C++ Learning Project\n\nA comprehensive C++ project showcasing implementations of common data structures, algorithms, design patterns, and modern C++ features. This project serves as both a learning resource and a reference implementation.\n\n## 🎯 Project Overview\n\nThis project includes implementations and examples of:\n\n- Data Structures (Binary Trees, Hash Maps, Linked Lists, etc.)\n- Algorithms (Sorting, Searching)\n- Design Patterns (Creational, Structural, Behavioral)\n- Modern C++ Features (Templates, RAII)\n- Memory Management Concepts\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n- CMake 3.27 or higher\n- Modern C++ Compiler (GCC-14, LLVM-18, or MSVC)\n- Ninja or Visual Studio 2022 (for Windows)\n\n### Building the Project\n\n1. Clone the repository\n```bash\ngit clone https://github.com/FaZeRs/learn-cpp.git\ncd learn-cpp\n```\n\n2. Create a build directory\n```bash\nmkdir build \u0026\u0026 cd build\n```\n\n3. Configure and build\n```bash\ncmake -G \"Ninja\" ..\ncmake --build .\n```\n\n## 🏗️ Project Structure\n\n- `src/` - Main source code directory\n  - `data-structures/` - Implementation of common data structures\n  - `algorithms/` - Various algorithm implementations\n  - `patterns/` - Design pattern examples\n  - `templates/` - Template metaprogramming examples\n  - `memory/` - Memory management concepts\n\n## 🛠️ Development Environment\n\nThis project includes a complete development environment setup using:\n\n- DevContainer configuration for VS Code\n- Pre-configured development tools and extensions\n- Automated CI/CD pipelines\n- Code quality tools (clang-tidy, cppcheck)\n\n### VS Code Extensions\n\nThe project comes with recommended extensions for C++ development:\n\n- C/C++ tools\n- CMake tools\n- Doxygen documentation generator\n- Git integration\n- Code formatting and analysis tools\n\n## 🧪 Quality Assurance\n\nThe project employs several tools to maintain code quality:\n\n- Static Analysis (clang-tidy, cppcheck)\n- CodeQL Analysis\n- Automated CI/CD pipelines\n- Comprehensive build matrix testing\n\n## 📚 Learning Resources\n\nEach implementation includes detailed documentation explaining:\n\n- Theoretical concepts\n- Time and space complexity\n- Common use cases\n- Code examples\n- References for further reading\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit pull requests. Make sure to:\n\n1. Follow the existing code style\n2. Add appropriate documentation\n3. Update relevant README files\n\n## 📄 License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n\n## 🔗 References\n\n- [C++ Reference](https://en.cppreference.com/)\n- [Design Patterns](https://refactoring.guru/design-patterns)\n- [Data Structures and Algorithms](https://www.geeksforgeeks.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffazers%2Flearn-cpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffazers%2Flearn-cpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffazers%2Flearn-cpp/lists"}