Skip to main content

nlboard

PyPI version License: MIT Downloads LinkedIn

nlboard is a Python package designed to transform unstructured user input about project management needs into a structured Trello-like board configuration. By leveraging large language models, nlboard interprets plain text descriptions of tasks, workflows, and preferences and outputs a well-organized Trello board setting with lists, cards, and labels. This enables users to quickly set up a modern project management interface tailored to their specific requirements without manual configuration.

Installation

Install via pip:

pip install nlboard

Usage

Here's a basic example of how to use nlboard with the default LLM:

from nlboard import nlboard

user_input = "I need a board for managing my software project with to-do, in-progress, and done lists. Add cards for feature development, bug fixes, and documentation. Use labels for priority levels."

response = nlboard(user_input)
print(response)

Custom LLM Support

nlboard defaults to using the ChatLLM7 from langchain_llm7, but you can pass your own language model instance to customize the setup.

Using different language models

You can easily pass your preferred LLM, such as OpenAI, Anthropic, or Google Generative AI, as shown below:

from langchain_openai import ChatOpenAI
from nlboard import nlboard

llm = ChatOpenAI()
response = nlboard(user_input, llm=llm)

Similarly, for other LLMs:

from langchain_anthropic import ChatAnthropic

llm = ChatAnthropic()
response = nlboard(user_input, llm=llm)
from langchain_google_genai import ChatGoogleGenerativeAI

llm = ChatGoogleGenerativeAI()
response = nlboard(user_input, llm=llm)

API Key Configuration

The default use of LLM7 is suitable for most cases, especially with its free tier. To improve rate limits, set your API key:

  • Via environment variable:
export LLM7_API_KEY='your-api-key'
  • Or pass directly in code:
response = nlboard(user_input, api_key='your-api-key')

You can obtain a free API key at https://token.llm7.io/.

Notes

Author

Eugene Evstafev
Email: hi@euegne.plus
GitHub: chigwell

Issues

For bugs or feature requests, create an issue on the GitHub repository.

Metadata

Release files for nlboard 2025.12.21124952

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

Source distribution (sdist)

Source distribution for nlboard 2025.12.21124952
File Size Uploaded
nlboard-2025.12.21124952.tar.gz 6.0 kB Details

Built distribution (wheel)

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

Total release size: 12.5 kB

Release files / nlboard-2025.12.21124952.tar.gz

Download URL nlboard-2025.12.21124952.tar.gz
Size 6.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c8a208ba34f95b0b7bbd8bafecd73f4524ffe709f9ab0da8d675571cf149c36e
BLAKE2b-256 checksum
How to use checksums
f53a710d37d265457c9100ebef21ff7f60ea94a23cea021ed8369189f7f50149
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.1

Release files / nlboard-2025.12.21124952-py3-none-any.whl

Download URL nlboard-2025.12.21124952-py3-none-any.whl
Size 6.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e1286524e945d660ee894ab3958e2ca83353652d2c62a09a4e0edbda2f1a6307
BLAKE2b-256 checksum
How to use checksums
0223e85dfda9d9ed6ed02e9da4c525604237cc973bc2867cec658fabbeee99a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.1

Release history Release notifications | RSS feed

This release

2025.12.21124952 This release

2 release files

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