Skip to content

Laravel Advent of Code template repository.

License

Notifications You must be signed in to change notification settings

vorban/laravel-advent-of-code

Repository files navigation

Laravel Total Stars: 0

2015: 0 2016: 0 2017: 0 2018: 0 2019: 0
2020: 0 2021: 0 2022: 0 2023: 0

laravel-advent-of-code

Advent of Code template repository.

This is not made to be hosted. This is made to boostrap your yearly Advent of Code solving routine as a Laravel dev, by removing the hassle of preparing a php environment with appropriate helpers.

Released under the MIT License. See LICENSE.

Copyright ©️ 2023 {{ $your_name }}

AoC compliance and usage of this template

This repository does follow the automation guidelines on the /r/adventofcode community wiki. Specifically:

  • No automation is provided
  • Outbound calls to the /events endpoint are cached for 24h (see app/Console/UpdateBadgesCommand.php)
  • Once inputs are downloaded, they are cached locally indefinitly (see app/Console/PrepareCommand)
  • If you suspect your input is corrupted, you can run the command again to regenerate from cache. Manual deletion of cache files is required to enable a fresh download.

The User-Agent header is set to information you need to provide in your .env. It must be set to the owner of the end-repository (not the template repository owner).

This template repository is provided as-is, as detailed in the LICENSE file.

By using this template repository, you become the one and only maintainer of your new repository.

By using this template repository, you take responsability over your usage of the provided scripts. The original author designed them to be executed 25 times a year, no more.

Although a Laravel application, this code is not fit to be hosted. Specifically, the code as-is is not fit for any kind of automation or production environments.

Installation

First, click on "use this template" and generate a new repo based on this one.

git clone git@github.com:{{ $your_name }}/{{ $your_repo_name }}.git
cd advent-of-code

cp .env.example .env

Specify in the .env the values for:

  • your GitHub username
  • your GitHub email
  • the name of your repository

These are required by the AoC maintainers to track abusive use of the website. Without those values, the scripts will get banned.

Using docker ?

docker run --rm --interactive --tty --volume $PWD:/app composer install

vendor/bin/sail up -d
echo Enjoy!

Got a local dev environment ?

composer install
echo Enjoy!

Usage

Use sail or php depending on wether you want to use docker or not.

# generate code file and download input
sail artisan aoc:prepare {year} {day}

# hopefully first try !
sail artisan aoc:run {year} {day} {--example}

# once you're done for the day
sail artisan aoc:update-badges

About

Laravel Advent of Code template repository.

Topics

Resources

License

Stars

Watchers

Forks

Languages