Documentation

Python Package Dependencies

Smarter Platform is a Python-Django micro-service application. Below is a list of the requirements and version pins for packages included in this environment. Note that we bump version pins on a monthly basis on the first of each month to our alpha branch. Version bumps follow the normal CI-CD workflow to arrive into the production environment, and that this takes an indertiminate amount of time before these ultimately arrive into the production environment. If you are developing your solution in Python then you can use this list to ensure that your development environment is in sync with the Smarter Platform.

#
# This file is autogenerated by pip-compile with Python 3.12
# by the following command:
#
#    pip-compile --output-file=smarter/requirements/docker.txt smarter/requirements/in/docker.in
#
aiohappyeyeballs==2.6.1
    # via aiohttp
aiohttp==3.12.15
    # via llamaai
aiosignal==1.4.0
    # via aiohttp
amqp==5.3.1
    # via kombu
annotated-types==0.7.0
    # via pydantic
anyascii==0.3.3
    # via wagtail
anyio==4.10.0
    # via
    #   httpx
    #   openai
asgiref==3.9.1
    # via
    #   django
    #   django-cors-headers
attrs==25.3.0
    # via
    #   aiohttp
    #   cattrs
    #   requests-cache
bcrypt==4.3.0
    # via paramiko
beautifulsoup4==4.13.3
    # via
    #   -r smarter/requirements/in/base.in
    #   wagtail
billiard==4.2.1
    # via celery
boto3==1.40.30
    # via -r smarter/requirements/in/base.in
botocore==1.40.30
    # via
    #   -r smarter/requirements/in/base.in
    #   boto3
    #   s3transfer
cachetools==5.5.2
    # via
    #   -r smarter/requirements/in/base.in
    #   -r smarter/requirements/in/constraints.in
    #   google-auth
cattrs==25.2.0
    # via requests-cache
celery==5.5.3
    # via
    #   -r smarter/requirements/in/base.in
    #   celery-redbeat
    #   django-celery-beat
celery-redbeat==2.3.3
    # via -r smarter/requirements/in/base.in
certifi==2025.8.3
    # via
    #   -r smarter/requirements/in/constraints.in
    #   httpcore
    #   httpx
    #   mailchimp-marketing
    #   requests
cffi==2.0.0
    # via
    #   cryptography
    #   pynacl
chardet==5.2.0
    # via -r smarter/requirements/in/constraints.in
charset-normalizer==3.4.3
    # via
    #   -r smarter/requirements/in/constraints.in
    #   requests
click==8.2.1
    # via
    #   celery
    #   click-didyoumean
    #   click-plugins
    #   click-repl
    #   nltk
click-didyoumean==0.3.1
    # via celery
click-plugins==1.1.1.2
    # via celery
click-repl==0.3.0
    # via celery
colorama==0.4.6
    # via -r smarter/requirements/in/constraints.in
cron-descriptor==2.0.6
    # via django-celery-beat
cryptography==45.0.7
    # via
    #   paramiko
    #   social-auth-core
defusedxml==0.7.1
    # via
    #   python3-openid
    #   social-auth-core
    #   willow
distro==1.9.0
    # via openai
django==5.2.6
    # via
    #   -r smarter/requirements/in/base.in
    #   django-celery-beat
    #   django-cors-headers
    #   django-filter
    #   django-modelcluster
    #   django-permissionedforms
    #   django-redis
    #   django-rest-knox
    #   django-storages
    #   django-stubs-ext
    #   django-taggit
    #   django-tasks
    #   django-timezone-field
    #   django-treebeard
    #   django-waffle
    #   djangorestframework
    #   drf-yasg
    #   laces
    #   social-auth-app-django
    #   wagtail
django-celery-beat==2.8.1
    # via -r smarter/requirements/in/base.in
django-cors-headers==4.7.0
    # via -r smarter/requirements/in/base.in
django-filter==25.1
    # via
    #   -r smarter/requirements/in/base.in
    #   wagtail
django-modelcluster==6.4
    # via wagtail
django-permissionedforms==0.1
    # via wagtail
django-redis==6.0.0
    # via -r smarter/requirements/in/base.in
django-rest-knox==5.0.2
    # via -r smarter/requirements/in/base.in
django-storages==1.14.6
    # via -r smarter/requirements/in/base.in
django-stubs-ext==5.2.5
    # via django-tasks
django-taggit==6.1.0
    # via
    #   -r smarter/requirements/in/base.in
    #   wagtail
django-tasks==0.8.1
    # via wagtail
django-timezone-field==7.1
    # via django-celery-beat
django-treebeard==4.7.1
    # via wagtail
django-waffle==5.0.0
    # via -r smarter/requirements/in/base.in
djangorestframework==3.16.1
    # via
    #   -r smarter/requirements/in/base.in
    #   django-rest-knox
    #   drf-yasg
    #   wagtail
dnspython==2.7.0
    # via -r smarter/requirements/in/base.in
docutils==0.22
    # via -r smarter/requirements/in/base.in
draftjs-exporter==5.1.0
    # via wagtail
drf-yasg==1.21.10
    # via -r smarter/requirements/in/base.in
et-xmlfile==2.0.0
    # via openpyxl
filelock==3.19.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   tldextract
filetype==1.2.0
    # via willow
flatbuffers==25.2.10
    # via openmeteo-sdk
frozenlist==1.7.0
    # via
    #   aiohttp
    #   aiosignal
google-ai-generativelanguage==0.6.15
    # via google-generativeai
google-api-core[grpc]==2.25.1
    # via
    #   google-ai-generativelanguage
    #   google-api-python-client
    #   google-generativeai
google-api-python-client==2.181.0
    # via google-generativeai
google-auth==2.40.3
    # via
    #   google-ai-generativelanguage
    #   google-api-core
    #   google-api-python-client
    #   google-auth-httplib2
    #   google-generativeai
google-auth-httplib2==0.2.0
    # via google-api-python-client
google-generativeai==0.8.5
    # via -r smarter/requirements/in/base.in
googleapis-common-protos==1.70.0
    # via
    #   google-api-core
    #   grpcio-status
googlemaps==4.10.0
    # via -r smarter/requirements/in/base.in
grpcio==1.74.0
    # via
    #   google-api-core
    #   grpcio-status
grpcio-status==1.71.2
    # via google-api-core
gunicorn==23.0.0
    # via -r smarter/requirements/in/docker.in
h11==0.16.0
    # via httpcore
htmlmin==0.1.12
    # via -r smarter/requirements/in/base.in
httpcore==1.0.9
    # via httpx
httplib2==0.31.0
    # via
    #   google-api-python-client
    #   google-auth-httplib2
httpx==0.28.1
    # via openai
idna==3.10
    # via
    #   -r smarter/requirements/in/constraints.in
    #   anyio
    #   httpx
    #   requests
    #   tldextract
    #   url-normalize
    #   yarl
inflect==7.4.0
    # via -r smarter/requirements/in/base.in
inflection==0.5.1
    # via drf-yasg
iniconfig==2.1.0
    # via -r smarter/requirements/in/constraints.in
invoke==2.2.0
    # via paramiko
jiter==0.10.0
    # via openai
jmespath==1.0.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   boto3
    #   botocore
joblib==1.5.2
    # via
    #   -r smarter/requirements/in/constraints.in
    #   nltk
kombu==5.5.4
    # via celery
laces==0.1.2
    # via wagtail
lark==1.2.2
    # via python-hcl2
levenshtein==0.27.1
    # via python-levenshtein
llamaai==0.1.27
    # via -r smarter/requirements/in/base.in
lxml==6.0.0
    # via -r smarter/requirements/in/base.in
mailchimp-marketing==3.0.80
    # via -r smarter/requirements/in/base.in
markdown==3.8
    # via -r smarter/requirements/in/base.in
mccabe==0.7.0
    # via -r smarter/requirements/in/constraints.in
mdurl==0.1.2
    # via -r smarter/requirements/in/constraints.in
more-itertools==10.8.0
    # via
    #   -r smarter/requirements/in/constraints.in
    #   inflect
multidict==6.6.4
    # via
    #   -r smarter/requirements/in/constraints.in
    #   aiohttp
    #   yarl
mysqlclient==2.2.7
    # via -r smarter/requirements/in/base.in
nest-asyncio==1.6.0
    # via llamaai
nltk==3.9.1
    # via
    #   -r smarter/requirements/in/base.in
    #   textblob
numpy==2.3.3
    # via pandas
oauthlib==3.3.1
    # via
    #   requests-oauthlib
    #   social-auth-core
openai==1.101.0
    # via -r smarter/requirements/in/base.in
openmeteo-requests==1.3.0
    # via -r smarter/requirements/in/base.in
openmeteo-sdk==1.20.1
    # via openmeteo-requests
openpyxl==3.1.5
    # via wagtail
packaging==25.0
    # via
    #   drf-yasg
    #   gunicorn
    #   kombu
pandas==2.3.2
    # via -r smarter/requirements/in/base.in
paramiko==4.0.0
    # via -r smarter/requirements/in/base.in
pathspec==0.12.1
    # via -r smarter/requirements/in/constraints.in
pillow==11.3.0
    # via
    #   pillow-heif
    #   wagtail
pillow-heif==1.1.0
    # via willow
platformdirs==4.4.0
    # via
    #   -r smarter/requirements/in/constraints.in
    #   requests-cache
pluggy==1.6.0
    # via -r smarter/requirements/in/constraints.in
prompt-toolkit==3.0.52
    # via click-repl
propcache==0.3.2
    # via
    #   aiohttp
    #   yarl
proto-plus==1.26.1
    # via
    #   google-ai-generativelanguage
    #   google-api-core
protobuf==5.29.5
    # via
    #   google-ai-generativelanguage
    #   google-api-core
    #   google-generativeai
    #   googleapis-common-protos
    #   grpcio-status
    #   proto-plus
pyasn1==0.6.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   pyasn1-modules
    #   rsa
pyasn1-modules==0.4.2
    # via
    #   -r smarter/requirements/in/constraints.in
    #   google-auth
pycodestyle==2.14.0
    # via -r smarter/requirements/in/constraints.in
pycparser==2.23
    # via
    #   -r smarter/requirements/in/constraints.in
    #   cffi
pydantic==2.11.7
    # via
    #   -r smarter/requirements/in/base.in
    #   google-generativeai
    #   openai
    #   pydantic-settings
pydantic-core==2.33.2
    # via pydantic
pydantic-settings==2.10.1
    # via -r smarter/requirements/in/base.in
pyflakes==3.4.0
    # via -r smarter/requirements/in/constraints.in
pyjwt==2.10.1
    # via social-auth-core
pynacl==1.6.0
    # via paramiko
pyparsing==3.2.4
    # via
    #   -r smarter/requirements/in/constraints.in
    #   httplib2
python-crontab==3.3.0
    # via django-celery-beat
python-dateutil==2.9.0.post0
    # via
    #   botocore
    #   celery
    #   celery-redbeat
    #   mailchimp-marketing
    #   pandas
python-dotenv==1.1.1
    # via
    #   -r smarter/requirements/in/base.in
    #   pydantic-settings
python-hcl2==7.3.1
    # via -r smarter/requirements/in/base.in
python-levenshtein==0.27.1
    # via -r smarter/requirements/in/base.in
python3-openid==3.2.0
    # via social-auth-core
pytz==2025.2
    # via
    #   drf-yasg
    #   pandas
pyyaml==6.0.2
    # via
    #   -r smarter/requirements/in/base.in
    #   drf-yasg
rapidfuzz==3.14.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   levenshtein
redis==6.4.0
    # via
    #   celery-redbeat
    #   django-redis
regex==2025.9.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   nltk
    #   python-hcl2
requests==2.32.5
    # via
    #   -r smarter/requirements/in/base.in
    #   google-api-core
    #   googlemaps
    #   llamaai
    #   mailchimp-marketing
    #   openmeteo-requests
    #   requests-cache
    #   requests-file
    #   requests-oauthlib
    #   retry-requests
    #   social-auth-core
    #   tldextract
    #   wagtail
requests-cache==1.2.1
    # via -r smarter/requirements/in/base.in
requests-file==2.1.0
    # via tldextract
requests-oauthlib==2.0.0
    # via social-auth-core
retry-requests==2.0.0
    # via -r smarter/requirements/in/base.in
rsa==4.9.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   google-auth
s3transfer==0.14.0
    # via boto3
six==1.17.0
    # via
    #   -r smarter/requirements/in/constraints.in
    #   mailchimp-marketing
    #   python-dateutil
sniffio==1.3.1
    # via
    #   -r smarter/requirements/in/constraints.in
    #   anyio
    #   openai
social-auth-app-django==5.4.2
    # via -r smarter/requirements/in/base.in
social-auth-core==4.7.0
    # via social-auth-app-django
soupsieve==2.8
    # via
    #   -r smarter/requirements/in/constraints.in
    #   beautifulsoup4
sqlparse==0.5.3
    # via
    #   -r smarter/requirements/in/constraints.in
    #   django
stevedore==5.5.0
    # via -r smarter/requirements/in/constraints.in
telepath==0.3.1
    # via wagtail
tenacity==9.1.2
    # via
    #   -r smarter/requirements/in/constraints.in
    #   celery-redbeat
textblob==0.19.0
    # via -r smarter/requirements/in/base.in
tldextract==5.3.0
    # via -r smarter/requirements/in/base.in
tomlkit==0.13.3
    # via -r smarter/requirements/in/constraints.in
tqdm==4.67.1
    # via
    #   google-generativeai
    #   nltk
    #   openai
typeguard==4.4.4
    # via inflect
typing-extensions==4.15.0
    # via
    #   -r smarter/requirements/in/constraints.in
    #   aiosignal
    #   anyio
    #   beautifulsoup4
    #   cattrs
    #   cron-descriptor
    #   django-stubs-ext
    #   django-tasks
    #   google-generativeai
    #   openai
    #   pydantic
    #   pydantic-core
    #   typeguard
    #   typing-inspection
typing-inspection==0.4.1
    # via
    #   pydantic
    #   pydantic-settings
tzdata==2025.2
    # via
    #   -r smarter/requirements/in/constraints.in
    #   django-celery-beat
    #   kombu
    #   pandas
uritemplate==4.2.0
    # via
    #   drf-yasg
    #   google-api-python-client
url-normalize==2.2.1
    # via requests-cache
urllib3==2.5.0
    # via
    #   -r smarter/requirements/in/constraints.in
    #   botocore
    #   mailchimp-marketing
    #   requests
    #   requests-cache
    #   retry-requests
validators==0.35.0
    # via
    #   -r smarter/requirements/in/base.in
    #   -r smarter/requirements/in/constraints.in
vine==5.1.0
    # via
    #   -r smarter/requirements/in/constraints.in
    #   amqp
    #   celery
    #   kombu
wagtail==7.1.1
    # via
    #   -r smarter/requirements/in/base.in
    #   wagtail-transfer
wagtail-transfer==0.9.4
    # via -r smarter/requirements/in/base.in
wcwidth==0.2.13
    # via
    #   -r smarter/requirements/in/constraints.in
    #   prompt-toolkit
wheel==0.45.1
    # via -r smarter/requirements/in/constraints.in
whitenoise==6.9.0
    # via -r smarter/requirements/in/base.in
willow[heif]==1.11.0
    # via
    #   wagtail
    #   willow
yarl==1.20.1
    # via aiohttp

      

We're


Hiring!

Let's do something amazing, together! We're currently hiring for Full Stack and React developers, devops, and prompt engineering positions.

Requirements

Pass an online skills assessment exam
Communication and time-management skills
Intellectual curiosity and a passion for learning
Willingness and ability to dedicate yourself full time to this position

Our Achievements

Patented technology
Developers of Stepwise AI technology
U.S. Dept of Education grant recipient
Explore More

Stay
Connected