Solutions for Advent of Code using Bun and Effect-TS.
- Runtime: Bun - Fast JavaScript runtime
- Language: TypeScript (bleeding edge)
- Framework: Effect-TS - Functional programming library
- Linting/Formatting: Biome - Fast, modern linter and formatter
- Editor: VS Code with DevContainer/Codespaces support
- Bun installed, or
- VS Code with Dev Containers extension, or
- A GitHub account (for Codespaces)
- Click the "Open in GitHub Codespaces" badge above, or
- Go to the repository on GitHub and click "Code" → "Codespaces" → "Create codespace on main"
- Wait for the codespace to start - dependencies will be installed automatically
- Open this repository in VS Code
- Press
F1and select "Dev Containers: Reopen in Container" - Wait for the container to build and dependencies to install
# Install dependencies
bun install
# Run a specific day (e.g., 2025 day 1)
bun run src/bin.ts run 2025 1# Run specific day
bun run src/bin.ts run <year> <day>
# Example: Run 2025 day 1
bun run src/bin.ts run 2025 1
# Linting
bun run lint # Check for lint errors
bun run lint:fix # Fix lint errors
# Formatting
bun run format # Format code
bun run format:check # Check formatting
# Type checking
bun run typecheck
# All checks
bun run check # Run all checks
bun run check:fix # Fix all auto-fixable issuessrc/
├── bin.ts # Main entry point
├── Cli.ts # CLI implementation
└── <year>/ # Year directories (e.g., 2025/)
└── <day>/ # Day directories (e.g., 01/)
├── index.ts # Day solution
├── index.test.ts # Tests
└── input.txt # Puzzle input
Required extensions will be automatically recommended when you open the project:
- Effect VS Code - Language support for Effect-TS
- Biome - Linting and formatting
- Bun - Bun runtime support
MIT