Skip to main content

LiteLookup 🔎

code coverage badge

LiteLookup is a command-line tool developed in Python that fetches beginner-level information about any concept directly from the command line.

When working on the terminal, I often had the need for quick references about concepts or commands depending on what I'm working on. I didn't like the idea of having to juggle browser tabs and context-switch because of some beginner information. I built LiteLookup so I could access quick, concise information and accessible explanations without leaving the terminal.

Features

  • Command-Line Interface (CLI): Uses argparse to handle user inputs.
  • Error Handling: Validates user input to ensure meaningful queries. Catches special characters and raises appropriate errors.
  • API Integration: Utilizes the Groq LLM API to generate concise explanations of the concepts provided.
  • Caching: Implements Redis for persistent caching of API responses, reducing unnecessary API calls and improving response times.
  • Interactive Shell Session: Launches an intractive shell for faster, continuous lookups after the initial connection establishment. This mode is ideal for making multiple queries in a single session without the overhead of reconnecting for each request.
  • HTTP/2 Support: Uses httpx with connection pooling and HTTP/2 for efficient API communication.
  • Expandable: Designed to be easily extended with new features and enhancements.

Installation

Prerequisites

  • Python 3.11 or higher
  • Redis server installed and running
  • Groq LLM API access — You will need to store a valid Groq API Key as a secret. You can generate one for free here.

Setup

  1. Install LiteLookup via pip or pipx:

    pip install litelookup

    Check if LiteLookup is correctly installed with lookup --version

  2. Configure the environment variables:

    Enter the API Key from Groq in the prompt from the first usage:

    >>Enter API KEY here: your-api_key here

    Replace "your_api_key_here" with the API key to begin interacting with the tool.

    Select the desired model from the list of available models as shown below:

    custom model

    pick one of the models using the arrow keys and press enter. Press tab to move to the OK button and press enter to confirm your choice.

  3. *Ensure Redis is running:

    redis-cli ping

    You should get PONG which indicates redis is up and running.

Usage

Basic Usage

To fetch information about a concept, use the following command:

lookup "concept"

For example, lookup "git rebase"

For queries with special characters (such as '&', '|', '', etc), please make sure to wrap your queries in quotes. Otherwise, the shell may interprete these characters.

Programming Mode

lookup "programming concept" -p

For example, lookup "print() in python" -p

Interactive Shell Mode

Enter the interactive mode for continuous lookups without reconnecting:

  • lookup -i

If you wish to generate verbose responses while in the interactive mode, use

  • lookup -i -p or `lookup -ip The responses you get with this will be more finetuned for programming.

  • lookup -i -d or lookup -id This combines interactive mode with direct mode for quick, concise command-related answers.

To exit the interactive mode, type:

  • quit or q

Direct Mode

Get concise, direct answers for command-related queries:

  • lookup -d "command to ..." or lookup --direct "how to ..."

For example, lookup -d "command to delete a file in Linux" or lookup -d "how to rollback a commit in Git"

This mode provides brief, actionable responses without additional explanations. For best results, start your query with "command to" or "how to".

Conversational or Chat Mode

Get conversational with the tool! LiteLookup offers a chat feature that allows you to go back and forth with it on an idea. To toggle this mode, use:

lookup -ic

Now you have a terminal buddy to brainstorm with.

Flags

  • -p or --programming: Programming-focused responses
  • -d or --direct: Concise, command-related answers
  • -i or --interactive: Interactive shell mode
  • -ic or --interactive --chat: conversational mode

Contributing

If you'd like to contribute to LiteLookup, please fork the repository and submit a pull request. For any issues or suggestions, feel free to open an issue on the GitHub repository. Also, please submit any issue you encounter using the tool and I'll be happy to discuss and fix it.

Contact

For any questions or support, please contact Abdulmumin at [lanreywaju97@gmail.com]

Metadata

Release files for litelookup 0.21.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for litelookup 0.21.6
File Size Uploaded Provenance
litelookup-0.21.6.tar.gz 13.9 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for litelookup 0.21.6
File Interpreter ABI Platform
litelookup-0.21.6-py3-none-any.whl Python 3 none any Details

Total release size: 30.2 kB

Release files / litelookup-0.21.6.tar.gz

Download URL litelookup-0.21.6.tar.gz
Size 13.9 kB
Tags Source
SHA-256 checksum
How to use checksums
3110b353d40becc2104e63920733b3a3169fb17ad5def346a4d8213d023a4c82
BLAKE2b-256 checksum
How to use checksums
bf225fc83916e1dd064a46707b26d6c4caab468b2e85a3e8a7758066338f9e1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 14, 2025.

Transparency log

Release files / litelookup-0.21.6-py3-none-any.whl

Download URL litelookup-0.21.6-py3-none-any.whl
Size 16.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4afad5f60ade32935c6422b3d9f174d282c7f0fb89fda3cf9b22b8b161b743c1
BLAKE2b-256 checksum
How to use checksums
2f218bd9521826b2ca4600156bac381896b8b981bcdb97d515c73c7261e8c182
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 14, 2025.

Transparency log

Security for litelookup 0.21.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for litelookup-0.21.6.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 14, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.21.6 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page