{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.vdhug/CS50-Web-Programming-with-Python-and-JavaScript","documentNamespace":"https://spdx.org/spdxdocs/protobom/fa54ed7d-28ea-4503-9013-7c1c3fc437c1","comment":"Exact versions could not be resolved for some packages. For more information: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#dependencies-included.","creationInfo":{"creators":["Tool: protobom-v0.0.0-20250815191555-4e1e16745a4d+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2025-08-17T09:44:06Z"},"packages":[{"name":"django","SPDXID":"SPDXRef-pypi-django-2.0-75c946","versionInfo":"2.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"(c) ,h document.createElement 'strong h.className select2-results group, (c) 2007-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2008-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2009-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2010-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2013, (c) jQuery Foundation, (c), Better News, (c), Good News, (c), Hello Jack \u0026 Jill, Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, Copyright (c) 1995-1998, 2000-2010 Free Software Foundation, Inc., Copyright (c) 1995-2001 Corporation for National Research Initiatives, Copyright (c) 2001-2003, Patrick K. O'Brien and Contributors, Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016 Python Software Foundation, Copyright (c) 2002 Drew Perttula., Copyright (c) 2007-2009 Justin Bronn, Copyright (c) 2007-2009, Justin Bronn, Copyright (c) 2007-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, Copyright (c) 2007, Robert Coup \u003crobert.coup@onetrackmind.co.nz\u003e, Copyright (c) 2007, Sally, Copyright (c) 2007, Sally Smith, Copyright (c) 2007, Sally Smith Hard-coded, Copyright (c) 2008-2009 Aryeh Leib Taurog, Copyright (c) 2008-2009 Aryeh Leib Taurog, http://www.aryehleib.com, Copyright (c) 2008, Yahoo! Inc., Copyright (c) 2009 Oyvind Sean Kinsey, oyvind@kinsey.no, Copyright (c) 2009 Simon Willison., Copyright (c) 2009, Stanislaus Madueke, Copyright (c) 2010 Gary Wilson Jr. \u003cgary.wilson@gmail.com\u003e and contributors., Copyright (c) 2010 Guilherme Gondim., Copyright (c) 2010-2015 Benjamin Peterson, Copyright (c) 2011-2014, The Dojo Foundation, Copyright (c) 2012-2015 Kevin Brown, Igor Vaynberg, and Select2 contributors, Copyright (c) 2013 Python Software Foundation, Copyright (c) 2014 Code Charm Ltd, Copyright (c) Django Software Foundation and individual contributors., Copyright 2006 Google Inc. https://code.google.com/p/google-diff-match-patch, copyright Django Software Foundation and contributors, COPYRIGHT Django Software Foundation and contributors, Copyright jQuery Foundation and other contributors, Copyright jQuery Foundation and other contributors, https://jquery.org, copyright Python (Monty) Pictures., Portions copyright (c) 2004, CherryPy Team (team@cherrypy.org)","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/django@2.0"}]},{"name":"psycopg2","SPDXID":"SPDXRef-pypi-psycopg2-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/psycopg2"}]},{"name":"flask","SPDXID":"SPDXRef-pypi-flask-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask"}]},{"name":"sqlalchemy","SPDXID":"SPDXRef-pypi-sqlalchemy-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/sqlalchemy"}]},{"name":"flask-session","SPDXID":"SPDXRef-pypi-flask-session-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-session"}]},{"name":"flask-sqlalchemy","SPDXID":"SPDXRef-pypi-flask-sqlalchemy-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-sqlalchemy"}]},{"name":"flask-socketio","SPDXID":"SPDXRef-pypi-flask-socketio-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-socketio"}]},{"name":"dj-database-url","SPDXID":"SPDXRef-pypi-dj-database-url-0.5.0-75c946","versionInfo":"0.5.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"Copyright (c) 2014, Kenneth Reitz","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/dj-database-url@0.5.0"}]},{"name":"gunicorn","SPDXID":"SPDXRef-pypi-gunicorn-19.6.0-75c946","versionInfo":"19.6.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"(c) Benoit Chesneau \u003cbenoitc@e-engura.org\u003e 2009-2015, (c) Meebo, Inc., (c) Paul J. Davis \u003cpaul.joseph.davis@gmail.com\u003e, Copyright (c) 2001-2016 Python Software Foundation, Copyright (c) 2004, 2005 Google Inc., Copyright (c) 2004, 2005, Google Inc., Copyright (c) 2005-2006, Bob Ippolito, Copyright (c) 2007-2010, Linden Research, Inc., Copyright (c) 2008-2010, Eventlet, Copyright (c) 2010-2014 Benjamin Peterson, Copyright 2001-2005 by Vinay Sajip., Copyright 2009 Paul J. Davis \u003cpaul.joseph.davis@gmail.com\u003e, Copyright 2013 Dariusz Suchojad, copyright u'2009- s, Benoit Chesneau","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/gunicorn@19.6.0"}]},{"name":"django","SPDXID":"SPDXRef-pypi-django-2.0.3-75c946","versionInfo":"2.0.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"BSD-2-Clause","copyrightText":"(c) ,h document.createElement 'strong h.className select2-results group, (c) 2007-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2008-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2009-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2010-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2012 Steven Levithan \u003chttp://xregexp.com/\u003e, (c) 2013, (c) jQuery Foundation, (c), Better News, (c), Good News, (c), Hello Jack \u0026 Jill, Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, Copyright (c) 1995-1998, 2000-2010 Free Software Foundation, Inc., Copyright (c) 1995-2001 Corporation for National Research Initiatives, Copyright (c) 2001-2003, Patrick K. O'Brien and Contributors, Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016 Python Software Foundation, Copyright (c) 2002 Drew Perttula., Copyright (c) 2007-2009 Justin Bronn, Copyright (c) 2007-2009, Justin Bronn, Copyright (c) 2007-2012 Steven Levithan \u003chttp://xregexp.com/\u003e, Copyright (c) 2007, Robert Coup \u003crobert.coup@onetrackmind.co.nz\u003e, Copyright (c) 2007, Sally, Copyright (c) 2007, Sally Smith, Copyright (c) 2007, Sally Smith Hard-coded, Copyright (c) 2008-2009 Aryeh Leib Taurog, Copyright (c) 2008-2009 Aryeh Leib Taurog, http://www.aryehleib.com, Copyright (c) 2008, Yahoo! Inc., Copyright (c) 2009 Oyvind Sean Kinsey, oyvind@kinsey.no, Copyright (c) 2009 Simon Willison., Copyright (c) 2009, Stanislaus Madueke, Copyright (c) 2010 Gary Wilson Jr. \u003cgary.wilson@gmail.com\u003e and contributors., Copyright (c) 2010 Guilherme Gondim., Copyright (c) 2010-2015 Benjamin Peterson, Copyright (c) 2011-2014, The Dojo Foundation, Copyright (c) 2012-2015 Kevin Brown, Igor Vaynberg, and Select2 contributors, Copyright (c) 2013 Python Software Foundation, Copyright (c) 2014 Code Charm Ltd, Copyright (c) Django Software Foundation and individual contributors., Copyright 2006 Google Inc. https://code.google.com/p/google-diff-match-patch, copyright Django Software Foundation and contributors, COPYRIGHT Django Software Foundation and contributors, Copyright jQuery Foundation and other contributors, Copyright jQuery Foundation and other contributors, https://jquery.org, copyright Python (Monty) Pictures., Portions copyright (c) 2004, CherryPy Team (team@cherrypy.org)","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/django@2.0.3"}]},{"name":"psycopg2","SPDXID":"SPDXRef-pypi-psycopg2-2.7.1-75c946","versionInfo":"2.7.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"LGPL-3.0-or-later WITH openvpn-openssl-exception","copyrightText":"Copyright (c) 2001-2003 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2001-2006 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2001-2010 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Python Software Foundation, Copyright (c) 2002 Tom Jenkins \u003ctjenkins@devis.com\u003e, Copyright (c) 2003-2010 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2003-2015 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2004-2010 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2005 Federico Di Gregorio \u003cfog@initd.org\u003e, Copyright (c) 2005-2010 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2006-2010 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2006-2010 Johan Dahlin \u003cjdahlin@async.com.br\u003e, Copyright (c) 2006-2011 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2007 Free Software Foundation, Inc. \u003chttp://fsf.org/\u003e, Copyright (c) 2007-2011 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2007-2011 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2008 Canonical Ltd., Copyright (c) 2008 James Henstridge \u003cjames@jamesh.id.au\u003e, Copyright (c) 2008-2010 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2008-2011 James Henstridge \u003cjames@jamesh.id.au\u003e, Copyright (c) 2010 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2010-2011 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2010-2011 Federico Di Gregorio \u003cfog@debian.org\u003e, Copyright (c) 2010-2011 Jan Urbanski \u003cwulczer@wulczer.org\u003e, Copyright (c) 2011 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2012 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2013 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2013 Matthew Woodcraft \u003cmatthew@woodcraft.me.uk\u003e, Copyright (c) 2015 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2016 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright (c) 2017 Daniele Varrazzo \u003cdaniele.varrazzo@gmail.com\u003e, Copyright 2009, Jannis Leidel., Copyright 2010 by Daniele Varrazzo., Copyright 2013 by Daniele Varrazzo., copyright u'2001-2016, Federico Di Gregorio, Daniele Varrazzo","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/psycopg2@2.7.1"}]},{"name":"whitenoise","SPDXID":"SPDXRef-pypi-whitenoise-3.2.1-75c946","versionInfo":"3.2.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"licenseConcluded":"MIT","copyrightText":"Copyright (c) 2013 David Evans, copyright u'2013-, David","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/whitenoise@3.2.1"}]},{"name":"python-3-7-0","SPDXID":"SPDXRef-pypi-python-3-7-0-75c946","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-3-7-0"}]},{"name":"com.github.vdhug/CS50-Web-Programming-with-Python-and-JavaScript","SPDXID":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","versionInfo":"master","downloadLocation":"git+https://github.com/vdhug/CS50-Web-Programming-with-Python-and-JavaScript","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/vdhug/CS50-Web-Programming-with-Python-and-JavaScript@master"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-django-2.0.3-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-psycopg2-2.7.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-psycopg2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-sqlalchemy-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-flask-sqlalchemy-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-dj-database-url-0.5.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-gunicorn-19.6.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-whitenoise-3.2.1-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-python-3-7-0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-django-2.0-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-flask-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-flask-session-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relatedSpdxElement":"SPDXRef-pypi-flask-socketio-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-vdhug-CS50-Web-Programming-with-Python-and-JavaScript-master-070102","relationshipType":"DESCRIBES"}]}