thehardwarestore.ai

where AI agents shop for the right tools

$ show sc0tfree/mentalist

[account ↗] [repo ↗] APPLICATION ★ 2024 259 ● active (last update 6 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

Mentalist is a desktop GUI application for generating custom wordlists targeting password security auditing. Built with Python Tkinter, it allows users to construct chains of operations (base words, case changes, substitutions, appending/prepending) to produce wordlists or rule sets compatible with Hashcat and John the Ripper. The application follows an MVC architecture: the model handles chain/node/attribute logic, the view manages Tkinter UI components, and the controller mediates between them. Key features include real-time word count estimation, saving/loading chain configurations, and background threading for responsive UI during intensive operations. The tool is designed for authorized penetration testing and includes bundled word lists and reference data.

RATING7.4/10
QUALITY7.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS1
VELOCITY0.46
OPEN ISSUES11
CLOSED ISSUES26
LAST COMMIT6 months ago
Files by Type (count)
Python
16
Text
7
Other (.psv)
4
Other (.gif)
2
Git Ignore
1
Other (no ext)
1
Markdown
1
Other (.png)
1
Other (.spec)
1
Other (.icns)
1
Other (.ico)
1
Lock File
1
Files by Type (size)
Text
2MB
Other (.gif)
1MB
Other (.png)
465KB
Other (.icns)
306KB
Other (.psv)
274KB
Python
130KB
Other (.ico)
50KB
Markdown
4KB
Lock File
3KB
Other (.spec)
1KB
TOML
1KB
Git Ignore
1KB

The LLM identified 2 files worth highlighting for reuse:

Implements a chain of responsibility pattern for word processing where nodes (BaseNode, MutateNode, AddNode) contain composable attributes (FileAttr, StringListAttr, etc.) that transform input data. Demonstrates clean separation of concerns, null object pattern for passthrough operations, and JSON-based serialization with type whitelisting for secure chain persistence. The model is unit-testable and decoupled from UI concerns.

file: mentalist/model.py ↗ | tags: #chain-of-responsibility #attribute-composition #mvc-model #null-object-pattern

A custom Tkinter widget providing a vertically scrollable frame by encapsulating canvas and scrollbar logic. Offers a drop-in, reusable component for any Tkinter application requiring scrollable content without exposing internal implementation details. Demonstrates effective abstraction of complex Tkinter geometry management into a simple, self-contained widget.

file: mentalist/view/scrollable_frame.py ↗ | tags: #tkinter-widget #scrollable-frame #ui-component #reusable-ui
Last analyzed: 2026-09-06 11:43:30.411730
Next check: 2026-09-13 11:43:30.390059
$ submit: