Skip to content

linville/cmmcdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

30 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

cmmcdb

CMMCDB is a suite of utilities for importing the Cybersecurity Model Maturity Certification (CMMC) model framework into a normalized database structure (i.e.: Django active record model). It includes capabilities for importing the original PDF distributed by OUSD(A&S) and then exporting various other formats including OpenXML and JSON.

Requirements

  • Django, Python app framework used for active record, database abstraction, etc.
  • camelot-py, for parsing the PDF and extraction of tabular data.

Setup Environment

# Get the code
git clone https://github.com/linville/cmmcdb.git
cd cmmcdb

# Setup venv and get dependencies
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Basic Usage

# Create the sqlite database
./manage.py migrate

# Setup basic structures (populate domains and maturity levels)
./manage.py bootstrap

# Convert the PDF and import it into the database
./manage.py importpdf /path/to/cmmc.pdf

# Export to an Microsoft Excel compatible OpenXML document
./manage.py exportxlsx

# Export to JSON (formatted as a Django fixture)
./manage.py dumpdata --indent 2 cmmcdb

About

πŸ”’ Utilities for generating appraisal and compliance materials for the CMMC. πŸ—ƒ

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages