├── .github
└── workflows
│ ├── release.yml
│ └── test.yml
├── .gitignore
├── AGENTS.md
├── CLAUDE.md
├── CONTRIBUTING.md
├── README.md
├── example
├── .env
├── .gitignore
├── app
│ ├── __init__.py
│ ├── cli.py
│ ├── flags.py
│ ├── settings.py
│ ├── templates
│ │ ├── base.html
│ │ ├── index.html
│ │ └── login.html
│ ├── urls.py
│ └── users
│ │ ├── __init__.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ └── models.py
├── pyproject.toml
├── scripts
│ └── install
├── tailwind.css
└── tests
│ └── test_urls.py
├── plain-admin
├── LICENSE
├── README.md
├── plain
│ └── admin
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── assets
│ │ └── admin
│ │ │ ├── admin.css
│ │ │ ├── admin.js
│ │ │ ├── bootstrap-icons.svg
│ │ │ ├── list.js
│ │ │ └── vendor
│ │ │ ├── chart.js
│ │ │ ├── jquery-3.7.1.min.js
│ │ │ ├── popper.min.js
│ │ │ ├── tippy.css
│ │ │ └── tippy.umd.min.js
│ │ ├── cards
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── charts.py
│ │ └── tables.py
│ │ ├── config.py
│ │ ├── dates.py
│ │ ├── impersonate
│ │ ├── __init__.py
│ │ ├── constants.py
│ │ ├── middleware.py
│ │ ├── permissions.py
│ │ ├── requests.py
│ │ ├── settings.py
│ │ ├── urls.py
│ │ └── views.py
│ │ ├── middleware.py
│ │ ├── templates.py
│ │ ├── templates
│ │ ├── admin
│ │ │ ├── base.html
│ │ │ ├── cards
│ │ │ │ ├── base.html
│ │ │ │ ├── card.html
│ │ │ │ ├── chart.html
│ │ │ │ └── table.html
│ │ │ ├── delete.html
│ │ │ ├── detail.html
│ │ │ ├── index.html
│ │ │ ├── list.html
│ │ │ ├── page.html
│ │ │ ├── search.html
│ │ │ ├── toolbar
│ │ │ │ └── button.html
│ │ │ └── values
│ │ │ │ ├── UUID.html
│ │ │ │ ├── bool.html
│ │ │ │ ├── datetime.html
│ │ │ │ ├── default.html
│ │ │ │ ├── dict.html
│ │ │ │ ├── img.html
│ │ │ │ ├── list.html
│ │ │ │ ├── model.html
│ │ │ │ └── queryset.html
│ │ └── elements
│ │ │ └── admin
│ │ │ ├── Checkbox.html
│ │ │ ├── CheckboxField.html
│ │ │ ├── FieldErrors.html
│ │ │ ├── Help.html
│ │ │ ├── Icon.html
│ │ │ ├── Input.html
│ │ │ ├── InputField.html
│ │ │ ├── Label.html
│ │ │ ├── Select.html
│ │ │ ├── SelectField.html
│ │ │ ├── Submit.html
│ │ │ ├── Textarea.html
│ │ │ └── TextareaField.html
│ │ ├── toolbar.py
│ │ ├── urls.py
│ │ ├── utils.py
│ │ └── views
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── models.py
│ │ ├── objects.py
│ │ ├── registry.py
│ │ ├── types.py
│ │ └── viewsets.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ ├── urls.py
│ └── users
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ └── models.py
│ └── test_admin.py
├── plain-api
├── LICENSE
├── README.md
├── plain
│ └── api
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cli.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── openapi
│ │ ├── __init__.py
│ │ ├── decorators.py
│ │ ├── generator.py
│ │ └── utils.py
│ │ ├── schemas.py
│ │ ├── versioning.py
│ │ └── views.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ └── urls.py
│ └── test_api.py
├── plain-auth
├── LICENSE
├── README.md
├── plain
│ └── auth
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── default_settings.py
│ │ ├── requests.py
│ │ ├── sessions.py
│ │ ├── templates.py
│ │ ├── test.py
│ │ ├── utils.py
│ │ └── views.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ ├── urls.py
│ └── users
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ └── models.py
│ └── test_views.py
├── plain-cache
├── LICENSE
├── README.md
├── plain
│ └── cache
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── chores.py
│ │ ├── cli.py
│ │ ├── config.py
│ │ ├── core.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ └── models.py
└── pyproject.toml
├── plain-code
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── code
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── biome.py
│ │ ├── biome_defaults.json
│ │ ├── cli.py
│ │ ├── entrypoints.py
│ │ └── ruff_defaults.toml
└── pyproject.toml
├── plain-dev
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── dev
│ │ ├── AGENTS.md
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── alias.py
│ │ ├── cli.py
│ │ ├── contribute
│ │ ├── README.md
│ │ ├── __init__.py
│ │ └── cli.py
│ │ ├── core.py
│ │ ├── debug.py
│ │ ├── default_settings.py
│ │ ├── entrypoints.py
│ │ ├── mkcert.py
│ │ ├── pdb.py
│ │ ├── poncho
│ │ ├── __init__.py
│ │ ├── color.py
│ │ ├── compat.py
│ │ ├── manager.py
│ │ ├── printer.py
│ │ └── process.py
│ │ ├── precommit
│ │ ├── __init__.py
│ │ └── cli.py
│ │ ├── process.py
│ │ ├── services.py
│ │ └── utils.py
├── pyproject.toml
└── tests
│ └── settings.py
├── plain-elements
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── elements
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ └── templates.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ └── urls.py
│ └── test_elements.py
├── plain-email
├── LICENSE
├── README.md
├── plain
│ └── email
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── backends
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── console.py
│ │ ├── filebased.py
│ │ └── smtp.py
│ │ ├── default_settings.py
│ │ ├── message.py
│ │ └── utils.py
└── pyproject.toml
├── plain-esbuild
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── esbuild
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cli.py
│ │ ├── core.py
│ │ └── entrypoints.py
└── pyproject.toml
├── plain-flags
├── LICENSE
├── README.md
├── plain
│ └── flags
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── bridge.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── exceptions.py
│ │ ├── flags.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_remove_flag_plainflags_flag_unique_uuid_and_more.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── preflight.py
│ │ ├── py.typed
│ │ ├── templates.py
│ │ ├── templates
│ │ └── admin
│ │ │ └── plainflags
│ │ │ └── flagresult_form.html
│ │ └── utils.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ └── urls.py
│ └── test_flags.py
├── plain-htmx
├── .gitignore
├── LICENSE
├── README.md
├── deps.yml
├── package-lock.json
├── package.json
├── plain
│ └── htmx
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── assets
│ │ └── htmx
│ │ │ ├── plainhtmx.js
│ │ │ └── vendor
│ │ │ ├── idiomorph
│ │ │ ├── idiomorph-ext.js
│ │ │ ├── idiomorph-ext.min.js
│ │ │ ├── idiomorph-htmx.js
│ │ │ ├── idiomorph.amd.js
│ │ │ ├── idiomorph.cjs.js
│ │ │ ├── idiomorph.esm.js
│ │ │ ├── idiomorph.js
│ │ │ └── idiomorph.min.js
│ │ │ └── src
│ │ │ ├── ext
│ │ │ ├── README.md
│ │ │ ├── ajax-header.js
│ │ │ ├── alpine-morph.js
│ │ │ ├── class-tools.js
│ │ │ ├── client-side-templates.js
│ │ │ ├── debug.js
│ │ │ ├── disable-element.js
│ │ │ ├── event-header.js
│ │ │ ├── head-support.js
│ │ │ ├── include-vals.js
│ │ │ ├── json-enc.js
│ │ │ ├── loading-states.js
│ │ │ ├── method-override.js
│ │ │ ├── morphdom-swap.js
│ │ │ ├── multi-swap.js
│ │ │ ├── path-deps.js
│ │ │ ├── path-params.js
│ │ │ ├── preload.js
│ │ │ ├── rails-method.js
│ │ │ ├── remove-me.js
│ │ │ ├── response-targets.js
│ │ │ ├── restored.js
│ │ │ ├── sse.js
│ │ │ └── ws.js
│ │ │ ├── htmx.amd.js
│ │ │ ├── htmx.cjs.js
│ │ │ ├── htmx.esm.d.ts
│ │ │ ├── htmx.esm.js
│ │ │ ├── htmx.js
│ │ │ ├── htmx.min.js
│ │ │ └── htmx.min.js.gz
│ │ ├── templates.py
│ │ ├── templates
│ │ └── htmx
│ │ │ └── js.html
│ │ └── views.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ └── urls.py
│ └── test_views.py
├── plain-jobs
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── jobs
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── chores.py
│ │ ├── cli.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── exceptions.py
│ │ ├── jobs.py
│ │ ├── locks.py
│ │ ├── middleware.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_job_span_id_job_trace_id_jobrequest_span_id_and_more.py
│ │ ├── 0003_rename_job_jobprocess_and_more.py
│ │ ├── 0004_rename_tables_to_plainjobs.py
│ │ ├── 0005_rename_constraints_and_indexes.py
│ │ ├── 0006_alter_jobprocess_table_alter_jobrequest_table_and_more.py
│ │ ├── 0007_remove_jobrequest_plainjobs_jobrequest_unique_job_class_key_and_more.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── parameters.py
│ │ ├── registry.py
│ │ ├── scheduling.py
│ │ ├── templates
│ │ └── admin
│ │ │ └── plainqueue
│ │ │ └── jobresult_detail.html
│ │ └── workers.py
├── pyproject.toml
└── tests
│ ├── app
│ └── settings.py
│ ├── test_parameters.py
│ └── test_scheduling.py
├── plain-loginlink
├── LICENSE
├── README.md
├── plain
│ └── loginlink
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── forms.py
│ │ ├── links.py
│ │ ├── signing.py
│ │ ├── templates
│ │ ├── email
│ │ │ ├── loginlink.html
│ │ │ └── loginlink.subject.txt
│ │ └── loginlink
│ │ │ ├── failed.html
│ │ │ └── sent.html
│ │ ├── urls.py
│ │ └── views.py
└── pyproject.toml
├── plain-models
├── LICENSE
├── README.md
├── plain
│ └── models
│ │ ├── AGENTS.md
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── aggregates.py
│ │ ├── backends
│ │ ├── __init__.py
│ │ ├── base
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── client.py
│ │ │ ├── creation.py
│ │ │ ├── features.py
│ │ │ ├── introspection.py
│ │ │ ├── operations.py
│ │ │ ├── schema.py
│ │ │ └── validation.py
│ │ ├── ddl_references.py
│ │ ├── guards.py
│ │ ├── mysql
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── client.py
│ │ │ ├── compiler.py
│ │ │ ├── creation.py
│ │ │ ├── features.py
│ │ │ ├── introspection.py
│ │ │ ├── operations.py
│ │ │ ├── schema.py
│ │ │ └── validation.py
│ │ ├── postgresql
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── client.py
│ │ │ ├── creation.py
│ │ │ ├── features.py
│ │ │ ├── introspection.py
│ │ │ ├── operations.py
│ │ │ └── schema.py
│ │ ├── sqlite3
│ │ │ ├── __init__.py
│ │ │ ├── _functions.py
│ │ │ ├── base.py
│ │ │ ├── client.py
│ │ │ ├── creation.py
│ │ │ ├── features.py
│ │ │ ├── introspection.py
│ │ │ ├── operations.py
│ │ │ └── schema.py
│ │ └── utils.py
│ │ ├── backups
│ │ ├── __init__.py
│ │ ├── cli.py
│ │ ├── clients.py
│ │ └── core.py
│ │ ├── base.py
│ │ ├── cli
│ │ ├── __init__.py
│ │ ├── db.py
│ │ └── migrations.py
│ │ ├── config.py
│ │ ├── connections.py
│ │ ├── constants.py
│ │ ├── constraints.py
│ │ ├── database_url.py
│ │ ├── db.py
│ │ ├── default_settings.py
│ │ ├── deletion.py
│ │ ├── entrypoints.py
│ │ ├── enums.py
│ │ ├── exceptions.py
│ │ ├── expressions.py
│ │ ├── fields
│ │ ├── __init__.py
│ │ ├── json.py
│ │ ├── mixins.py
│ │ ├── related.py
│ │ ├── related_descriptors.py
│ │ ├── related_lookups.py
│ │ ├── related_managers.py
│ │ ├── reverse_descriptors.py
│ │ └── reverse_related.py
│ │ ├── forms.py
│ │ ├── functions
│ │ ├── __init__.py
│ │ ├── comparison.py
│ │ ├── datetime.py
│ │ ├── math.py
│ │ ├── mixins.py
│ │ ├── text.py
│ │ └── window.py
│ │ ├── indexes.py
│ │ ├── lookups.py
│ │ ├── meta.py
│ │ ├── migrations
│ │ ├── __init__.py
│ │ ├── autodetector.py
│ │ ├── exceptions.py
│ │ ├── executor.py
│ │ ├── graph.py
│ │ ├── loader.py
│ │ ├── migration.py
│ │ ├── operations
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── fields.py
│ │ │ ├── models.py
│ │ │ └── special.py
│ │ ├── optimizer.py
│ │ ├── questioner.py
│ │ ├── recorder.py
│ │ ├── serializer.py
│ │ ├── state.py
│ │ ├── utils.py
│ │ └── writer.py
│ │ ├── options.py
│ │ ├── otel.py
│ │ ├── preflight.py
│ │ ├── query.py
│ │ ├── query_utils.py
│ │ ├── registry.py
│ │ ├── sql
│ │ ├── __init__.py
│ │ ├── compiler.py
│ │ ├── constants.py
│ │ ├── datastructures.py
│ │ ├── query.py
│ │ ├── subqueries.py
│ │ └── where.py
│ │ ├── test
│ │ ├── __init__.py
│ │ ├── pytest.py
│ │ └── utils.py
│ │ ├── transaction.py
│ │ ├── types.py
│ │ ├── types.pyi
│ │ └── utils.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── examples
│ │ ├── migrations
│ │ │ ├── 0001_initial.py
│ │ │ ├── 0002_test_field_removed.py
│ │ │ ├── 0003_deleteparent_childsetnull_childsetdefault_and_more.py
│ │ │ ├── 0004_defaultquerysetmodel_mixintestmodel_and_more.py
│ │ │ ├── 0005_feature_carfeature_car_features.py
│ │ │ └── __init__.py
│ │ └── models.py
│ ├── settings.py
│ └── urls.py
│ ├── test_database_url.py
│ ├── test_delete_behaviors.py
│ ├── test_exceptions.py
│ ├── test_manager_assignment.py
│ ├── test_models.py
│ ├── test_related_descriptors.py
│ └── test_related_manager_api.py
├── plain-oauth
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── oauth
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── exceptions.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── preflight.py
│ │ ├── providers.py
│ │ ├── templates
│ │ └── oauth
│ │ │ └── callback.html
│ │ ├── urls.py
│ │ └── views.py
├── provider_examples
│ ├── __init__.py
│ ├── bitbucket.py
│ ├── github.py
│ └── gitlab.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ ├── templates
│ │ ├── base.html
│ │ ├── index.html
│ │ └── login.html
│ ├── urls.py
│ └── users
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ └── models.py
│ ├── provider_tests
│ ├── __init__.py
│ └── test_github.py
│ ├── providers
│ ├── __init__.py
│ ├── bitbucket.py
│ ├── github.py
│ └── gitlab.py
│ ├── test_backends.py
│ ├── test_checks.py
│ └── test_providers.py
├── plain-observer
├── LICENSE
├── README.md
├── plain
│ └── observer
│ │ ├── AGENTS.md
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── assets
│ │ └── observer
│ │ │ ├── observer.css
│ │ │ └── observer.js
│ │ ├── cli.py
│ │ ├── config.py
│ │ ├── core.py
│ │ ├── default_settings.py
│ │ ├── logging.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_trace_share_created_at_trace_share_id_trace_summary_and_more.py
│ │ ├── 0003_span_plainobserv_span_id_e7ade3_idx.py
│ │ ├── 0004_trace_app_name_trace_app_version.py
│ │ ├── 0005_log_log_plainobserv_trace_i_fcfb7d_idx_and_more.py
│ │ ├── 0006_remove_log_logger.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── otel.py
│ │ ├── templates
│ │ ├── observer
│ │ │ ├── partials
│ │ │ │ ├── log.html
│ │ │ │ └── span.html
│ │ │ ├── trace.html
│ │ │ ├── trace_detail.html
│ │ │ ├── trace_share.html
│ │ │ └── traces.html
│ │ └── toolbar
│ │ │ ├── observer.html
│ │ │ └── observer_button.html
│ │ ├── toolbar.py
│ │ ├── urls.py
│ │ └── views.py
└── pyproject.toml
├── plain-pages
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── pages
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── exceptions.py
│ │ ├── markdown.py
│ │ ├── pages.py
│ │ ├── registry.py
│ │ ├── templates
│ │ └── page.html
│ │ ├── urls.py
│ │ └── views.py
└── pyproject.toml
├── plain-pageviews
├── LICENSE
├── README.md
├── plain
│ └── pageviews
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── assets
│ │ └── pageviews
│ │ │ └── pageviews.js
│ │ ├── chores.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_remove_pageview_plainpagevi_session_5545cf_idx_and_more.py
│ │ ├── 0003_pageview_campaign_pageview_medium_pageview_source_and_more.py
│ │ ├── 0004_remove_pageview_plainpageviews_pageview_unique_uuid_and_more.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── params.py
│ │ ├── templates.py
│ │ ├── templates
│ │ └── pageviews
│ │ │ ├── card.html
│ │ │ └── js.html
│ │ ├── urls.py
│ │ └── views.py
└── pyproject.toml
├── plain-passwords
├── LICENSE
├── README.md
├── plain
│ └── passwords
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── common-passwords.txt.gz
│ │ ├── core.py
│ │ ├── default_settings.py
│ │ ├── forms.py
│ │ ├── hashers.py
│ │ ├── models.py
│ │ ├── templates
│ │ └── email
│ │ │ ├── password_reset.html
│ │ │ └── password_reset.subject.txt
│ │ ├── types.py
│ │ ├── types.pyi
│ │ ├── utils.py
│ │ ├── validators.py
│ │ └── views.py
└── pyproject.toml
├── plain-pytest
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── pytest
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── browser.py
│ │ ├── cli.py
│ │ ├── entrypoints.py
│ │ └── plugin.py
└── pyproject.toml
├── plain-redirection
├── LICENSE
├── README.md
├── plain
│ └── redirection
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── chores.py
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── middleware.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ └── templates
│ │ └── admin
│ │ └── plainredirection
│ │ └── redirect_form.html
└── pyproject.toml
├── plain-scan
├── LICENSE
├── README.md
├── plain
│ └── scan
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── audits
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── content_type_options.py
│ │ ├── cookies.py
│ │ ├── cors.py
│ │ ├── csp.py
│ │ ├── frame_options.py
│ │ ├── hsts.py
│ │ ├── redirects.py
│ │ ├── referrer_policy.py
│ │ ├── status_code.py
│ │ └── tls.py
│ │ ├── cli.py
│ │ ├── entrypoints.py
│ │ ├── metadata.py
│ │ ├── output.py
│ │ ├── results.py
│ │ └── scanner.py
└── pyproject.toml
├── plain-sessions
├── LICENSE
├── README.md
├── plain
│ └── sessions
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── chores.py
│ │ ├── config.py
│ │ ├── core.py
│ │ ├── default_settings.py
│ │ ├── exceptions.py
│ │ ├── middleware.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── preflight.py
│ │ ├── requests.py
│ │ ├── templates.py
│ │ ├── templates
│ │ └── toolbar
│ │ │ └── session.html
│ │ ├── test.py
│ │ ├── toolbar.py
│ │ └── views.py
├── pyproject.toml
└── tests
│ ├── app
│ ├── settings.py
│ └── urls.py
│ └── test_sessions.py
├── plain-start
├── LICENSE
├── README.md
├── plain
│ └── start
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ └── cli.py
└── pyproject.toml
├── plain-support
├── LICENSE
├── README.md
├── plain
│ └── support
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── assets
│ │ └── support
│ │ │ ├── embed.js
│ │ │ └── iframe.js
│ │ ├── config.py
│ │ ├── default_settings.py
│ │ ├── forms.py
│ │ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_remove_supportformentry_plainsupport_supportformentry_unique_uuid_and_more.py
│ │ └── __init__.py
│ │ ├── models.py
│ │ ├── templates
│ │ ├── email
│ │ │ └── support_form_entry.html
│ │ └── support
│ │ │ ├── card.html
│ │ │ ├── forms
│ │ │ └── default.html
│ │ │ ├── iframe.html
│ │ │ ├── page.html
│ │ │ └── success
│ │ │ └── default.html
│ │ ├── urls.py
│ │ └── views.py
└── pyproject.toml
├── plain-tailwind
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── tailwind
│ │ ├── AGENTS.md
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cli.py
│ │ ├── core.py
│ │ ├── default_settings.py
│ │ ├── entrypoints.py
│ │ ├── templates.py
│ │ └── templates
│ │ └── tailwind
│ │ └── css.html
└── pyproject.toml
├── plain-toolbar
├── LICENSE
├── README.md
├── plain
│ └── toolbar
│ │ ├── CHANGELOG.md
│ │ ├── __init__.py
│ │ ├── assets
│ │ └── toolbar
│ │ │ └── toolbar.js
│ │ ├── config.py
│ │ ├── registry.py
│ │ ├── templates.py
│ │ ├── templates
│ │ └── toolbar
│ │ │ ├── exception.html
│ │ │ ├── exception_button.html
│ │ │ ├── request.html
│ │ │ └── toolbar.html
│ │ └── toolbar.py
└── pyproject.toml
├── plain-tunnel
├── .gitignore
├── LICENSE
├── README.md
├── plain
│ └── tunnel
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cli.py
│ │ ├── client.py
│ │ └── entrypoints.py
├── pyproject.toml
└── server
│ ├── .gitignore
│ ├── package-lock.json
│ ├── package.json
│ ├── worker.js
│ └── wrangler.toml
├── plain-vendor
├── LICENSE
├── README.md
├── plain
│ └── vendor
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cli.py
│ │ ├── deps.py
│ │ ├── entrypoints.py
│ │ └── exceptions.py
└── pyproject.toml
├── plain
├── LICENSE
├── README.md
├── plain
│ ├── AGENTS.md
│ ├── CHANGELOG.md
│ ├── README.md
│ ├── __main__.py
│ ├── assets
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── compile.py
│ │ ├── finders.py
│ │ ├── fingerprints.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── chores
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── core.py
│ │ └── registry.py
│ ├── cli
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── agent
│ │ │ ├── __init__.py
│ │ │ ├── docs.py
│ │ │ ├── llmdocs.py
│ │ │ ├── md.py
│ │ │ ├── prompt.py
│ │ │ └── request.py
│ │ ├── build.py
│ │ ├── changelog.py
│ │ ├── chores.py
│ │ ├── core.py
│ │ ├── docs.py
│ │ ├── formatting.py
│ │ ├── install.py
│ │ ├── output.py
│ │ ├── preflight.py
│ │ ├── print.py
│ │ ├── registry.py
│ │ ├── runtime.py
│ │ ├── scaffold.py
│ │ ├── server.py
│ │ ├── settings.py
│ │ ├── shell.py
│ │ ├── startup.py
│ │ ├── upgrade.py
│ │ ├── urls.py
│ │ └── utils.py
│ ├── csrf
│ │ ├── README.md
│ │ └── middleware.py
│ ├── debug.py
│ ├── exceptions.py
│ ├── forms
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── boundfield.py
│ │ ├── exceptions.py
│ │ ├── fields.py
│ │ └── forms.py
│ ├── http
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cookie.py
│ │ ├── middleware.py
│ │ ├── multipartparser.py
│ │ ├── request.py
│ │ └── response.py
│ ├── internal
│ │ ├── __init__.py
│ │ ├── files
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── locks.py
│ │ │ ├── move.py
│ │ │ ├── temp.py
│ │ │ ├── uploadedfile.py
│ │ │ ├── uploadhandler.py
│ │ │ └── utils.py
│ │ ├── handlers
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── exception.py
│ │ │ └── wsgi.py
│ │ ├── middleware
│ │ │ ├── __init__.py
│ │ │ ├── headers.py
│ │ │ ├── hosts.py
│ │ │ ├── https.py
│ │ │ └── slash.py
│ │ └── reloader.py
│ ├── json.py
│ ├── logs
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── app.py
│ │ ├── configure.py
│ │ ├── debug.py
│ │ ├── filters.py
│ │ └── formatters.py
│ ├── packages
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── config.py
│ │ └── registry.py
│ ├── paginator.py
│ ├── preflight
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── checks.py
│ │ ├── files.py
│ │ ├── registry.py
│ │ ├── results.py
│ │ ├── security.py
│ │ └── urls.py
│ ├── runtime
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── global_settings.py
│ │ ├── user_settings.py
│ │ └── utils.py
│ ├── server
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── app.py
│ │ ├── arbiter.py
│ │ ├── config.py
│ │ ├── errors.py
│ │ ├── glogging.py
│ │ ├── http
│ │ │ ├── __init__.py
│ │ │ ├── body.py
│ │ │ ├── errors.py
│ │ │ ├── message.py
│ │ │ ├── parser.py
│ │ │ ├── unreader.py
│ │ │ └── wsgi.py
│ │ ├── pidfile.py
│ │ ├── sock.py
│ │ ├── util.py
│ │ └── workers
│ │ │ ├── __init__.py
│ │ │ ├── base.py
│ │ │ ├── sync.py
│ │ │ ├── thread.py
│ │ │ └── workertmp.py
│ ├── signals
│ │ ├── README.md
│ │ ├── __init__.py
│ │ └── dispatch
│ │ │ ├── __init__.py
│ │ │ ├── dispatcher.py
│ │ │ └── license.txt
│ ├── signing.py
│ ├── templates
│ │ ├── AGENTS.md
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── core.py
│ │ └── jinja
│ │ │ ├── __init__.py
│ │ │ ├── environments.py
│ │ │ ├── extensions.py
│ │ │ ├── filters.py
│ │ │ └── globals.py
│ ├── test
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── client.py
│ │ ├── encoding.py
│ │ └── exceptions.py
│ ├── urls
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── converters.py
│ │ ├── exceptions.py
│ │ ├── patterns.py
│ │ ├── resolvers.py
│ │ ├── routers.py
│ │ └── utils.py
│ ├── utils
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── cache.py
│ │ ├── crypto.py
│ │ ├── datastructures.py
│ │ ├── dateparse.py
│ │ ├── deconstruct.py
│ │ ├── decorators.py
│ │ ├── duration.py
│ │ ├── encoding.py
│ │ ├── functional.py
│ │ ├── hashable.py
│ │ ├── html.py
│ │ ├── http.py
│ │ ├── inspect.py
│ │ ├── ipv6.py
│ │ ├── itercompat.py
│ │ ├── module_loading.py
│ │ ├── regex_helper.py
│ │ ├── safestring.py
│ │ ├── text.py
│ │ ├── timesince.py
│ │ ├── timezone.py
│ │ └── tree.py
│ ├── validators.py
│ ├── views
│ │ ├── README.md
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── errors.py
│ │ ├── exceptions.py
│ │ ├── forms.py
│ │ ├── objects.py
│ │ ├── redirect.py
│ │ └── templates.py
│ └── wsgi.py
├── pyproject.toml
└── tests
│ ├── .gitignore
│ ├── app
│ ├── .gitignore
│ ├── settings.py
│ ├── test
│ │ ├── __init__.py
│ │ └── default_settings.py
│ └── urls.py
│ ├── conftest.py
│ ├── test_cli.py
│ ├── test_csrf.py
│ ├── test_http_hosts.py
│ ├── test_logs.py
│ ├── test_runtime.py
│ └── test_wsgi.py
├── proposals
├── README.md
├── plain-assets-webp.md
├── plain-dev-companion.md
├── plain-elements-dev-toolbar.md
├── plain-email-filebased-viewing.md
├── plain-email-modern-email-apis.md
├── plain-file-based-secrets.md
├── plain-flags-toolbar-panel.md
├── plain-jobs-backlog-monitoring.md
├── plain-listview-pagination.md
├── plain-models-consolidate-related-descriptors.md
├── plain-models-cursor-paginator.md
├── plain-models-custom-base-queryset.md
├── plain-models-explicit-create-update.md
├── plain-models-prevent-manual-pk.md
├── plain-observer-geolocation.md
├── plain-observer-request-headers.md
├── plain-observer-testing.md
├── plain-pageviews-analytics.md
├── plain-precompile-regexes.md
├── plain-preflight-allowed-hosts-validation.md
├── plain-preflight-log-warnings.md
└── plain-sessions-multiple-sessions.md
├── pyproject.toml
├── scripts
├── bench-memory
├── benchmark-request.py
├── fix
├── generate-release-notes
├── install
├── makemigrations
├── pre-commit
├── publish
├── release
├── test
├── to-release
├── type-check
├── type-coverage
├── type-validate
└── vulture
└── uv.lock
/.github/workflows/release.yml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/.github/workflows/release.yml
--------------------------------------------------------------------------------
/.github/workflows/test.yml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/.github/workflows/test.yml
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/.gitignore
--------------------------------------------------------------------------------
/AGENTS.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/AGENTS.md
--------------------------------------------------------------------------------
/CLAUDE.md:
--------------------------------------------------------------------------------
1 | AGENTS.md
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/CONTRIBUTING.md
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/README.md
--------------------------------------------------------------------------------
/example/.env:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/.env
--------------------------------------------------------------------------------
/example/.gitignore:
--------------------------------------------------------------------------------
1 | app/assets/tailwind.min.css
2 | /db.sqlite3
3 |
--------------------------------------------------------------------------------
/example/app/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/example/app/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/cli.py
--------------------------------------------------------------------------------
/example/app/flags.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/example/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/settings.py
--------------------------------------------------------------------------------
/example/app/templates/base.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/templates/base.html
--------------------------------------------------------------------------------
/example/app/templates/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/templates/index.html
--------------------------------------------------------------------------------
/example/app/templates/login.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/templates/login.html
--------------------------------------------------------------------------------
/example/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/urls.py
--------------------------------------------------------------------------------
/example/app/users/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/example/app/users/migrations/0001_initial.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/users/migrations/0001_initial.py
--------------------------------------------------------------------------------
/example/app/users/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/example/app/users/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/app/users/models.py
--------------------------------------------------------------------------------
/example/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/pyproject.toml
--------------------------------------------------------------------------------
/example/scripts/install:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/scripts/install
--------------------------------------------------------------------------------
/example/tailwind.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/tailwind.css
--------------------------------------------------------------------------------
/example/tests/test_urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/example/tests/test_urls.py
--------------------------------------------------------------------------------
/plain-admin/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/LICENSE
--------------------------------------------------------------------------------
/plain-admin/README.md:
--------------------------------------------------------------------------------
1 | plain/admin/README.md
--------------------------------------------------------------------------------
/plain-admin/plain/admin/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-admin/plain/admin/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/README.md
--------------------------------------------------------------------------------
/plain-admin/plain/admin/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/__init__.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/assets/admin/admin.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/assets/admin/admin.css
--------------------------------------------------------------------------------
/plain-admin/plain/admin/assets/admin/admin.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/assets/admin/admin.js
--------------------------------------------------------------------------------
/plain-admin/plain/admin/assets/admin/list.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/assets/admin/list.js
--------------------------------------------------------------------------------
/plain-admin/plain/admin/cards/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/cards/__init__.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/cards/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/cards/base.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/cards/charts.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/cards/charts.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/cards/tables.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/cards/tables.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/config.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/dates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/dates.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/__init__.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/constants.py:
--------------------------------------------------------------------------------
1 | IMPERSONATE_SESSION_KEY = "impersonate"
2 |
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/middleware.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/middleware.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/permissions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/permissions.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/requests.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/requests.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/settings.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/urls.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/impersonate/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/impersonate/views.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/middleware.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/middleware.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/base.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/base.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/delete.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/delete.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/detail.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/detail.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/index.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/list.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/list.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/page.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/page.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/search.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/templates/admin/search.html
--------------------------------------------------------------------------------
/plain-admin/plain/admin/templates/admin/values/UUID.html:
--------------------------------------------------------------------------------
1 | {{ value }}
2 |
--------------------------------------------------------------------------------
/plain-admin/plain/admin/toolbar.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/toolbar.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/urls.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/utils.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/__init__.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/base.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/models.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/objects.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/objects.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/registry.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/registry.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/types.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/types.py
--------------------------------------------------------------------------------
/plain-admin/plain/admin/views/viewsets.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/plain/admin/views/viewsets.py
--------------------------------------------------------------------------------
/plain-admin/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/pyproject.toml
--------------------------------------------------------------------------------
/plain-admin/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-admin/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-admin/tests/app/users/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-admin/tests/app/users/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/tests/app/users/models.py
--------------------------------------------------------------------------------
/plain-admin/tests/test_admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-admin/tests/test_admin.py
--------------------------------------------------------------------------------
/plain-api/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/LICENSE
--------------------------------------------------------------------------------
/plain-api/README.md:
--------------------------------------------------------------------------------
1 | ./plain/api/README.md
--------------------------------------------------------------------------------
/plain-api/plain/api/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-api/plain/api/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/README.md
--------------------------------------------------------------------------------
/plain-api/plain/api/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-api/plain/api/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/cli.py
--------------------------------------------------------------------------------
/plain-api/plain/api/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/config.py
--------------------------------------------------------------------------------
/plain-api/plain/api/default_settings.py:
--------------------------------------------------------------------------------
1 | API_OPENAPI_ROUTER: str = ""
2 |
--------------------------------------------------------------------------------
/plain-api/plain/api/migrations/0001_initial.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/migrations/0001_initial.py
--------------------------------------------------------------------------------
/plain-api/plain/api/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-api/plain/api/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/models.py
--------------------------------------------------------------------------------
/plain-api/plain/api/openapi/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/openapi/__init__.py
--------------------------------------------------------------------------------
/plain-api/plain/api/openapi/decorators.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/openapi/decorators.py
--------------------------------------------------------------------------------
/plain-api/plain/api/openapi/generator.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/openapi/generator.py
--------------------------------------------------------------------------------
/plain-api/plain/api/openapi/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/openapi/utils.py
--------------------------------------------------------------------------------
/plain-api/plain/api/schemas.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/schemas.py
--------------------------------------------------------------------------------
/plain-api/plain/api/versioning.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/versioning.py
--------------------------------------------------------------------------------
/plain-api/plain/api/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/plain/api/views.py
--------------------------------------------------------------------------------
/plain-api/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/pyproject.toml
--------------------------------------------------------------------------------
/plain-api/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-api/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-api/tests/test_api.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-api/tests/test_api.py
--------------------------------------------------------------------------------
/plain-auth/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/LICENSE
--------------------------------------------------------------------------------
/plain-auth/README.md:
--------------------------------------------------------------------------------
1 | ./plain/auth/README.md
--------------------------------------------------------------------------------
/plain-auth/plain/auth/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-auth/plain/auth/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/README.md
--------------------------------------------------------------------------------
/plain-auth/plain/auth/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/__init__.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/default_settings.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/requests.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/requests.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/sessions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/sessions.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/templates.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/test.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/test.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/utils.py
--------------------------------------------------------------------------------
/plain-auth/plain/auth/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/plain/auth/views.py
--------------------------------------------------------------------------------
/plain-auth/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/pyproject.toml
--------------------------------------------------------------------------------
/plain-auth/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-auth/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-auth/tests/app/users/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-auth/tests/app/users/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/tests/app/users/models.py
--------------------------------------------------------------------------------
/plain-auth/tests/test_views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-auth/tests/test_views.py
--------------------------------------------------------------------------------
/plain-cache/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/LICENSE
--------------------------------------------------------------------------------
/plain-cache/README.md:
--------------------------------------------------------------------------------
1 | ./plain/cache/README.md
--------------------------------------------------------------------------------
/plain-cache/plain/cache/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-cache/plain/cache/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/README.md
--------------------------------------------------------------------------------
/plain-cache/plain/cache/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/__init__.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/admin.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/chores.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/chores.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/cli.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/config.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/core.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/migrations/0001_initial.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/migrations/0001_initial.py
--------------------------------------------------------------------------------
/plain-cache/plain/cache/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-cache/plain/cache/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/plain/cache/models.py
--------------------------------------------------------------------------------
/plain-cache/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-cache/pyproject.toml
--------------------------------------------------------------------------------
/plain-code/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/.gitignore
--------------------------------------------------------------------------------
/plain-code/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/LICENSE
--------------------------------------------------------------------------------
/plain-code/README.md:
--------------------------------------------------------------------------------
1 | ./plain/code/README.md
--------------------------------------------------------------------------------
/plain-code/plain/code/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-code/plain/code/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/README.md
--------------------------------------------------------------------------------
/plain-code/plain/code/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/__init__.py
--------------------------------------------------------------------------------
/plain-code/plain/code/biome.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/biome.py
--------------------------------------------------------------------------------
/plain-code/plain/code/biome_defaults.json:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/biome_defaults.json
--------------------------------------------------------------------------------
/plain-code/plain/code/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/cli.py
--------------------------------------------------------------------------------
/plain-code/plain/code/entrypoints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/entrypoints.py
--------------------------------------------------------------------------------
/plain-code/plain/code/ruff_defaults.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/plain/code/ruff_defaults.toml
--------------------------------------------------------------------------------
/plain-code/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-code/pyproject.toml
--------------------------------------------------------------------------------
/plain-dev/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/.gitignore
--------------------------------------------------------------------------------
/plain-dev/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/LICENSE
--------------------------------------------------------------------------------
/plain-dev/README.md:
--------------------------------------------------------------------------------
1 | ./plain/dev/README.md
--------------------------------------------------------------------------------
/plain-dev/plain/dev/AGENTS.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/AGENTS.md
--------------------------------------------------------------------------------
/plain-dev/plain/dev/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-dev/plain/dev/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/README.md
--------------------------------------------------------------------------------
/plain-dev/plain/dev/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/__init__.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/alias.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/alias.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/cli.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/contribute/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/contribute/README.md
--------------------------------------------------------------------------------
/plain-dev/plain/dev/contribute/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/contribute/__init__.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/contribute/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/contribute/cli.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/core.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/debug.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/debug.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/default_settings.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/entrypoints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/entrypoints.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/mkcert.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/mkcert.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/pdb.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/pdb.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/poncho/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-dev/plain/dev/poncho/color.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/poncho/color.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/poncho/compat.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/poncho/compat.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/poncho/manager.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/poncho/manager.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/poncho/printer.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/poncho/printer.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/poncho/process.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/poncho/process.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/precommit/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/precommit/__init__.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/precommit/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/precommit/cli.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/process.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/process.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/services.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/services.py
--------------------------------------------------------------------------------
/plain-dev/plain/dev/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/plain/dev/utils.py
--------------------------------------------------------------------------------
/plain-dev/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-dev/pyproject.toml
--------------------------------------------------------------------------------
/plain-dev/tests/settings.py:
--------------------------------------------------------------------------------
1 | INSTALLED_PACKAGES = [
2 | "plain.work",
3 | ]
4 |
--------------------------------------------------------------------------------
/plain-elements/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/.gitignore
--------------------------------------------------------------------------------
/plain-elements/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/LICENSE
--------------------------------------------------------------------------------
/plain-elements/README.md:
--------------------------------------------------------------------------------
1 | ./plain/elements/README.md
--------------------------------------------------------------------------------
/plain-elements/plain/elements/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/plain/elements/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-elements/plain/elements/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/plain/elements/README.md
--------------------------------------------------------------------------------
/plain-elements/plain/elements/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-elements/plain/elements/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/plain/elements/templates.py
--------------------------------------------------------------------------------
/plain-elements/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/pyproject.toml
--------------------------------------------------------------------------------
/plain-elements/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-elements/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-elements/tests/test_elements.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-elements/tests/test_elements.py
--------------------------------------------------------------------------------
/plain-email/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/LICENSE
--------------------------------------------------------------------------------
/plain-email/README.md:
--------------------------------------------------------------------------------
1 | plain/email/README.md
--------------------------------------------------------------------------------
/plain-email/plain/email/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-email/plain/email/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/README.md
--------------------------------------------------------------------------------
/plain-email/plain/email/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/__init__.py
--------------------------------------------------------------------------------
/plain-email/plain/email/backends/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-email/plain/email/backends/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/backends/base.py
--------------------------------------------------------------------------------
/plain-email/plain/email/backends/console.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/backends/console.py
--------------------------------------------------------------------------------
/plain-email/plain/email/backends/filebased.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/backends/filebased.py
--------------------------------------------------------------------------------
/plain-email/plain/email/backends/smtp.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/backends/smtp.py
--------------------------------------------------------------------------------
/plain-email/plain/email/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/default_settings.py
--------------------------------------------------------------------------------
/plain-email/plain/email/message.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/message.py
--------------------------------------------------------------------------------
/plain-email/plain/email/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/plain/email/utils.py
--------------------------------------------------------------------------------
/plain-email/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-email/pyproject.toml
--------------------------------------------------------------------------------
/plain-esbuild/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/.gitignore
--------------------------------------------------------------------------------
/plain-esbuild/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/LICENSE
--------------------------------------------------------------------------------
/plain-esbuild/README.md:
--------------------------------------------------------------------------------
1 | ./plain/esbuild/README.md
--------------------------------------------------------------------------------
/plain-esbuild/plain/esbuild/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/plain/esbuild/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-esbuild/plain/esbuild/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/plain/esbuild/README.md
--------------------------------------------------------------------------------
/plain-esbuild/plain/esbuild/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/plain/esbuild/__init__.py
--------------------------------------------------------------------------------
/plain-esbuild/plain/esbuild/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/plain/esbuild/cli.py
--------------------------------------------------------------------------------
/plain-esbuild/plain/esbuild/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/plain/esbuild/core.py
--------------------------------------------------------------------------------
/plain-esbuild/plain/esbuild/entrypoints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/plain/esbuild/entrypoints.py
--------------------------------------------------------------------------------
/plain-esbuild/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-esbuild/pyproject.toml
--------------------------------------------------------------------------------
/plain-flags/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/LICENSE
--------------------------------------------------------------------------------
/plain-flags/README.md:
--------------------------------------------------------------------------------
1 | ./plain/flags/README.md
--------------------------------------------------------------------------------
/plain-flags/plain/flags/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-flags/plain/flags/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/README.md
--------------------------------------------------------------------------------
/plain-flags/plain/flags/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/__init__.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/admin.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/bridge.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/bridge.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/config.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/default_settings.py:
--------------------------------------------------------------------------------
1 | FLAGS_MODULE: str = "app.flags"
2 |
--------------------------------------------------------------------------------
/plain-flags/plain/flags/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/exceptions.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/flags.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/flags.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/migrations/0001_initial.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/migrations/0001_initial.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-flags/plain/flags/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/models.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/preflight.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/preflight.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/py.typed:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-flags/plain/flags/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/templates.py
--------------------------------------------------------------------------------
/plain-flags/plain/flags/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/plain/flags/utils.py
--------------------------------------------------------------------------------
/plain-flags/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/pyproject.toml
--------------------------------------------------------------------------------
/plain-flags/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-flags/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-flags/tests/test_flags.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-flags/tests/test_flags.py
--------------------------------------------------------------------------------
/plain-htmx/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/.gitignore
--------------------------------------------------------------------------------
/plain-htmx/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/LICENSE
--------------------------------------------------------------------------------
/plain-htmx/README.md:
--------------------------------------------------------------------------------
1 | ./plain/htmx/README.md
--------------------------------------------------------------------------------
/plain-htmx/deps.yml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/deps.yml
--------------------------------------------------------------------------------
/plain-htmx/package-lock.json:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/package-lock.json
--------------------------------------------------------------------------------
/plain-htmx/package.json:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/package.json
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/plain/htmx/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/plain/htmx/README.md
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/assets/htmx/plainhtmx.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/plain/htmx/assets/htmx/plainhtmx.js
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/plain/htmx/templates.py
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/templates/htmx/js.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/plain/htmx/templates/htmx/js.html
--------------------------------------------------------------------------------
/plain-htmx/plain/htmx/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/plain/htmx/views.py
--------------------------------------------------------------------------------
/plain-htmx/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/pyproject.toml
--------------------------------------------------------------------------------
/plain-htmx/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-htmx/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-htmx/tests/test_views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-htmx/tests/test_views.py
--------------------------------------------------------------------------------
/plain-jobs/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/.gitignore
--------------------------------------------------------------------------------
/plain-jobs/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/LICENSE
--------------------------------------------------------------------------------
/plain-jobs/README.md:
--------------------------------------------------------------------------------
1 | ./plain/jobs/README.md
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/README.md
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/__init__.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/admin.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/chores.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/chores.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/cli.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/config.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/default_settings.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/exceptions.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/jobs.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/jobs.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/locks.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/locks.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/middleware.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/middleware.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/migrations/0001_initial.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/migrations/0001_initial.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/models.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/parameters.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/parameters.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/registry.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/registry.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/scheduling.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/scheduling.py
--------------------------------------------------------------------------------
/plain-jobs/plain/jobs/workers.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/plain/jobs/workers.py
--------------------------------------------------------------------------------
/plain-jobs/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/pyproject.toml
--------------------------------------------------------------------------------
/plain-jobs/tests/app/settings.py:
--------------------------------------------------------------------------------
1 | SECRET_KEY = "test"
2 |
--------------------------------------------------------------------------------
/plain-jobs/tests/test_parameters.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/tests/test_parameters.py
--------------------------------------------------------------------------------
/plain-jobs/tests/test_scheduling.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-jobs/tests/test_scheduling.py
--------------------------------------------------------------------------------
/plain-loginlink/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/LICENSE
--------------------------------------------------------------------------------
/plain-loginlink/README.md:
--------------------------------------------------------------------------------
1 | ./plain/loginlink/README.md
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/README.md
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/forms.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/forms.py
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/links.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/links.py
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/signing.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/signing.py
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/templates/email/loginlink.subject.txt:
--------------------------------------------------------------------------------
1 | Your link to log in
2 |
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/urls.py
--------------------------------------------------------------------------------
/plain-loginlink/plain/loginlink/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/plain/loginlink/views.py
--------------------------------------------------------------------------------
/plain-loginlink/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-loginlink/pyproject.toml
--------------------------------------------------------------------------------
/plain-models/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/LICENSE
--------------------------------------------------------------------------------
/plain-models/README.md:
--------------------------------------------------------------------------------
1 | ./plain/models/README.md
--------------------------------------------------------------------------------
/plain-models/plain/models/AGENTS.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/AGENTS.md
--------------------------------------------------------------------------------
/plain-models/plain/models/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-models/plain/models/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/README.md
--------------------------------------------------------------------------------
/plain-models/plain/models/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/__init__.py
--------------------------------------------------------------------------------
/plain-models/plain/models/aggregates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/aggregates.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/base/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/base/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/base/base.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/base/client.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/base/client.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/base/creation.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/base/creation.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/base/features.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/base/features.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/base/schema.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/base/schema.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/guards.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/guards.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/mysql/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/mysql/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/mysql/base.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/mysql/client.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/mysql/client.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/mysql/schema.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/mysql/schema.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/postgresql/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/sqlite3/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/sqlite3/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/sqlite3/base.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backends/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backends/utils.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backups/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/backups/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backups/cli.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backups/clients.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backups/clients.py
--------------------------------------------------------------------------------
/plain-models/plain/models/backups/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/backups/core.py
--------------------------------------------------------------------------------
/plain-models/plain/models/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/base.py
--------------------------------------------------------------------------------
/plain-models/plain/models/cli/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/cli/__init__.py
--------------------------------------------------------------------------------
/plain-models/plain/models/cli/db.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/cli/db.py
--------------------------------------------------------------------------------
/plain-models/plain/models/cli/migrations.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/cli/migrations.py
--------------------------------------------------------------------------------
/plain-models/plain/models/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/config.py
--------------------------------------------------------------------------------
/plain-models/plain/models/connections.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/connections.py
--------------------------------------------------------------------------------
/plain-models/plain/models/constants.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/constants.py
--------------------------------------------------------------------------------
/plain-models/plain/models/constraints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/constraints.py
--------------------------------------------------------------------------------
/plain-models/plain/models/database_url.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/database_url.py
--------------------------------------------------------------------------------
/plain-models/plain/models/db.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/db.py
--------------------------------------------------------------------------------
/plain-models/plain/models/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/default_settings.py
--------------------------------------------------------------------------------
/plain-models/plain/models/deletion.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/deletion.py
--------------------------------------------------------------------------------
/plain-models/plain/models/entrypoints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/entrypoints.py
--------------------------------------------------------------------------------
/plain-models/plain/models/enums.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/enums.py
--------------------------------------------------------------------------------
/plain-models/plain/models/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/exceptions.py
--------------------------------------------------------------------------------
/plain-models/plain/models/expressions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/expressions.py
--------------------------------------------------------------------------------
/plain-models/plain/models/fields/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/fields/__init__.py
--------------------------------------------------------------------------------
/plain-models/plain/models/fields/json.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/fields/json.py
--------------------------------------------------------------------------------
/plain-models/plain/models/fields/mixins.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/fields/mixins.py
--------------------------------------------------------------------------------
/plain-models/plain/models/fields/related.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/fields/related.py
--------------------------------------------------------------------------------
/plain-models/plain/models/fields/related_lookups.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/fields/related_lookups.py
--------------------------------------------------------------------------------
/plain-models/plain/models/fields/reverse_related.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/fields/reverse_related.py
--------------------------------------------------------------------------------
/plain-models/plain/models/forms.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/forms.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/__init__.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/comparison.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/comparison.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/datetime.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/datetime.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/math.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/math.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/mixins.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/mixins.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/text.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/text.py
--------------------------------------------------------------------------------
/plain-models/plain/models/functions/window.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/functions/window.py
--------------------------------------------------------------------------------
/plain-models/plain/models/indexes.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/indexes.py
--------------------------------------------------------------------------------
/plain-models/plain/models/lookups.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/lookups.py
--------------------------------------------------------------------------------
/plain-models/plain/models/meta.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/meta.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/__init__.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/exceptions.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/executor.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/executor.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/graph.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/graph.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/loader.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/loader.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/migration.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/migration.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/optimizer.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/optimizer.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/questioner.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/questioner.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/recorder.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/recorder.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/serializer.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/serializer.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/state.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/state.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/utils.py
--------------------------------------------------------------------------------
/plain-models/plain/models/migrations/writer.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/migrations/writer.py
--------------------------------------------------------------------------------
/plain-models/plain/models/options.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/options.py
--------------------------------------------------------------------------------
/plain-models/plain/models/otel.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/otel.py
--------------------------------------------------------------------------------
/plain-models/plain/models/preflight.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/preflight.py
--------------------------------------------------------------------------------
/plain-models/plain/models/query.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/query.py
--------------------------------------------------------------------------------
/plain-models/plain/models/query_utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/query_utils.py
--------------------------------------------------------------------------------
/plain-models/plain/models/registry.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/registry.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/__init__.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/compiler.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/compiler.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/constants.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/constants.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/datastructures.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/datastructures.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/query.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/query.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/subqueries.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/subqueries.py
--------------------------------------------------------------------------------
/plain-models/plain/models/sql/where.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/sql/where.py
--------------------------------------------------------------------------------
/plain-models/plain/models/test/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/plain/models/test/pytest.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/test/pytest.py
--------------------------------------------------------------------------------
/plain-models/plain/models/test/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/test/utils.py
--------------------------------------------------------------------------------
/plain-models/plain/models/transaction.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/transaction.py
--------------------------------------------------------------------------------
/plain-models/plain/models/types.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/types.py
--------------------------------------------------------------------------------
/plain-models/plain/models/types.pyi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/types.pyi
--------------------------------------------------------------------------------
/plain-models/plain/models/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/plain/models/utils.py
--------------------------------------------------------------------------------
/plain-models/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/pyproject.toml
--------------------------------------------------------------------------------
/plain-models/tests/app/examples/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-models/tests/app/examples/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/app/examples/models.py
--------------------------------------------------------------------------------
/plain-models/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-models/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-models/tests/test_database_url.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_database_url.py
--------------------------------------------------------------------------------
/plain-models/tests/test_delete_behaviors.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_delete_behaviors.py
--------------------------------------------------------------------------------
/plain-models/tests/test_exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_exceptions.py
--------------------------------------------------------------------------------
/plain-models/tests/test_manager_assignment.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_manager_assignment.py
--------------------------------------------------------------------------------
/plain-models/tests/test_models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_models.py
--------------------------------------------------------------------------------
/plain-models/tests/test_related_descriptors.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_related_descriptors.py
--------------------------------------------------------------------------------
/plain-models/tests/test_related_manager_api.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-models/tests/test_related_manager_api.py
--------------------------------------------------------------------------------
/plain-oauth/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/.gitignore
--------------------------------------------------------------------------------
/plain-oauth/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/LICENSE
--------------------------------------------------------------------------------
/plain-oauth/README.md:
--------------------------------------------------------------------------------
1 | ./plain/oauth/README.md
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/README.md
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/admin.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/config.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/default_settings.py:
--------------------------------------------------------------------------------
1 | OAUTH_LOGIN_PROVIDERS: dict
2 |
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/exceptions.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/migrations/0001_initial.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/migrations/0001_initial.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/models.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/preflight.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/preflight.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/providers.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/providers.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/urls.py
--------------------------------------------------------------------------------
/plain-oauth/plain/oauth/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/plain/oauth/views.py
--------------------------------------------------------------------------------
/plain-oauth/provider_examples/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-oauth/provider_examples/bitbucket.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/provider_examples/bitbucket.py
--------------------------------------------------------------------------------
/plain-oauth/provider_examples/github.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/provider_examples/github.py
--------------------------------------------------------------------------------
/plain-oauth/provider_examples/gitlab.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/provider_examples/gitlab.py
--------------------------------------------------------------------------------
/plain-oauth/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/pyproject.toml
--------------------------------------------------------------------------------
/plain-oauth/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-oauth/tests/app/templates/base.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/app/templates/base.html
--------------------------------------------------------------------------------
/plain-oauth/tests/app/templates/index.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/app/templates/index.html
--------------------------------------------------------------------------------
/plain-oauth/tests/app/templates/login.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/app/templates/login.html
--------------------------------------------------------------------------------
/plain-oauth/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-oauth/tests/app/users/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-oauth/tests/app/users/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/app/users/models.py
--------------------------------------------------------------------------------
/plain-oauth/tests/provider_tests/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-oauth/tests/provider_tests/test_github.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/provider_tests/test_github.py
--------------------------------------------------------------------------------
/plain-oauth/tests/providers/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-oauth/tests/providers/bitbucket.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/providers/bitbucket.py
--------------------------------------------------------------------------------
/plain-oauth/tests/providers/github.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/providers/github.py
--------------------------------------------------------------------------------
/plain-oauth/tests/providers/gitlab.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/providers/gitlab.py
--------------------------------------------------------------------------------
/plain-oauth/tests/test_backends.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/test_backends.py
--------------------------------------------------------------------------------
/plain-oauth/tests/test_checks.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/test_checks.py
--------------------------------------------------------------------------------
/plain-oauth/tests/test_providers.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-oauth/tests/test_providers.py
--------------------------------------------------------------------------------
/plain-observer/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/LICENSE
--------------------------------------------------------------------------------
/plain-observer/README.md:
--------------------------------------------------------------------------------
1 | plain/observer/README.md
--------------------------------------------------------------------------------
/plain-observer/plain/observer/AGENTS.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/AGENTS.md
--------------------------------------------------------------------------------
/plain-observer/plain/observer/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-observer/plain/observer/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/README.md
--------------------------------------------------------------------------------
/plain-observer/plain/observer/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-observer/plain/observer/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/admin.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/cli.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/config.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/core.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/default_settings.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/logging.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/logging.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-observer/plain/observer/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/models.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/otel.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/otel.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/toolbar.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/toolbar.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/urls.py
--------------------------------------------------------------------------------
/plain-observer/plain/observer/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/plain/observer/views.py
--------------------------------------------------------------------------------
/plain-observer/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-observer/pyproject.toml
--------------------------------------------------------------------------------
/plain-pages/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/.gitignore
--------------------------------------------------------------------------------
/plain-pages/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/LICENSE
--------------------------------------------------------------------------------
/plain-pages/README.md:
--------------------------------------------------------------------------------
1 | ./plain/pages/README.md
--------------------------------------------------------------------------------
/plain-pages/plain/pages/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-pages/plain/pages/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/README.md
--------------------------------------------------------------------------------
/plain-pages/plain/pages/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/__init__.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/config.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/default_settings.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/exceptions.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/markdown.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/markdown.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/pages.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/pages.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/registry.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/registry.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/templates/page.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/templates/page.html
--------------------------------------------------------------------------------
/plain-pages/plain/pages/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/urls.py
--------------------------------------------------------------------------------
/plain-pages/plain/pages/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/plain/pages/views.py
--------------------------------------------------------------------------------
/plain-pages/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pages/pyproject.toml
--------------------------------------------------------------------------------
/plain-pageviews/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/LICENSE
--------------------------------------------------------------------------------
/plain-pageviews/README.md:
--------------------------------------------------------------------------------
1 | ./plain/pageviews/README.md
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/README.md
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/admin.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/chores.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/chores.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/config.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/default_settings.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/models.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/params.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/params.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/templates.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/urls.py
--------------------------------------------------------------------------------
/plain-pageviews/plain/pageviews/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/plain/pageviews/views.py
--------------------------------------------------------------------------------
/plain-pageviews/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pageviews/pyproject.toml
--------------------------------------------------------------------------------
/plain-passwords/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/LICENSE
--------------------------------------------------------------------------------
/plain-passwords/README.md:
--------------------------------------------------------------------------------
1 | ./plain/passwords/README.md
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/README.md
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/core.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/forms.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/forms.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/hashers.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/hashers.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/models.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/templates/email/password_reset.subject.txt:
--------------------------------------------------------------------------------
1 | Password reset
2 |
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/types.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/types.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/types.pyi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/types.pyi
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/utils.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/utils.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/validators.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/validators.py
--------------------------------------------------------------------------------
/plain-passwords/plain/passwords/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/plain/passwords/views.py
--------------------------------------------------------------------------------
/plain-passwords/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-passwords/pyproject.toml
--------------------------------------------------------------------------------
/plain-pytest/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/.gitignore
--------------------------------------------------------------------------------
/plain-pytest/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/LICENSE
--------------------------------------------------------------------------------
/plain-pytest/README.md:
--------------------------------------------------------------------------------
1 | ./plain/pytest/README.md
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/README.md
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/__init__.py
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/browser.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/browser.py
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/cli.py
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/entrypoints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/entrypoints.py
--------------------------------------------------------------------------------
/plain-pytest/plain/pytest/plugin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/plain/pytest/plugin.py
--------------------------------------------------------------------------------
/plain-pytest/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-pytest/pyproject.toml
--------------------------------------------------------------------------------
/plain-redirection/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/LICENSE
--------------------------------------------------------------------------------
/plain-redirection/README.md:
--------------------------------------------------------------------------------
1 | ./plain/redirection/README.md
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/README.md
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/__init__.py
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/admin.py
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/chores.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/chores.py
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/config.py
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/middleware.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/middleware.py
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-redirection/plain/redirection/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/plain/redirection/models.py
--------------------------------------------------------------------------------
/plain-redirection/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-redirection/pyproject.toml
--------------------------------------------------------------------------------
/plain-scan/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/LICENSE
--------------------------------------------------------------------------------
/plain-scan/README.md:
--------------------------------------------------------------------------------
1 | plain/scan/README.md
--------------------------------------------------------------------------------
/plain-scan/plain/scan/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-scan/plain/scan/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/README.md
--------------------------------------------------------------------------------
/plain-scan/plain/scan/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/__init__.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/__init__.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/base.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/base.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/cookies.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/cookies.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/cors.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/cors.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/csp.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/csp.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/frame_options.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/frame_options.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/hsts.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/hsts.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/redirects.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/redirects.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/referrer_policy.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/referrer_policy.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/status_code.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/status_code.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/audits/tls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/audits/tls.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/cli.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/entrypoints.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/entrypoints.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/metadata.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/metadata.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/output.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/output.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/results.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/results.py
--------------------------------------------------------------------------------
/plain-scan/plain/scan/scanner.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/plain/scan/scanner.py
--------------------------------------------------------------------------------
/plain-scan/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-scan/pyproject.toml
--------------------------------------------------------------------------------
/plain-sessions/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/LICENSE
--------------------------------------------------------------------------------
/plain-sessions/README.md:
--------------------------------------------------------------------------------
1 | ./plain/sessions/README.md
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/README.md
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/__init__.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/admin.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/chores.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/chores.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/config.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/core.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/core.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/default_settings.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/exceptions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/exceptions.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/middleware.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/middleware.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/models.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/preflight.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/preflight.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/requests.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/requests.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/templates.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/templates.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/test.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/test.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/toolbar.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/toolbar.py
--------------------------------------------------------------------------------
/plain-sessions/plain/sessions/views.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/plain/sessions/views.py
--------------------------------------------------------------------------------
/plain-sessions/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/pyproject.toml
--------------------------------------------------------------------------------
/plain-sessions/tests/app/settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/tests/app/settings.py
--------------------------------------------------------------------------------
/plain-sessions/tests/app/urls.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/tests/app/urls.py
--------------------------------------------------------------------------------
/plain-sessions/tests/test_sessions.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-sessions/tests/test_sessions.py
--------------------------------------------------------------------------------
/plain-start/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-start/LICENSE
--------------------------------------------------------------------------------
/plain-start/README.md:
--------------------------------------------------------------------------------
1 | plain/start/README.md
--------------------------------------------------------------------------------
/plain-start/plain/start/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-start/plain/start/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-start/plain/start/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-start/plain/start/README.md
--------------------------------------------------------------------------------
/plain-start/plain/start/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-start/plain/start/cli.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-start/plain/start/cli.py
--------------------------------------------------------------------------------
/plain-start/pyproject.toml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-start/pyproject.toml
--------------------------------------------------------------------------------
/plain-support/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/LICENSE
--------------------------------------------------------------------------------
/plain-support/README.md:
--------------------------------------------------------------------------------
1 | ./plain/support/README.md
--------------------------------------------------------------------------------
/plain-support/plain/support/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/CHANGELOG.md
--------------------------------------------------------------------------------
/plain-support/plain/support/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/README.md
--------------------------------------------------------------------------------
/plain-support/plain/support/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-support/plain/support/admin.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/admin.py
--------------------------------------------------------------------------------
/plain-support/plain/support/config.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/config.py
--------------------------------------------------------------------------------
/plain-support/plain/support/default_settings.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/default_settings.py
--------------------------------------------------------------------------------
/plain-support/plain/support/forms.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/forms.py
--------------------------------------------------------------------------------
/plain-support/plain/support/migrations/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/plain-support/plain/support/models.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dropseed/plain/HEAD/plain-support/plain/support/models.py
--------------------------------------------------------------------------------
/plain-support/plain/support/templates/email/support_form_entry.html:
--------------------------------------------------------------------------------
1 |