Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/iamhaque/advent-of-code-2024

Deno-based solutions for Advent of Code 2024 challenges. Each day includes a unique coding puzzle solved in a structured and reusable format.
https://github.com/iamhaque/advent-of-code-2024

advent-of-code advent-of-code-2024 algorithms competitive-programming deno javascript programming-puzzles typescript

Last synced: 6 days ago
JSON representation

Deno-based solutions for Advent of Code 2024 challenges. Each day includes a unique coding puzzle solved in a structured and reusable format.

Awesome Lists containing this project

README

        

# Advent of Code 2024 - Deno Solutions

Welcome to my **Advent of Code 2024** repository, where programming meets
holiday cheer! πŸŽ„ Dive into this collection of fun, challenging puzzles designed
to test your problem-solving skills and spread the joy of coding. Each day's
challenge is solved in **Deno**, with a clear and consistent structure to make
navigation and replication a breeze.

## **What is Advent of Code?**

Think of it as an Advent calendar, but instead of chocolates, you get daily
programming puzzles! Created by [Eric Wastl](https://adventofcode.com/about),
Advent of Code is a beloved tradition among developers of all skill levels.
Whether you're prepping for interviews, practicing algorithms, or simply
competing with friends, there's something here for everyone.

### **Why Participate?**

- Sharpen your coding skills πŸš€
- Learn something new every day πŸ“š
- Join a vibrant, global community 🌎

No computer science degree? No problem! These puzzles require only basic
programming knowledge and a knack for logical thinking. Plus, every challenge is
optimized to run on hardware as old as Santa's sled (okay, maybe 10 years old
πŸ˜‰).

---

## **Folder Structure**

Here’s how the magic is organized:

```
β”œβ”€β”€ .vscode
β”‚ └── settings.json
β”œβ”€β”€ day_01
β”‚ β”œβ”€β”€ input.txt
β”‚ β”œβ”€β”€ main.ts
β”‚ └── sample.txt
β”œβ”€β”€ day_02
β”‚ β”œβ”€β”€ input.txt
β”‚ β”œβ”€β”€ main.ts
β”‚ └── sample.txt
β”œβ”€β”€ day_03
β”‚ β”œβ”€β”€ input.txt
β”‚ β”œβ”€β”€ main.ts
β”‚ └── sample.txt
β”œβ”€β”€ day_04
β”‚ β”œβ”€β”€ input.txt
β”‚ β”œβ”€β”€ main.ts
β”‚ β”œβ”€β”€ sample.txt
β”‚ └── sample_02.txt
β”‚
β”œβ”€β”€ ...
β”‚
β”œβ”€β”€ day_[x]
β”‚ β”œβ”€β”€ input.txt
β”‚ β”œβ”€β”€ main.ts
β”‚ └── sample.txt
β”œβ”€β”€ deno.json
β”œβ”€β”€ main.ts
β”œβ”€β”€ markdown.md
└── utils.ts
```

### **Key Components**

1. **`.vscode/`:** Houses editor-specific settings to streamline development.
2. **`day_/`:** Each folder contains:
- `main.ts`: The solution script for that day.
- `input.txt`: The actual puzzle input.
- `sample.txt` (and `sample_02.txt` if provided): Sample inputs for debugging
and testing.
3. **Root-Level Files:**
- `deno.json`: Deno configuration file for smooth execution.
- `main.ts`: Entry script to run specific day solutions.
- `markdown.md`: Documentation and notes.
- `utils.ts`: Shared utility functions used across days.

---

## **How to Run the Solutions**

Unwrapping a puzzle solution is as simple as running this command:

```bash
# Replace [day number] with the day you want to run
deno run start [day number]
```

### **Example**

To solve Day 1’s challenge:

```bash
deno run start 1
```

### **Requirements**

- Install [Deno](https://deno.land) if you haven’t already.
- Ensure `deno.json` is in the root directory for configurations.

---

## **Contributing**

Collaboration is the spirit of the season! πŸŽ… If you’d like to contribute:

1. Fork this repository.
2. Try solving the puzzles or improving existing solutions.
3. Submit a pull request to share your ideas!

Encountered an issue? Feel free to open an issue with suggestions or questions.

---

## **License**

This project is open-source and licensed under the MIT License. Check out the
LICENSE file for more details.

---

Let’s code and celebrate this Advent season together. Happy solving! πŸŽ„βœ¨