{"id":22248297,"url":"https://github.com/lvntky/aoc2024","last_synced_at":"2025-03-25T11:43:16.741Z","repository":{"id":266153784,"uuid":"897558727","full_name":"lvntky/aoc2024","owner":"lvntky","description":"Advent of Code 2024 solutions","archived":false,"fork":false,"pushed_at":"2024-12-02T20:58:44.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-02T21:36:19.492Z","etag":null,"topics":["advent-of-code","advent-of-code-2024","adventofcode","cpp","cpp17","cpp20","moderncpp"],"latest_commit_sha":null,"homepage":"","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/lvntky.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":"2024-12-02T20:51:44.000Z","updated_at":"2024-12-02T21:02:02.000Z","dependencies_parsed_at":"2024-12-02T21:36:23.721Z","dependency_job_id":"0c9f1d2e-6e2c-4ccc-9bd0-4ffef5faac50","html_url":"https://github.com/lvntky/aoc2024","commit_stats":null,"previous_names":["lvntky/aoc24"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Faoc2024","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Faoc2024/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Faoc2024/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Faoc2024/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lvntky","download_url":"https://codeload.github.com/lvntky/aoc2024/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":236337722,"owners_count":19132985,"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":["advent-of-code","advent-of-code-2024","adventofcode","cpp","cpp17","cpp20","moderncpp"],"created_at":"2024-12-03T06:14:57.729Z","updated_at":"2025-01-30T10:43:11.538Z","avatar_url":"https://github.com/lvntky.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Advent of Code 2024 C++ Solutions\n\n## Project Overview\n\nThis repository contains my solutions for the Advent of Code 2024 programming challenge, implemented in modern C++. Advent of Code is an annual coding event where participants solve a series of programming puzzles, one for each day leading up to Christmas.\n\n### Project Features\n- Modular C++ implementation\n- CMake-based build system\n- Comprehensive error handling\n- Organized project structure\n- Detailed solutions for each day's challenges\n\n## 🛠 Prerequisites\n\n### Required Tools\n- C++ Compiler with C++17 support (GCC 8+, Clang 7+, MSVC 19.15+)\n- CMake (version 3.12 or higher)\n- Git (optional, for version control)\n\n\n## Project Structure\n\n```\naoc2024/\n│\n├── CMakeLists.txt         # Main build configuration\n├── README.md              # Project documentation\n│\n├── src/                   # Source code directory\n│   ├── day01/             # Day 1 specific implementation\n│   │   ├── day01.cpp\n│   │   └── day01.h\n│   │\n│   ├── day02/             # Day 2 specific implementation\n│   │   ├── day02.cpp\n│   │   └── day02.h\n│   │\n│   └── main.cpp           # Main application entry point\n│\n├── input/                 # Input files for each day's puzzle\n│   ├── day01_puzzle_input.txt\n│   └── day02_puzzle_input.txt\n│\n└── tests/                 # (Future) Unit tests directory\n```\n\n## Build Instructions\n\n### 1. Clone the Repository\n```bash\ngit clone https://github.com/lvntky/aoc2024.git\ncd aoc2024\n```\n\n### 2. Create Build Directory\n```bash\nmkdir build\ncd build\n```\n\n### 3. Configure with CMake\n```bash\n# Basic configuration\ncmake ..\n\n# For debug build\ncmake -DCMAKE_BUILD_TYPE=Debug ..\n\n# For release build\ncmake -DCMAKE_BUILD_TYPE=Release ..\n```\n\n### 4. Build the Project\n```bash\n# On Unix-like systems\nmake\n\n# On Windows with Visual Studio\ncmake --build . --config Release\n```\n\n## Running Solutions\n\n### General Usage\n```bash\n# Run a specific day's solution\n./aoc2024 \u003cday_number\u003e \u003cinput_file_path\u003e\n\n# Examples\n./aoc2024 1 input/day01_puzzle_input.txt\n./aoc2024 2 input/day02_puzzle_input.txt\n```\n\n## Troubleshooting\n\n### Common Issues\n- Ensure input file paths are correct\n- Check file read permissions\n- Verify CMake and compiler versions\n\n### Debugging Tips\n- Use verbose CMake output: `cmake -DCMAKE_VERBOSE_MAKEFILE=ON ..`\n- Enable compiler warnings\n- Use debugger for complex logic issues\n\n##  Coding Standards\n\n### General Guidelines\n- Follow modern C++ practices\n- Use C++17/C++20 features\n- Prioritize readability and performance\n- Include comprehensive error handling\n- Write self-documenting code\n\n### Recommended Practices\n- Use meaningful variable and function names\n- Add comments for complex logic\n- Handle potential exceptions\n- Optimize for both time and space complexity\n\n## Contributing\n\n### Workflow\n1. Fork the repository\n2. Create a feature branch (`git checkout -b day-X-solution`)\n3. Implement your solution\n4. Write tests (if applicable)\n5. Create a pull request\n\n### Code Review Checklist\n- Correct solution implementation\n- Efficient algorithm\n- Proper error handling\n- Clean, readable code\n- Follows project structure\n\n\n## License\nMit\n\n## Acknowledgments\n- Eric Wastl for creating Advent of Code\n- The C++ community for continuous support and innovation\n\n---\n\n**Happy Coding! 🎄**","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flvntky%2Faoc2024","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flvntky%2Faoc2024","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flvntky%2Faoc2024/lists"}