Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michaelfromorg/vscode-puzzles
🧩📘 Solve technical interview problems from Project Euler, Advent of Code, Reddit, and more directly in Visual Studio Code.
https://github.com/michaelfromorg/vscode-puzzles
advent-of-code aoc codingbat daily-coding-problem dailyprogrammer euler fastify learn-to-code microsoft preferred-solving-language reddit typescript vscode vscode-extension vscode-puzzle
Last synced: about 7 hours ago
JSON representation
🧩📘 Solve technical interview problems from Project Euler, Advent of Code, Reddit, and more directly in Visual Studio Code.
- Host: GitHub
- URL: https://github.com/michaelfromorg/vscode-puzzles
- Owner: michaelfromorg
- License: mit
- Created: 2020-06-27T17:46:22.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-01-27T07:26:42.000Z (7 days ago)
- Last Synced: 2025-01-27T08:26:28.883Z (7 days ago)
- Topics: advent-of-code, aoc, codingbat, daily-coding-problem, dailyprogrammer, euler, fastify, learn-to-code, microsoft, preferred-solving-language, reddit, typescript, vscode, vscode-extension, vscode-puzzle
- Language: HTML
- Homepage: https://marketplace.visualstudio.com/items?itemName=michaelfromyeg.vscode-puzzle
- Size: 7.96 MB
- Stars: 17
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# vscode-puzzles 🧩ðŸ§
Puzzles allows you to sharpen your coding skills inside of your tailored Visual Studio Code environment and add your own tests.
Solve problems from Reddit's [/r/dailyprogrammer](https://reddit.com/r/dailyprogrammer/), [Project Euler](https://projecteuler.net/), [Coding Bat](https://codingbat.com/java), and [Advent of Code](https://adventofcode.com) in a fully-featured IDE, rather than a `````` (ugh), and write custom test cases, akin to a real job interview... which is the whole point of your practice anyway!
Use Puzzles to **prepare for technical interviews** and start **solving coding problems** like you would in actual interviews today!
See how quickly you can get coding!
_Want to practice LeetCode specifically?_ Check out [this](https://marketplace.visualstudio.com/items?itemName=LeetCode.vscode-leetcode) extension instead! It should be what you're after... though Puzzles likely can help you as well!
_Like this project?_ Leave a review [here](https://marketplace.visualstudio.com/items?itemName=michaelfromyeg.vscode-puzzle) or a star on [GitHub](https://github.com/michaelfromyeg/vscode-puzzle).
## Getting Started
Here's how to build _Puzzles_ into your daily coding practice routine.
1. Download this extension!
2. Create a folder for your solutions```shellscript
# For example...
cd ~
mkdir puzzles
cd puzzles
code .
```3. Hit `CTRL + SHIFT + P`, type `puzzles` and select your problem of choice
4. Get to solving!
5. (Optional) Initialize a Git repository in your new folder and publish your work to GitHub!See this in practice (and code along with me) [here](https://github.com/michaelfromyeg/puzzles)!
## Features
As mentioned, _Puzzles_ currently supports problems from Reddit's [/r/dailyprogrammer](https://reddit.com/r/dailyprogrammer/), [Project Euler](https://projecteuler.net/), [Coding Bat](https://codingbat.com/java), and [Advent of Code](https://adventofcode.com). It fetches a user-specified or random problem for any of those three sites, creates a folder, and stores both a Markdown file with the problem description and creates a `.[py|js|ts|java|cpp]` file for you to begin your solution. For Advent of Code, it also has the ability to fetch your problem input.
An outline of planned features is below!
### Roadmap
Here's my plan for near-future development:
- [x] Support other programming language starters
- [ ] Make starters better. Include unit test templates, for example
- [ ] Support Cracking the Coding Interview problems
- [ ] Create a custom, curated list of coding problems to use for this extension## Requirements
None required! Note that Puzzles does create folders and files though, so you'll likely want to create a separate workspace on your computer for your work.
## Extension Settings
~~In the future, there will be an option to set your preferred solving language~~. You can "Set Default Language" command.
## Known Issues
~~Currently, the extension is a bit... shaky. There is a plan to stop scraping soon and add a better data source~~. If you experience any issues at all, open an [issue](https://github.com/michaelfromyeg/vscode-puzzle/issues) or reach out via [email](mailto:[email protected]?subject=%5BPuzzles%5D) for support!
## Release Notes
This project was originally being part at Microsoft's VS Code hackathon. It is actively under early development; if you're interested in helping grow this project, please [file a ticket](https://github.com/michaelfromyeg/vscode-puzzle/issues) or [open a pull request](https://github.com/michaelfromyeg/vscode-puzzle/pulls)!
### 1.3.0
New features:
- Advent of Code problem input support; note all session information is stored client-side via the Visual Studio Code `SecretStorage` API
- Many bug fixes and improvements### 1.2.0
New features:
- Language support for JavaScript, TypeScript, Java, and C++
- Advent of Code support
- Fixed Project Euler support
- Upgraded to Node v22### 1.1.0
New features:
- Documentation overhaul and renaming from `vscode-puzzle` → Puzzles
- Get a random problem from Project Euler, _or_ select a specific problem number ([#13](https://github.com/michaelfromyeg/vscode-puzzle/issues/13))### 1.0.0
Initial release for Microsoft's VS Code Hack-a-thon, sponsored by MLH.
Supported:
- Problems from Reddit's r/dailyprogrammer, accessed via the Reddit API
- Problems from Project Euler
- Problems from Coding Bat
- The problem statement formatted into a Markdown file
- A pre-generated Python file for your solution