Skip to content

Septimus4/Chronogen

Repository files navigation

Chronogen

Chronogen creates date-based wordlists that can be used for penetration testing, QA fixtures, or any workflow that needs exhaustive date coverage. The project now ships as a Python package with a modern command line interface and documentation.

Features

  • Symbolic format templates (YYYYMMDD, YYMMDD, MM, MMDD, etc.)
  • Optional custom strftime patterns
  • Prefix, suffix, casing, and separator controls
  • Month/day filtering, leap-day aware
  • Reverse chronological generation for targeting the latest dates first
  • CLI, python -m chronogen, or importable library

Installation

From source

git clone git@github.com:Septimus4/Chronogen.git && cd Chronogen
pip install .

For development extras (linting + tests):

pip install -e .[dev]

With pip

pip install chronogen

With Docker

To build the Docker image locally, run:

docker build -t chronogen:local .

or pull the pre-built image :

docker pull ghcr.io/septimus4/chronogen:latest

then use it:

docker run ghcr.io/septimus4/chronogen:latest [ARGS]

Command line usage

chronogen --start 1990 --end 1995 --format DDMMYY --separator "/" --prefix corp-

Use chronogen --help or consult the CLI documentation for all options. The tool can also be executed with python -m chronogen (module execution) during development.

Library usage

from chronogen import DateGenerator

generator = DateGenerator(start_year=2020, end_year=2021, format="YYYYMMDD", separator="-")
for value in generator.generate():
    print(value)

More examples are available in the library guide.

Development

See docs/development.md for linting, testing, and release workflows. Continuous integration is provided through GitHub Actions and enforces lint + coverage on pull requests.

To build distributable archives locally, install the optional dev dependencies and run:

python -m build

License

This project is distributed under the terms of the GNU General Public License v3.0. See LICENSE.

About

Creates date-based wordlists that can be used for penetration testing, QA fixtures, or any workflow that needs exhaustive date coverage.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors