LeetStream is a static website designed to help users improve their coding skills through daily practice with LeetCode problems. The website offers a curated selection of 220 problems categorized into 26 coding patterns, including sliding window, greedy algorithms, dynamic programming, and more. Each day, users are presented with the same LeetCode problem, shuffled to ensure spaced repetition across different coding patterns. By solving these problems and submitting their data, users can track their progress and identify areas for improvement.
Using LeetStream is simple:
- Create or Join a Stream: First, create a stream by providing a title, start date, stream rate (problems/day), and a discussion group URL (WhatsApp, Telegram, Discord). Share this link with friends or a study group to solve problems together. Second, join the stream, you created or that was shared via the shared URL.
- Solve the Daily Problem: Each day, you'll be presented with a LeetCode problem categorized under one of the 26 coding patterns. Solve the problem to the best of your ability. Remember, once the day is over, you won't be able to revisit or solve the problem again, so make it a habit to solve it daily.
- Submit Data: After solving the problem, submit your data to calculate your score. Include information such as bugs encountered, hints used, time taken, and the type of solution (optimal, sub-optimal, brute force, ...).
- Review Results: Once you've submitted your data, review your score. You can download a CSV file containing your scores to further analyze your performance using spreadsheet programs. This file will help you gain deeper insights into your strengths and areas for improvement.
- Access Study Material: Explore links to articles and videos related to the coding patterns present in the problem you just solved. Use this material to deepen your understanding and improve your skills.
- Repeat Daily: Come back each day to tackle a new problem, track your progress, and continue learning. Remember, consistency is key, as you won't have another chance to solve missed problems.
LeetStream prioritizes the security and privacy of its users. The website is a static site, and user data is stored locally in the browser's local storage. This means that your data remains safe and private, accessible only to you on the device where you are using LeetStream. We do not collect any personally identifiable information or store user data on external servers, ensuring your privacy is maintained.
We welcome contributions from the community to enhance LeetStream. Here's how you can contribute:
- Provide Problem Data: Help us enrich our database by adding information about problem difficulty, associated companies, solution links, and relevant articles/videos for coding patterns. You can contribute by using the following links to enrich the database:
- Coding Interview Patterns GitBook
- Grokking the Coding Interview Patterns for Coding Questions GitHub
- Grokking the Coding Interview: Patterns for Coding Questions Course
- Grokking to LeetCode Gist
- New Grokking to LeetCode GitHub
- NeetCode | YouTube
- Algorithmic Patterns for Coding Interview/LeetCode Problems | YouTube
- Coding Pattern | YouTube
- Coding Interview Patterns | YouTube
- LeetcodeCa
- Ensure High-Quality References: When providing references, ensure they are high-quality resources. References from presenters working in big tech companies, competitive programming champions, individuals with more than seven years of non-repetitive experience in the software industry, or equivalents are preferred. This helps avoid false positives and decreases the chance of wasting users' time.
- Add Features: Suggest and implement new features to improve the user experience or enhance functionality.
- Report Issues: If you encounter any bugs or have suggestions for improvements, create an issue on our GitHub repository.
- Documentation: Improve the documentation to make it more comprehensive and user-friendly.
To contribute, simply fork our GitHub repository and submit a pull request with your changes. Together, we can make LeetStream an even more valuable resource for coding enthusiasts.
- Maintainer: Mohamed Sallam