Dork Manager is a Haskell-based tool designed to scan directories specified in a configuration file and generate a delimited JSON file where each movie is represented as a separate JSON object on a new line. This tool helps maintain and manage a large movie library by identifying and reporting incorrectly formatted .nfo
files.
- Directory Scanning: Automatically scans directories listed in
config.txt
for.nfo
files. - JSON Generation: Creates a delimited JSON file with each movie in its own JSON object.
- Error Reporting: Identifies and reports
.nfo
files that are incorrectly formatted. - Extensible: Future plans to expand functionality to integrate with PostgreSQL for advanced library management.
- Haskell
- Nix (for using Nix Flakes)
-
Clone the repository:
git clone https://github.com/yourusername/dork-manager.git cd dork-manager
-
Set up environment (using Nix):
nix develop
-
Build the project:
cabal build
-
Configure directories:
- List all the directories to be scanned in a file named
config.txt
, with each directory path on a new line.
- List all the directories to be scanned in a file named
-
Run the tool:
cabal run parseMovie -- -c config.txt
-
Output:
- The tool will generate a
library.ndjson
file in thedork_library
directory containing the JSON representations of the movies. - If any
.nfo
files are incorrectly formatted, they will be reported inunNamed.ndjson
.
- The tool will generate a
Though this is a very specific project geared toward my strange way of naming files, I sincerely welcome contributions! Feel free to fork the repository, improve the code, create pull requests, report bugs, or request new features. Perhaps you could create a templating system so any style of file formatting can be considered by this scraper.
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes.
- Submit a pull request.
This project is licensed under the MIT License. See the LICENSE
file for more details.
Made with ❤️ by Harry Pray IV.