Skip to main content

A blazing-fast, interactive terminal explorer for 17,000+ company-wise DSA interview questions.

Project description

Dooma

Dooma Logo PyPI version Downloads Python Version License: MIT

Dooma is your ultimate, blazing-fast Data Structures and Algorithms (DSA) preparation companion. Built entirely for the terminal, it serves as a lightweight, interactive explorer for over 17,900+ real interview questions from 660+ top tech companies.

No more scrolling through clunky websites or losing track of which questions Amazon or Google actually ask. Dooma brings the entire dataset straight into your console with a beautiful, responsive UI.

🚀 Features

  • Massive Database: Access a curated, offline-first dataset of 17,931 question mappings across 662 companies.
  • Interactive Terminal UI: Built with Rich and Typer, Dooma offers a stunning, paginated, and easy-to-navigate interface.
  • Alphabetical Explorer: Quickly jump to your target company (e.g., press G for Google) and view all associated questions.
  • Data Rich: Instantly see Question Titles, Difficulty Ratings (color-coded), Frequency/Acceptance percentages, and direct LeetCode URLs.
  • Zero Overhead: No accounts, no internet required to browse the database, no tracking. Just pure preparation.

📦 Quickstart

Dooma is incredibly easy to set up and use.

Installation

Clone the repository and install it locally using pip:

git clone https://github.com/im-anishraj/dooma.git
cd dooma
pip install -e .

Usage

Once installed, simply run the tool from anywhere in your terminal:

dooma
  1. You will be greeted by an alphabet menu. Type the first letter of your target company (e.g., A for Amazon).
  2. Select your company from the beautifully paginated list.
  3. Browse the questions, take note of the difficulties and frequencies, and click the URLs to practice!
  4. Type 0 at any time to safely step back through the menus.

🤝 Contributing

We welcome contributions to make Dooma even better! Whether you want to update the dataset, add new features, or improve the UI, we'd love your help. Please see CONTRIBUTING.md for details on how to get started and the pull request process.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dooma-2.0.1.tar.gz (842.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dooma-2.0.1-py3-none-any.whl (2.2 MB view details)

Uploaded Python 3

File details

Details for the file dooma-2.0.1.tar.gz.

File metadata

  • Download URL: dooma-2.0.1.tar.gz
  • Upload date:
  • Size: 842.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for dooma-2.0.1.tar.gz
Algorithm Hash digest
SHA256 093b6f45f2cf62a6e799eb6f37d178149a8dde245a4566dce2f8635ed1fd8093
MD5 d788805984a377810b393e359725f909
BLAKE2b-256 88c1abdafee60b02bc9344d97b3ec206f43d40ca241ccd661f08dcd01f272aa0

See more details on using hashes here.

File details

Details for the file dooma-2.0.1-py3-none-any.whl.

File metadata

  • Download URL: dooma-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for dooma-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3adbe2b2cfd255b5aab56aa0cc72e8f2ff301b7fb69cc78371149cc07a6e87ed
MD5 69747c63ff3c095218572c16012de2fb
BLAKE2b-256 795be022f660423a9788b8c58affc7c78742f6401c742f5421806d27282a5065

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page