-
Notifications
You must be signed in to change notification settings - Fork 685
Repository map
Cory Francis Myers edited this page Nov 9, 2022
·
2 revisions
tree -L 1
Path | Description |
---|---|
├── admin |
Tails-specific code, invoked by securedrop-admin
|
├── build |
Directory used for storing built packages |
├── changelog.md |
History of changes to the project |
├── .circleci |
Configuration for continous integration with CircleCI |
├── codecov.yml |
Configuration for the Codecov metrics tool |
├── CONTRIBUTING.md |
How to contribute to SecureDrop |
├── devops |
Scripts used primarily for CI and demo.securedrop.org |
├── .dockerignore |
Files Docker is not supposed to copy by default |
├── .editorconfig |
Configuration presets for text editors |
├── install_files |
Ansible playbooks and related files used in installing SecureDrop from the Admin Workstation |
├── .flake8 |
flake8 linter configuration |
├── .git-blame-ignore-revs |
Commits to ignore (f.e. mass code changes) when executing git blame
|
├── .githooks |
Git hooks installed by make add-hooks
|
├── .github |
GitHub metadata and issue/PR templates |
├── .gitignore |
Files git is not supposed to track by default |
├── journalist_gui |
The graphical SecureDrop updater |
├── junit |
Empty directory used for storing test results in CI |
├── LICENSE |
Copyright statement and software license |
├── .lgtm.yml |
Configuration for lgtm.com GitHub integration |
├── Makefile |
Shortcuts for working in this repository (run make help for details) |
├── .mailmap |
Email address to name map used by git |
├── molecule |
Infrastructure for CI and QA |
├── mypy.ini |
Configuration for the mypy linter |
├── project.json |
Configuration shared among FPF projects |
├── pyproject.toml |
Configuration for Python tools |
├── README.md |
About this project |
├── securedrop |
SecureDrop Web applications—see next section |
├── securedrop-admin |
Wrapper script for the "securedrop-admin" directory |
├── SECURITY.md |
How to report security issues |
├── SOURCE_OFFER |
Information on getting GPL-licensed code from FPF |
├── tails_files |
Templates used for setting up new Admin and Journalist Workstations |
├── test-results |
The results of the test suite run via make test
|
├── update_version.sh |
Maintainer's tool for incrementing versions during releases |
└── .yamllint |
yamllint linter configuration file |
tree -L 1 -a securedrop
Path | Description |
---|---|
├── alembic |
Migration scripts for upgrading and downgrading the SQLite database |
├── alembic.ini |
Configuration for the Alembic migration tool |
├── babel.cfg |
Configuration for the Babel localization helper |
├── bin |
Scripts used primarily for development and CI |
├── codecov.yml |
Configuration for the Codecov metrics tool |
├── config.py.example |
Template for SecureDrop config.py
|
├── COPYING |
Software license |
├── .coveragerc |
Configuration for the coverage metrics tool |
├── db.py |
SQLAlchemy wrapper for the SQLite database |
├── debian |
Configuration for building Debian packages |
├── dictionaries |
Lists of adjectives and nouns for generating two-word designation for sources |
├── dockerfiles |
Configuration for containers used for development, CI, and demo.securedrop.org |
├── .dockerignore |
Files Docker is not supposed to copy by default |
├── encryption.py |
Helper for interacting with GPG |
├── execution.py |
Helper for interacting with threads |
├── .gitignore |
Files git is not supposed to track by default |
├── i18n.json |
Localisation metadata, which languages SecureDrop supports |
├── i18n.py |
Helper for determining which languages to offer and serve to users |
├── i18n_tool.py |
Maintainer's tool for updating translations |
├── journalist_app |
Journalist Interface (JI) web application code |
├── journalist.py |
Helper for serving the Journalist Interface |
├── journalist_templates |
Journalist Interface (JI) Jinja2 templates |
├── loaddata.py |
Load dummy test data into a development environment |
├── management |
Custom commands available via manage.py
|
├── manage.py |
CLI tool for interacting with the SecureDrop Web apps and database |
├── models.py |
SQLAlchemy ORM definitions for the SQLite database |
├── passphrases.py |
Helper for generating diceware passphrases |
├── .pylint-dictionary |
Dictionary of valid words for the Pylint linter |
├── pylintrc |
Configuration for the Pylint linter |
├── request_that_secures_file_uploads.py |
Helper for receiving file uploads securely |
├── requirements |
Pinned dependencies |
├── rm.py |
Secure deletion/shredding functions |
├── scripts |
Scripts invoked by the development environment as well as systemd services in /debian/app-code/lib/systemd/system/
|
├── sdconfig.py |
|
├── secure_tempfile.py |
Temporary files encrypted on-the-fly |
├── server_os.py |
Server metadata returned by the API |
├── setup.py |
Setuptools config file |
├── source_app |
Source Interface (SI) web application code |
├── source.py |
Helper for serving the Source Interface |
├── source_templates |
Source Interface (SI) Jinja2 templates |
├── source_user.py |
Source authentication |
├── specialstrings.py |
Dummy data for loaddata.py
|
├── static |
Static web resources served to both sources and journalists |
├── store.py |
Helpers for saving and deleting files |
├── template_filters.py |
Custom helper functions for use in Jinja2 templates |
├── tests |
Unit and integration tests |
├── translations |
gettext templates (.pot ), catalogs (.po ), and machine objects (.mo ) for translations |
├── upload-screenshots.py |
Localisation helper, associating strings in weblate with screenshots |
├── version.py |
SecureDrop version readable from Python |
├── .well-known |
|
├── wordlists |
Word lists used for diceware password generation |
└── worker.py |
Redis Worker/Queue functions |