diff --git a/.dockerignore b/.dockerignore deleted file mode 100644 index dd9020272e..0000000000 --- a/.dockerignore +++ /dev/null @@ -1,27 +0,0 @@ -*/tests* -broker/ -__pycache__ -fixtures/ -.pytest_cache -.ruff_cache -.github -.idea -.vscode -.mypy_cache -.coverage -.dockerignore -.env.example -.git-blame-ignore-revs -.gitattributes -.gitignore -.pre-commit-config.yaml -azure-pipelines-dev.yml -azure-pipelines-release.yml -docker-compose.yml -docker/Dockerfile -docker/Dockerfile.final -pytest.ini -README.md -sonar-project.properties -!tests/factories* -!tests/plugins.py diff --git a/.github/actions/poetry/action.yml b/.github/actions/poetry/action.yml index 5b816e92d1..9f8c3e8cf7 100644 --- a/.github/actions/poetry/action.yml +++ b/.github/actions/poetry/action.yml @@ -38,15 +38,17 @@ runs: shell: bash - name: "Configure poetry" + working-directory: backend run: poetry config virtualenvs.in-project true shell: bash - name: "Load cached poetry environment" uses: actions/cache@v4 with: - path: .venv + path: backend/.venv key: cache-venv-python${{ inputs.poetry-version }}-${{ hashFiles('**/poetry.lock') }}-v1 - name: "Install dependencies" + working-directory: backend run: poetry install shell: bash diff --git a/.github/workflows/build.yml b/.github/workflows/build-backend.yml similarity index 95% rename from .github/workflows/build.yml rename to .github/workflows/build-backend.yml index b2a6ec7037..2357d276c1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build-backend.yml @@ -2,6 +2,8 @@ name: "Build" on: push: + paths: + - backend/** branches: - main tags: @@ -70,8 +72,8 @@ jobs: - name: "Build backend container" uses: docker/build-push-action@v6 with: - context: . - file: docker/Dockerfile + context: backend/ + file: backend/docker/Dockerfile push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} diff --git a/.github/workflows/test.yml b/.github/workflows/test-backend.yml similarity index 93% rename from .github/workflows/test.yml rename to .github/workflows/test-backend.yml index 263f7a87aa..c014ab5be0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test-backend.yml @@ -2,6 +2,8 @@ name: "Tests" on: push: + paths: + - backend/** branches: - main pull_request: @@ -66,12 +68,14 @@ jobs: python-version: ${{ steps.setup-python.outputs.python-version }} - name: "Test for migration issues" + working-directory: backend run: poetry run python manage.py makemigrations --check --no-color --no-input --dry-run env: DJANGO_SETTINGS_ENVIRONMENT: CI DATABASE_URL: postgis://tvp:tvp@localhost:5432/tvp - name: "Test for missing translation" + working-directory: backend run: poetry run python -m config.hooks.translations_done env: DJANGO_SETTINGS_ENVIRONMENT: CI @@ -137,6 +141,7 @@ jobs: name: test_durations - name: "Run pytest with coverage" + working-directory: backend run: | poetry run coverage run \ --branch \ @@ -161,7 +166,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: cov-${{ steps.artifact.outputs.artifact }}-${{ matrix.group }} - path: .coverage.${{ matrix.group }} + path: ./backend/.coverage.${{ matrix.group }} if-no-files-found: error retention-days: 1 include-hidden-files: true @@ -190,6 +195,7 @@ jobs: - name: "Download coverage artefacts" uses: actions/download-artifact@v4 with: + path: ./backend pattern: cov-${{ steps.artifact.outputs.artifact }}-* merge-multiple: true @@ -200,15 +206,20 @@ jobs: python-version: ${{ env.PYTHON_VERSION }} - name: "Install coverage" + working-directory: backend run: pip install coverage - name: "Combine coverage reports and generate XML report" + working-directory: backend run: | coverage combine coverage xml + sed -i 's@@backend/@g' coverage.xml - name: "SonarCloud Scan" uses: SonarSource/sonarqube-scan-action@v4 + with: + projectBaseDir: ./backend # Skip analysis for all bots if: ${{ ! contains(fromJSON(vars.BOTS), github.event.pull_request.user.login) }} env: diff --git a/.github/workflows/update_test_durations.yml b/.github/workflows/update_test_durations.yml index 409312a982..d60b0e3418 100644 --- a/.github/workflows/update_test_durations.yml +++ b/.github/workflows/update_test_durations.yml @@ -58,6 +58,7 @@ jobs: python-version: ${{ steps.setup-python.outputs.python-version }} - name: "Run pytest with coverage" + working-directory: backend run: poetry run pytest --disable-warnings --store-durations env: DJANGO_SETTINGS_ENVIRONMENT: AutomatedTests @@ -66,7 +67,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: test_durations - path: .test_durations + path: ./backend/.test_durations if-no-files-found: error retention-days: 90 include-hidden-files: true diff --git a/.gitignore b/.gitignore index c31d078f78..c4f0cc735f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,36 +1,62 @@ +# environments +**/node_modules +**/.pnpm +**/.pnp.js + +# yarn +**/.yarn +**/.yarnrc.yml + +# debug +**/npm-debug.log* +**/yarn-debug.log* +**/yarn-error.log* + +# local certs +**/certificates + +# caches +**/.turbo +**/.next +**/__pycache__ +**/.cache +**/.pytest_cache +**/.ruff_cache + +# builds +**/dist +**/build +**/out + +# local config +**/.env.local +**/.local +**/.idea +**/.vscode +backend/local_settings.py +backend/.env +backend/pytest.ini + +# misc +**/.DS_Store +**/*.pem +**/.eslintcache +**/*.tsbuildinfo *~ -__pycache__ -db.sqlite3 + +# translations *.mo -*.sqlite -data/ -exports/ -media/ -static/ -.django_secret -*local_settings.py -/venv* -/.idea + +# backend generated static +backend/media/ +backend/static/ +backend/staticroot/ + +# coverage .coverage htmlcov -.cache -perf*csv -/*hack*py -*.egg-info -/build -/dist -/src -.env -/.vscode -.pytest_cache -.DS_Store -/staticroot/ -/broker -celerybeat-schedule -.python-version -.tox coverage.xml -control/* -.ruff_cache -pytest.ini -dump.rdb + +# celery +backend/broker* +backend/control* diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 18f2d48360..29c2689038 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,7 +1,6 @@ ci: skip: # Cannot access poetry on pre-commit.ci - - python-safety-dependencies-check - poetry-lock repos: @@ -16,33 +15,17 @@ repos: args: ["--markdown-linebreak-ext=md"] - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.9.4 + rev: v0.9.3 hooks: - id: ruff + entry: bash -c 'cd backend && ruff check --force-exclude' - id: ruff-format - - - repo: https://github.com/pycqa/bandit - rev: 1.8.2 - hooks: - - id: bandit - args: ["-c", "pyproject.toml"] - additional_dependencies: ["bandit[toml]"] - - - repo: https://github.com/Lucas-C/pre-commit-hooks-safety - rev: v1.3.3 - hooks: - - id: python-safety-dependencies-check - files: pyproject.toml - # Ignore some issues in sub-dependencies: - # - https://data.safetycli.com/v/64396/97c/ | django-helusers -> python-jose -> ecdsa - # - https://data.safetycli.com/v/64459/97c/ | django-helusers -> python-jose -> ecdsa - # - https://data.safetycli.com/v/70612/97c/ | django-jinja -> jinja2 - # - https://data.safetycli.com/v/70715/97c/ | django-helusers -> python-jose - # - https://data.safetycli.com/v/70716/97c/ | django-helusers -> python-jose - args: ["--ignore=64396,64459,70612,70715,70716"] + entry: bash -c 'cd backend && ruff format --force-exclude' - repo: https://github.com/python-poetry/poetry rev: 2.0.1 hooks: - id: poetry-check + args: ["--project=backend"] - id: poetry-lock + args: ["--project=backend"] diff --git a/Makefile b/Makefile index f62cbf2f72..101a02e67c 100644 --- a/Makefile +++ b/Makefile @@ -1,23 +1,10 @@ +.PHONY: Makefile .PHONY: bash -.PHONY: celery -.PHONY: clear-db -.PHONY: db-reset -.PHONY: dev -.PHONY: flush -.PHONY: generate .PHONY: help .PHONY: hooks -.PHONY: indices -.PHONY: lint -.PHONY: Makefile -.PHONY: migrate -.PHONY: migrations .PHONY: run .PHONY: services .PHONY: stop -.PHONY: check-translations -.PHONY: translations -.PHONY: translate # Trick to allow passing commands to make # Use quotes (" ") if command contains flags (-h / --help) @@ -33,22 +20,9 @@ define helptext Commands: bash Open bash in backend container. - celery Run a local celery worker. - clear-db Reset database. - dev Run local backend. - flush-db Flush database. - generate Generate test data via a script. - hooks Add pre-commit hooks. - indices Rebuild search indices. - lint Run pre-commit hooks. - migrate Run database migrations. - migrations Compile database migrations. run Start docker containers for frontend development. services Run required services in docker. stop Stop running containers. - check-translations Check if translations are up to date. - translations Fetch all translation strings under ./locale/. - translate Compile translation strings. endef @@ -61,33 +35,6 @@ help: bash: @docker exec -it tvp-core bash -celery: - @celery -A config worker --beat --loglevel=INFO --scheduler=django - -clear-db: - @python manage.py dbshell -- -c "DROP SCHEMA $(call args, 'public') CASCADE;CREATE SCHEMA $(call args, 'public');" - -dev: - @python manage.py runserver localhost:8000 - -flush-db: - @python manage.py flush --no-input - -generate: - @python manage.py create_test_data - -hooks: - @pre-commit install - -lint: - @pre-commit run --all-files - -migrate: - @python manage.py migrate - -migrations: - @python manage.py makemigrations - run: @docker compose up --detach --build @@ -96,20 +43,3 @@ services: stop: @docker compose stop - -check-translations: - @python -m config.hooks.translations_done - -translations: - @echo "" - @echo Making translations... - @python manage.py maketranslations -l fi -l sv --no-obsolete --omit-header --add-location file - @echo "" - @echo Done! - -translate: - @echo "" - @echo Compiling translations... - @python manage.py compilemessages - @echo "" - @echo Done! diff --git a/README.md b/README.md index 6ec16d279b..9d73e15c31 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Tilavarauspalvelu Core +# Tilavarauspalvelu [![Maintainability Rating]][Maintainability Rating Link] [![Reliability Rating]][Reliability Rating Link] @@ -6,324 +6,25 @@ [![Coverage]][Coverage Link] [![License]][License Link] -## Table of Contents +This repository contains the new space and resource [reservation platform] for City of Helsinki, +colloquially known as "Varaamo". In Varaamo, citizens of Helsinki can make reservations for spaces +and resources owned by the City of Helsinki. This project replaces the [old Varaamo] platform. +For more detailed information, please refer to the [Tilavarauspalvelu page in Confluence] +(accessible to the City of Helsinki organization only). -- [Overview](#overview) -- [Tech Stack](#tech-stack) -- [Integrations](#integrations) -- [Setup](#setup) - - [With docker](#with-docker) - - [Without docker](#without-docker) -- [Testing](#testing) -- [Updating dependencies](#updating-dependencies) -- [Miscellaneous](#miscellaneous) - - [Background processing](#background-processing) - - [Authentication](#authentication) - - [Static files](#static-files) - - [Translations](#translations) - - [Debugging](#debugging) - - [Development environment](#development-environment) - - [Image cache](#image-cache) +The project is moving to a monorepo structure. +Backend specific documentation can be found in the [backend README]. -## Overview - -This repository contains the backend of the new [reservation platform] for city of Helsinki. -Its main purpose is to act as a backend for [tilavarauspalvelu-ui] through the GraphQL API. - -For more detailed information, please refer to the [Tilavarauspalvelu page in Confluence]. -This is also where you can find the list of [members of the project]. -The preferred contact method is through Helsinki City Slack. - -## Tech Stack - -- [PostgreSQL] (with the [PostGIS] extension) for database needs -- [Redis] for in-memory caching -- [Celery] for scheduling and background task handling -- [Poetry] for dependency management -- [Docker] for containerization -- [Django] as the web framework -- [Graphene] as the GraphQL framework -- [Make] ([Windows][Make (Windows)], [Mac][Make (Mac)]) for running common commands - -## Integrations - -- Authentication with [Tunnistamo] -- Profile data from [Helsinki Profile] -- Opening hours from [Hauki] -- Unit information from [Toimipaikkarekisteri] -- Payments are handled by [Helsinki Web Shop] - -## Setup - -### With Docker - -These instructions will set up the backend for local development using Docker. -This is recommended for especially for frontend developers, as it requires fewer dependencies. - -Before we start, make sure [Docker] and [Make] are installed your system. -Then, follow the steps below. - -1. Copy `.env.example` to `.env`. - -```shell -cp .env.example .env -``` - -2. Build and run backend with Docker. - -```shell -make run -``` - -You should now be able to log into Django admin panel at `localhost:8000/admin/`. -GraphQL endpoint is at `localhost:8000/graphql/`. - -To generate test data, follow the steps below. - -1. Connect to running container. - -```shell -make bash -``` - -2. Generate test data. - -```shell -make generate -``` - - -### Without Docker - -These instructions will set up the backend for local development without Docker. -This is mainly for backend developers, as it requires more dependencies and setup. - -Before you start, you'll need the following dependencies: - -- CPython (check `pyproject.toml` for version) -- [Poetry] (latest version) -- [Make] ([Windows][Make (Windows)], [Mac][Make (Mac)]) -- [PostgreSQL] (with the [PostGIS] extension) (version 13 or newer) -- [Redis] (version 7 or newer) -- [GDAL] (version compatible with Django, check their documentation for more info) - - Ubuntu: `sudo apt-get install gdal-bin` - - Mac: `brew install gdal` - - Windows: Use WSL. We haven't gotten GDAL & Django to work on Windows yet. -- [gettext] - - Ubuntu: `sudo apt-get install gettext` - - Mac: `brew install gettext` - - Windows: https://mlocati.github.io/articles/gettext-iconv-windows.html - -> Installation instructions for the dependencies will depend on the OS and can -> change over time, so please refer to the official documentation for each dependency -> on how to set them up correctly. - -> You can skip the dependencies for Postgres and Redis by running -> them using Docker. To do this, install [Docker] and run `make services`. - -Now, follow the steps below. - -1. Copy `.env.example` to `.env`. - -```shell -cp .env.example .env -``` - -> This file contains environment variables used by the project. You can modify these -> to suit your local development environment. - -2. Copy `local_settings_example.py` to `local_settings.py`. - -```shell -cp local_settings_example.py local_settings.py -``` - -> These can be used to modify settings for local development without changing the main settings file. - -3. Create a virtual environment & install dependencies. - -```shell -poetry install -``` - -4. Add pre-commit hooks - -```shell -poetry run make hooks -``` - -5. Run migrations - -```shell -poetry run make migrate -``` - -6. Generate test data - -```shell -poetry run make generate -``` - -7. Start the server - -```shell -poetry run make dev -``` - -Backend should now be running at `localhost:8000`. - -## Testing - -Tests are run with `pytest`. - -Some flags that can save time when running tests: - -- To skip slow-running tests: `pytest --skip-slow` -- To retain test database between runs: `pytest --reuse-db` -- To skip migration-checks at the start of tests: `pytest --no-migrations` -- To run tests in parallel: `pytest -n 8 --dist=loadscope` (=8 cores, use `-n auto` to use all available cores) - -You can use a `pytest.ini` file to set up flags for local development. - -## Updating dependencies - -Dependencies are managed by [Poetry]. Normally, they are automatically updated by [dependabot] -without any manual intervention (given updates don't fail any automated tests). - -However, if you want to update them manually, you can do so by running: - -```shell -poetry update -``` - -This will update all dependencies according to the rules defined in `pyproject.toml`. -To see all outdated dependencies, run: - -```shell -poetry show --outdated -``` - -Note that this will also include any sub-dependencies that are not directly defined in `pyproject.toml`. - -## Miscellaneous - -### Background processing - -Scheduled & background tasks are run with [Celery]. - -When developing locally, you can run these tasks in a Celery worker with `make celery`. -This uses the filesystem as the message broker. -You'll need to create queue and processed folders according to the -`CELERY_QUEUE_FOLDER_OUT`, `CELERY_QUEUE_FOLDER_IN`, `CELERY_PROCESSED_FOLDER` -environment variables (see `.env.example`). - -If you want to run background tasks synchronously without Celery, set the environment variable -`CELERY_ENABLED` to `False`. Scheduled tasks still need the worker in order to run. - -### Authentication - -Authentication is handled by [Tunnistamo] using the [django-helusers] library. -You'll need to get the `TUNNISTAMO_ADMIN_SECRET` from the [Azure Pipelines library] -or from a colleague and set that in your `.env` file. - -Instead of JWTs, authentication is managed with via sessions. See [this ADR][auth-ARD] in -confluence for why this decision was made. - -### Static files - -Static files are served by the [Whitenoise] package. -These are all files that are not uploaded by the users in Django Admin pages. - -Media files are served by the [uWSGI static files implementation], offloaded to threads. -These are all files uploaded by users in Django Admin pages. - -> If there are performance issues (I.E. 502 errors from the Application Gateway) -> it is very likely process count and or process scale-up must be tweaked higher. - -### Translations - -Translations are handled by Django's built-in translation system. -GitHub Actions CI will check that all translations are up-to-date during PRs. -To update translations, run `make translations`. This will update the `.po` files -located in the `locale` directory. - -For model field translations, we use `django-modeltranslation`. -The package has integrations in all the relevant parts of the project -(serializers, admin, etc.). See code for more details. - -### Debugging - -For debugging during development, the [Django Debug Toolbar] package can be used. -The [Django GraphQL Debug Toolbar] extension is used for the GraphQL endpoint. - -You should add a `local_settings.py` on the root level of the project and add -three classes called `LocalMixin`, `DockerMixin` and `AutomatedTestMixin` to it. -These can be used to override settings for local development and automated tests respectively. - -Note that in order for development settings to work correctly, you need to set the -`DJANGO_SETTINGS_ENVIRONMENT` environment variable to `Local` when running the server. - -### Development environment - -It's recommended to set up [ruff-lsp] to enable Ruff linting and formatting support in your editor. - -### Image cache - -In production, [Varnish cache] is used for reservation unit and purpose images. -When new image is uploaded, existing images are removed from the cache using [purge task]. -For more details about how purge is done, check the [image cache utility]. - -In settings there are four configurations: -- `IMAGE_CACHE_ENABLED` = Toggle caching on/off -- `IMAGE_CACHE_VARNISH_HOST` = Varnish hostname -- `IMAGE_CACHE_PURGE_KEY` = Secret key for doing purge requests -- `IMAGE_CACHE_HOST_HEADER` = `Host` header value in purge request - ---- - -[auth-ARD]: https://helsinkisolutionoffice.atlassian.net/wiki/spaces/KAN/pages/8524300289/Kirjautumisen+keskitt+minen+b+ckendiin -[Azure DevOps]: https://dev.azure.com/City-of-Helsinki/tilavarauspalvelu -[Azure Pipelines library]: https://dev.azure.com/City-of-Helsinki/tilavarauspalvelu/_library?itemType=VariableGroups -[Celery]: https://github.com/celery/ +[backend README]: https://github.com/City-of-Helsinki/tilavarauspalvelu-core/blob/main/backend/README.md [Coverage Link]: https://sonarcloud.io/summary/new_code?id=City-of-Helsinki_tilavarauspalvelu-core [Coverage]: https://sonarcloud.io/api/project_badges/measure?project=City-of-Helsinki_tilavarauspalvelu-core&metric=coverage -[dependabot]: https://github.com/dependabot -[Django Debug Toolbar]: https://django-debug-toolbar.readthedocs.io/en/latest/ -[Django GraphQL Debug Toolbar]: https://github.com/flavors/django-graphiql-debug-toolbar -[django-helusers]: https://github.com/City-of-Helsinki/django-helusers -[Django]: https://www.djangoproject.com/ -[Docker]: https://www.docker.com/ -[GDAL]: https://gdal.org/index.html -[gettext]: https://www.gnu.org/software/gettext/ -[Graphene]: https://github.com/graphql-python/graphene-django -[Hauki]: https://github.com/City-of-Helsinki/hauki -[Helsinki Profile]: https://github.com/City-of-Helsinki/open-city-profile-ui -[Helsinki VPN]: https://huolto.hel.fi/ -[Helsinki Web Shop]: https://github.com/City-of-Helsinki/verkkokauppa-experience-api -[image cache utility]: https://github.com/City-of-Helsinki/tilavarauspalvelu-core/blob/main/utils/image_cache.py [License Link]: https://github.com/City-of-Helsinki/tilavarauspalvelu-core/blob/main/LICENSE [License]: https://img.shields.io/badge/license-MIT-blue.svg [Maintainability Rating Link]: https://sonarcloud.io/summary/new_code?id=City-of-Helsinki_tilavarauspalvelu-core [Maintainability Rating]: https://sonarcloud.io/api/project_badges/measure?project=City-of-Helsinki_tilavarauspalvelu-core&metric=sqale_rating -[Make (Mac)]: https://formulae.brew.sh/formula/make -[Make (Windows)]: https://community.chocolatey.org/packages/make -[Make]: https://www.gnu.org/software/make/ -[members of the project]: https://helsinkisolutionoffice.atlassian.net/wiki/spaces/KAN/pages/1138065426/Tiimin+j+senet+ja+roolit -[Poetry]: https://python-poetry.org/ -[PostGIS]: https://postgis.net/ -[PostgreSQL]: https://www.postgresql.org/ -[purge task]: https://github.com/City-of-Helsinki/tilavarauspalvelu-core/blob/main/reservation_units/tasks.py#L143C2-L143C2 -[Redis]: https://redis.io/ +[old Varaamo]: https://github.com/City-of-Helsinki/varaamo [Reliability Rating Link]: https://sonarcloud.io/summary/new_code?id=City-of-Helsinki_tilavarauspalvelu-core [Reliability Rating]: https://sonarcloud.io/api/project_badges/measure?project=City-of-Helsinki_tilavarauspalvelu-core&metric=reliability_rating [reservation platform]: https://tilavaraus.hel.fi/ -[ruff-lsp]: https://github.com/astral-sh/ruff-lsp [Security Rating Link]: https://sonarcloud.io/summary/new_code?id=City-of-Helsinki_tilavarauspalvelu-core [Security Rating]: https://sonarcloud.io/api/project_badges/measure?project=City-of-Helsinki_tilavarauspalvelu-core&metric=security_rating -[Tilavarauspalvelu page in Confluence]: https://helsinkisolutionoffice.atlassian.net/wiki/spaces/KAN/pages/887029864/Tilavarauspalvelu+Varaamo -[tilavarauspalvelu-ui]: https://github.com/City-of-Helsinki/tilavarauspalvelu-ui -[Toimipaikkarekisteri]: https://www.hel.fi/palvelukarttaws/restpages/ver4.html#_unit -[Tunnistamo]: https://github.com/City-of-Helsinki/tunnistamo -[uWSGI static files implementation]: https://uwsgi-docs.readthedocs.io/en/latest/StaticFiles.html -[Varnish cache]: https://varnish-cache.org/ -[Whitenoise]: https://whitenoise.evans.io/en/stable/ diff --git a/backend/.dockerignore b/backend/.dockerignore new file mode 100644 index 0000000000..2f4f2d5018 --- /dev/null +++ b/backend/.dockerignore @@ -0,0 +1,28 @@ +# configs +.editorconfig +.idea +.vscode +pytest.ini +sonar-project.properties + +# caches +**/__pycache__ +**/.pytest_cache +**/.ruff_cache + +# tests +**/tests* +!tests/factories* +!tests/plugins.py + +# celery +broker/* +control/* + +# coverage +.coverage + +# docker +.dockerignore +docker/Dockerfile +docker/Dockerfile.final diff --git a/backend/.editorconfig b/backend/.editorconfig new file mode 100644 index 0000000000..3d24d305da --- /dev/null +++ b/backend/.editorconfig @@ -0,0 +1,7 @@ +[*] +indent_style = space +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true diff --git a/.env.example b/backend/.env.example similarity index 100% rename from .env.example rename to backend/.env.example diff --git a/backend/Makefile b/backend/Makefile new file mode 100644 index 0000000000..7e2732c634 --- /dev/null +++ b/backend/Makefile @@ -0,0 +1,94 @@ +.PHONY: Makefile +.PHONY: celery +.PHONY: check-translations +.PHONY: clear-db +.PHONY: db-reset +.PHONY: dev +.PHONY: flush +.PHONY: generate +.PHONY: help +.PHONY: hooks +.PHONY: indices +.PHONY: lint +.PHONY: migrate +.PHONY: migrations +.PHONY: translate +.PHONY: translations + +# Trick to allow passing commands to make +# Use quotes (" ") if command contains flags (-h / --help) +args = `arg="$(filter-out $@,$(MAKECMDGOALS))" && echo $${arg:-${1}}` + +# If command doesn't match, do not throw error +%: + @: + + +define helptext + + Commands: + + celery Run a local celery worker. + check-translations Check if translations are up to date. + clear-db Reset database. + dev Run local backend. + flush-db Flush database. + generate Generate test data via a script. + hooks Add pre-commit hooks. + lint Run pre-commit hooks. + migrate Run database migrations. + migrations Compile database migrations. + translate Compile translation strings. + translations Fetch all translation strings under ./locale/. + +endef + +export helptext + +# Help should be first so that make without arguments is the same as help +help: + @echo "$$helptext" + +celery: + @celery -A config worker --beat --loglevel=INFO --scheduler=django + +check-translations: + @python -m config.hooks.translations_done + +clear-db: + @python manage.py dbshell -- -c "DROP SCHEMA $(call args, 'public') CASCADE;CREATE SCHEMA $(call args, 'public');" + +dev: + @python manage.py runserver localhost:8000 + +flush-db: + @python manage.py flush --no-input + +generate: + @python manage.py create_test_data + +hooks: + @pre-commit install + +lint: + @pre-commit run --all-files + +migrate: + @python manage.py migrate + +migrations: + @python manage.py makemigrations + +translate: + @echo "" + @echo Compiling translations... + @python manage.py compilemessages + @echo "" + @echo Done! + +translations: + @echo "" + @echo Making translations... + @python manage.py maketranslations -l fi -l sv --no-obsolete --omit-header --add-location file + @echo "" + @echo Done! diff --git a/backend/README.md b/backend/README.md new file mode 100644 index 0000000000..f7cd783bb1 --- /dev/null +++ b/backend/README.md @@ -0,0 +1,328 @@ +# Tilavarauspalvelu Core + +## Table of Contents + +- [Overview](#overview) +- [Tech Stack](#tech-stack) +- [Integrations](#integrations) +- [Setup](#setup) + - [With docker](#with-docker) + - [Without docker](#without-docker) + - [Fixing source path](#fixing-source-path) +- [Testing](#testing) +- [Updating dependencies](#updating-dependencies) +- [Miscellaneous](#miscellaneous) + - [Background processing](#background-processing) + - [Authentication](#authentication) + - [Static files](#static-files) + - [Translations](#translations) + - [Debugging](#debugging) + - [Development environment](#development-environment) + - [Image cache](#image-cache) + +## Overview + +This is the backend of the new [reservation platform] for city of Helsinki. +Its main purpose is to act as a backend for [tilavarauspalvelu-ui] through the GraphQL API. + +## Tech Stack + +- [PostgreSQL] (with the [PostGIS] extension) for database needs +- [Redis] for in-memory caching +- [Celery] for scheduling and background task handling +- [Poetry] for dependency management +- [Docker] for containerization +- [Django] as the web framework +- [Graphene] as the GraphQL framework +- [Make] ([Windows][Make (Windows)], [Mac][Make (Mac)]) for running common commands + +## Integrations + +- Authentication with [Tunnistamo] +- Profile data from [Helsinki Profile] +- Opening hours from [Hauki] +- Unit information from [Toimipaikkarekisteri] +- Payments are handled by [Helsinki Web Shop] + +## Setup + +### With Docker + +These instructions will set up the backend for local development using Docker. +This is recommended for especially for frontend developers, as it requires fewer dependencies. + +Before we start, make sure [Docker] and [Make] are installed your system. +Then, follow the steps below. + +1. Copy `.env.example` to `.env`. + +```shell +cp .env.example .env +``` + +2. Build and run backend with Docker. + +```shell +make run +``` + +You should now be able to log into Django admin panel at `localhost:8000/admin/`. +GraphQL endpoint is at `localhost:8000/graphql/`. + +To generate test data, follow the steps below. + +1. Connect to running container. + +```shell +make bash +``` + +2. Generate test data. + +```shell +make generate +``` + +### Without Docker + +These instructions will set up the backend for local development without Docker. +This is mainly for backend developers, as it requires more dependencies and setup. + +Before you start, you'll need the following dependencies: + +- CPython (check `pyproject.toml` for version) +- [Poetry] (latest version) +- [Make] ([Windows][Make (Windows)], [Mac][Make (Mac)]) +- [PostgreSQL] (with the [PostGIS] extension) (version 13 or newer) +- [Redis] (version 7 or newer) +- [GDAL] (version compatible with Django, check their documentation for more info) + - Ubuntu: `sudo apt-get install gdal-bin` + - Mac: `brew install gdal` + - Windows: Use WSL. We haven't gotten GDAL & Django to work on Windows yet. +- [gettext] + - Ubuntu: `sudo apt-get install gettext` + - Mac: `brew install gettext` + - Windows: https://mlocati.github.io/articles/gettext-iconv-windows.html + +> Installation instructions for the dependencies will depend on the OS and can +> change over time, so please refer to the official documentation for each dependency +> on how to set them up correctly. + +> You can skip the dependencies for Postgres and Redis by running +> them using Docker. To do this, install [Docker] and run `make services`. + +Now, follow the steps below. + +1. Copy `.env.example` to `.env`. + +```shell +cp .env.example .env +``` + +> This file contains environment variables used by the project. You can modify these +> to suit your local development environment. + +2. Copy `local_settings_example.py` to `local_settings.py`. + +```shell +cp local_settings_example.py local_settings.py +``` + +> These can be used to modify settings for local development without changing the main settings file. + +3. Create a virtual environment & install dependencies. + +```shell +poetry install +``` + +4. Add pre-commit hooks + +```shell +poetry run make hooks +``` + +5. Run migrations + +```shell +poetry run make migrate +``` + +6. Generate test data + +```shell +poetry run make generate +``` + +7. Start the server + +```shell +poetry run make dev +``` + +Backend should now be running at `localhost:8000`. + +### Fixing source path + +Since the backend is not in the root of the project, the source path is not correct for linting out of the box. +Fixing this is specific to your IDE, but here are some setups for popular ones: + +#### PyCharm + +Right click on the `backend` folder and select "Mark Directory as" and then select "Sources Root". + +#### VSCode + +In your workspace settings (`.vscode/settings.json`), add the following: + +```json +{ + "python.analysis.extraPaths": [ + "$(workspaceFolder)/backend" + ] +} +``` + +## Testing + +Tests are run with `pytest`. + +Some flags that can save time when running tests: + +- To skip slow-running tests: `pytest --skip-slow` +- To retain test database between runs: `pytest --reuse-db` +- To skip migration-checks at the start of tests: `pytest --no-migrations` +- To run tests in parallel: `pytest -n 8 --dist=loadscope` (=8 cores, use `-n auto` to use all available cores) + +You can use a `pytest.ini` file to set up flags for local development. + +## Updating dependencies + +Dependencies are managed by [Poetry]. Normally, they are automatically updated by [dependabot] +without any manual intervention (given updates don't fail any automated tests). + +However, if you want to update them manually, you can do so by running: + +```shell +poetry update +``` + +This will update all dependencies according to the rules defined in `pyproject.toml`. +To see all outdated dependencies, run: + +```shell +poetry show --outdated +``` + +Note that this will also include any sub-dependencies that are not directly defined in `pyproject.toml`. + +## Miscellaneous + +### Background processing + +Scheduled & background tasks are run with [Celery]. + +When developing locally, you can run these tasks in a Celery worker with `make celery`. +This uses the filesystem as the message broker. +You'll need to create queue and processed folders according to the +`CELERY_QUEUE_FOLDER_OUT`, `CELERY_QUEUE_FOLDER_IN`, `CELERY_PROCESSED_FOLDER` +environment variables (see `.env.example`). + +If you want to run background tasks synchronously without Celery, set the environment variable +`CELERY_ENABLED` to `False`. Scheduled tasks still need the worker in order to run. + +### Authentication + +Authentication is handled by [Tunnistamo] using the [django-helusers] library. +You'll need to get the `TUNNISTAMO_ADMIN_SECRET` from the [Azure Pipelines library] +or from a colleague and set that in your `.env` file. + +Instead of JWTs, authentication is managed with via sessions. See [this ADR][auth-ARD] in +confluence for why this decision was made. + +### Static files + +Static files are served by the [Whitenoise] package. +These are all files that are not uploaded by the users in Django Admin pages. + +Media files are served by the [uWSGI static files implementation], offloaded to threads. +These are all files uploaded by users in Django Admin pages. + +> If there are performance issues (I.E. 502 errors from the Application Gateway) +> it is very likely process count and or process scale-up must be tweaked higher. + +### Translations + +Translations are handled by Django's built-in translation system. +GitHub Actions CI will check that all translations are up-to-date during PRs. +To update translations, run `make translations`. This will update the `.po` files +located in the `locale` directory. + +For model field translations, we use `django-modeltranslation`. +The package has integrations in all the relevant parts of the project +(serializers, admin, etc.). See code for more details. + +### Debugging + +For debugging during development, the [Django Debug Toolbar] package can be used. +The [Django GraphQL Debug Toolbar] extension is used for the GraphQL endpoint. + +You should add a `local_settings.py` on the root level of the project and add +three classes called `LocalMixin`, `DockerMixin` and `AutomatedTestMixin` to it. +These can be used to override settings for local development and automated tests respectively. + +Note that in order for development settings to work correctly, you need to set the +`DJANGO_SETTINGS_ENVIRONMENT` environment variable to `Local` when running the server. + +### Development environment + +It's recommended to set up [ruff-lsp] to enable Ruff linting and formatting support in your editor. + +### Image cache + +In production, [Varnish cache] is used for reservation unit and purpose images. +When new image is uploaded, existing images are removed from the cache using [purge task]. +For more details about how purge is done, check the [image cache utility]. + +In settings there are four configurations: +- `IMAGE_CACHE_ENABLED` = Toggle caching on/off +- `IMAGE_CACHE_VARNISH_HOST` = Varnish hostname +- `IMAGE_CACHE_PURGE_KEY` = Secret key for doing purge requests +- `IMAGE_CACHE_HOST_HEADER` = `Host` header value in purge request + +--- + +[auth-ARD]: https://helsinkisolutionoffice.atlassian.net/wiki/spaces/KAN/pages/8524300289/Kirjautumisen+keskitt+minen+b+ckendiin +[Azure DevOps]: https://dev.azure.com/City-of-Helsinki/tilavarauspalvelu +[Azure Pipelines library]: https://dev.azure.com/City-of-Helsinki/tilavarauspalvelu/_library?itemType=VariableGroups +[Celery]: https://github.com/celery/ +[dependabot]: https://github.com/dependabot +[Django Debug Toolbar]: https://django-debug-toolbar.readthedocs.io/en/latest/ +[Django GraphQL Debug Toolbar]: https://github.com/flavors/django-graphiql-debug-toolbar +[django-helusers]: https://github.com/City-of-Helsinki/django-helusers +[Django]: https://www.djangoproject.com/ +[Docker]: https://www.docker.com/ +[GDAL]: https://gdal.org/index.html +[gettext]: https://www.gnu.org/software/gettext/ +[Graphene]: https://github.com/graphql-python/graphene-django +[Hauki]: https://github.com/City-of-Helsinki/hauki +[Helsinki Profile]: https://github.com/City-of-Helsinki/open-city-profile-ui +[Helsinki VPN]: https://huolto.hel.fi/ +[Helsinki Web Shop]: https://github.com/City-of-Helsinki/verkkokauppa-experience-api +[image cache utility]: https://github.com/City-of-Helsinki/tilavarauspalvelu-core/blob/main/utils/image_cache.py +[Make (Mac)]: https://formulae.brew.sh/formula/make +[Make (Windows)]: https://community.chocolatey.org/packages/make +[Make]: https://www.gnu.org/software/make/ +[Poetry]: https://python-poetry.org/ +[PostGIS]: https://postgis.net/ +[PostgreSQL]: https://www.postgresql.org/ +[purge task]: https://github.com/City-of-Helsinki/tilavarauspalvelu-core/blob/main/reservation_units/tasks.py#L143C2-L143C2 +[Redis]: https://redis.io/ +[reservation platform]: https://tilavaraus.hel.fi/ +[ruff-lsp]: https://github.com/astral-sh/ruff-lsp +[tilavarauspalvelu-ui]: https://github.com/City-of-Helsinki/tilavarauspalvelu-ui +[Toimipaikkarekisteri]: https://www.hel.fi/palvelukarttaws/restpages/ver4.html#_unit +[Tunnistamo]: https://github.com/City-of-Helsinki/tunnistamo +[uWSGI static files implementation]: https://uwsgi-docs.readthedocs.io/en/latest/StaticFiles.html +[Varnish cache]: https://varnish-cache.org/ +[Whitenoise]: https://whitenoise.evans.io/en/stable/ diff --git a/azure-pipelines-dev.yml b/backend/azure-pipelines-dev.yml similarity index 100% rename from azure-pipelines-dev.yml rename to backend/azure-pipelines-dev.yml diff --git a/azure-pipelines-release.yml b/backend/azure-pipelines-release.yml similarity index 100% rename from azure-pipelines-release.yml rename to backend/azure-pipelines-release.yml diff --git a/config/__init__.py b/backend/config/__init__.py similarity index 100% rename from config/__init__.py rename to backend/config/__init__.py diff --git a/config/auth.py b/backend/config/auth.py similarity index 100% rename from config/auth.py rename to backend/config/auth.py diff --git a/config/celery.py b/backend/config/celery.py similarity index 100% rename from config/celery.py rename to backend/config/celery.py diff --git a/config/elasticsearch/reservation_units.json b/backend/config/elasticsearch/reservation_units.json similarity index 100% rename from config/elasticsearch/reservation_units.json rename to backend/config/elasticsearch/reservation_units.json diff --git a/config/health_checks.py b/backend/config/health_checks.py similarity index 100% rename from config/health_checks.py rename to backend/config/health_checks.py diff --git a/config/hooks/__init__.py b/backend/config/hooks/__init__.py similarity index 100% rename from config/hooks/__init__.py rename to backend/config/hooks/__init__.py diff --git a/config/hooks/translations_done.py b/backend/config/hooks/translations_done.py similarity index 100% rename from config/hooks/translations_done.py rename to backend/config/hooks/translations_done.py diff --git a/config/logging.py b/backend/config/logging.py similarity index 100% rename from config/logging.py rename to backend/config/logging.py diff --git a/config/middleware.py b/backend/config/middleware.py similarity index 100% rename from config/middleware.py rename to backend/config/middleware.py diff --git a/config/settings.py b/backend/config/settings.py similarity index 100% rename from config/settings.py rename to backend/config/settings.py diff --git a/config/storage.py b/backend/config/storage.py similarity index 100% rename from config/storage.py rename to backend/config/storage.py diff --git a/config/urls.py b/backend/config/urls.py similarity index 100% rename from config/urls.py rename to backend/config/urls.py diff --git a/config/utils/__init__.py b/backend/config/utils/__init__.py similarity index 100% rename from config/utils/__init__.py rename to backend/config/utils/__init__.py diff --git a/config/utils/auditlog_util.py b/backend/config/utils/auditlog_util.py similarity index 100% rename from config/utils/auditlog_util.py rename to backend/config/utils/auditlog_util.py diff --git a/config/utils/date_util.py b/backend/config/utils/date_util.py similarity index 100% rename from config/utils/date_util.py rename to backend/config/utils/date_util.py diff --git a/config/wsgi.py b/backend/config/wsgi.py similarity index 100% rename from config/wsgi.py rename to backend/config/wsgi.py diff --git a/docker/Dockerfile b/backend/docker/Dockerfile similarity index 100% rename from docker/Dockerfile rename to backend/docker/Dockerfile diff --git a/docker/Dockerfile.final b/backend/docker/Dockerfile.final similarity index 100% rename from docker/Dockerfile.final rename to backend/docker/Dockerfile.final diff --git a/docker/entrypoint.sh b/backend/docker/entrypoint.sh old mode 100755 new mode 100644 similarity index 100% rename from docker/entrypoint.sh rename to backend/docker/entrypoint.sh diff --git a/docker/entrypoint_dev.sh b/backend/docker/entrypoint_dev.sh old mode 100755 new mode 100644 similarity index 100% rename from docker/entrypoint_dev.sh rename to backend/docker/entrypoint_dev.sh diff --git a/docker/uwsgi.yml b/backend/docker/uwsgi.yml similarity index 100% rename from docker/uwsgi.yml rename to backend/docker/uwsgi.yml diff --git a/docker/worker.sh b/backend/docker/worker.sh old mode 100755 new mode 100644 similarity index 100% rename from docker/worker.sh rename to backend/docker/worker.sh diff --git a/local_settings_example.py b/backend/local_settings_example.py similarity index 100% rename from local_settings_example.py rename to backend/local_settings_example.py diff --git a/locale/fi/LC_MESSAGES/django.po b/backend/locale/fi/LC_MESSAGES/django.po similarity index 100% rename from locale/fi/LC_MESSAGES/django.po rename to backend/locale/fi/LC_MESSAGES/django.po diff --git a/locale/sv/LC_MESSAGES/django.po b/backend/locale/sv/LC_MESSAGES/django.po similarity index 100% rename from locale/sv/LC_MESSAGES/django.po rename to backend/locale/sv/LC_MESSAGES/django.po diff --git a/manage.py b/backend/manage.py old mode 100755 new mode 100644 similarity index 100% rename from manage.py rename to backend/manage.py diff --git a/poetry.lock b/backend/poetry.lock similarity index 100% rename from poetry.lock rename to backend/poetry.lock diff --git a/pyproject.toml b/backend/pyproject.toml similarity index 100% rename from pyproject.toml rename to backend/pyproject.toml diff --git a/sonar-project.properties b/backend/sonar-project.properties similarity index 97% rename from sonar-project.properties rename to backend/sonar-project.properties index d452406ccb..b2ecf9d50e 100644 --- a/sonar-project.properties +++ b/backend/sonar-project.properties @@ -1,13 +1,10 @@ # General setup sonar.projectKey=City-of-Helsinki_tilavarauspalvelu-core sonar.organization=city-of-helsinki -sonar.python.version=3.11 +sonar.python.version=3.13 # All paths are relative to the 'sonar-project.properties' file. -# Source for scanning -sonar.source=./ - # Path globs to files excluded from scanning sonar.exclusions=**tests**/*,**migrations**/*,**Dockerfile*,**docker-compose*,config/settings.py diff --git a/templates/admin/base_site.html b/backend/templates/admin/base_site.html similarity index 100% rename from templates/admin/base_site.html rename to backend/templates/admin/base_site.html diff --git a/templates/admin/deny_reservation_confirmation.html b/backend/templates/admin/deny_reservation_confirmation.html similarity index 100% rename from templates/admin/deny_reservation_confirmation.html rename to backend/templates/admin/deny_reservation_confirmation.html diff --git a/templates/admin/hel_login.html b/backend/templates/admin/hel_login.html similarity index 100% rename from templates/admin/hel_login.html rename to backend/templates/admin/hel_login.html diff --git a/templates/admin/reset_allocation_confirmation.html b/backend/templates/admin/reset_allocation_confirmation.html similarity index 100% rename from templates/admin/reset_allocation_confirmation.html rename to backend/templates/admin/reset_allocation_confirmation.html diff --git a/templates/email/email_tester.html b/backend/templates/email/email_tester.html similarity index 100% rename from templates/email/email_tester.html rename to backend/templates/email/email_tester.html diff --git a/templates/email/html/application_handled.jinja b/backend/templates/email/html/application_handled.jinja similarity index 100% rename from templates/email/html/application_handled.jinja rename to backend/templates/email/html/application_handled.jinja diff --git a/templates/email/html/application_in_allocation.jinja b/backend/templates/email/html/application_in_allocation.jinja similarity index 100% rename from templates/email/html/application_in_allocation.jinja rename to backend/templates/email/html/application_in_allocation.jinja diff --git a/templates/email/html/application_received.jinja b/backend/templates/email/html/application_received.jinja similarity index 100% rename from templates/email/html/application_received.jinja rename to backend/templates/email/html/application_received.jinja diff --git a/templates/email/html/application_section_cancelled.jinja b/backend/templates/email/html/application_section_cancelled.jinja similarity index 100% rename from templates/email/html/application_section_cancelled.jinja rename to backend/templates/email/html/application_section_cancelled.jinja diff --git a/templates/email/html/partials/application_section_name.jinja b/backend/templates/email/html/partials/application_section_name.jinja similarity index 100% rename from templates/email/html/partials/application_section_name.jinja rename to backend/templates/email/html/partials/application_section_name.jinja diff --git a/templates/email/html/partials/automatic_message.jinja b/backend/templates/email/html/partials/automatic_message.jinja similarity index 100% rename from templates/email/html/partials/automatic_message.jinja rename to backend/templates/email/html/partials/automatic_message.jinja diff --git a/templates/email/html/partials/base.jinja b/backend/templates/email/html/partials/base.jinja similarity index 100% rename from templates/email/html/partials/base.jinja rename to backend/templates/email/html/partials/base.jinja diff --git a/templates/email/html/partials/closing.jinja b/backend/templates/email/html/partials/closing.jinja similarity index 100% rename from templates/email/html/partials/closing.jinja rename to backend/templates/email/html/partials/closing.jinja diff --git a/templates/email/html/partials/closing_polite.jinja b/backend/templates/email/html/partials/closing_polite.jinja similarity index 100% rename from templates/email/html/partials/closing_polite.jinja rename to backend/templates/email/html/partials/closing_polite.jinja diff --git a/templates/email/html/partials/closing_staff.jinja b/backend/templates/email/html/partials/closing_staff.jinja similarity index 100% rename from templates/email/html/partials/closing_staff.jinja rename to backend/templates/email/html/partials/closing_staff.jinja diff --git a/templates/email/html/partials/instructions.jinja b/backend/templates/email/html/partials/instructions.jinja similarity index 100% rename from templates/email/html/partials/instructions.jinja rename to backend/templates/email/html/partials/instructions.jinja diff --git a/templates/email/html/partials/reservation_basic_info.jinja b/backend/templates/email/html/partials/reservation_basic_info.jinja similarity index 100% rename from templates/email/html/partials/reservation_basic_info.jinja rename to backend/templates/email/html/partials/reservation_basic_info.jinja diff --git a/templates/email/html/partials/reservation_manage_link.jinja b/backend/templates/email/html/partials/reservation_manage_link.jinja similarity index 100% rename from templates/email/html/partials/reservation_manage_link.jinja rename to backend/templates/email/html/partials/reservation_manage_link.jinja diff --git a/templates/email/html/partials/reservation_price.jinja b/backend/templates/email/html/partials/reservation_price.jinja similarity index 100% rename from templates/email/html/partials/reservation_price.jinja rename to backend/templates/email/html/partials/reservation_price.jinja diff --git a/templates/email/html/partials/reservation_price_range.jinja b/backend/templates/email/html/partials/reservation_price_range.jinja similarity index 100% rename from templates/email/html/partials/reservation_price_range.jinja rename to backend/templates/email/html/partials/reservation_price_range.jinja diff --git a/templates/email/html/permission_deactivation.jinja b/backend/templates/email/html/permission_deactivation.jinja similarity index 100% rename from templates/email/html/permission_deactivation.jinja rename to backend/templates/email/html/permission_deactivation.jinja diff --git a/templates/email/html/reservation_approved.jinja b/backend/templates/email/html/reservation_approved.jinja similarity index 100% rename from templates/email/html/reservation_approved.jinja rename to backend/templates/email/html/reservation_approved.jinja diff --git a/templates/email/html/reservation_cancelled.jinja b/backend/templates/email/html/reservation_cancelled.jinja similarity index 100% rename from templates/email/html/reservation_cancelled.jinja rename to backend/templates/email/html/reservation_cancelled.jinja diff --git a/templates/email/html/reservation_confirmed.jinja b/backend/templates/email/html/reservation_confirmed.jinja similarity index 100% rename from templates/email/html/reservation_confirmed.jinja rename to backend/templates/email/html/reservation_confirmed.jinja diff --git a/templates/email/html/reservation_modified.jinja b/backend/templates/email/html/reservation_modified.jinja similarity index 100% rename from templates/email/html/reservation_modified.jinja rename to backend/templates/email/html/reservation_modified.jinja diff --git a/templates/email/html/reservation_rejected.jinja b/backend/templates/email/html/reservation_rejected.jinja similarity index 100% rename from templates/email/html/reservation_rejected.jinja rename to backend/templates/email/html/reservation_rejected.jinja diff --git a/templates/email/html/reservation_requires_handling.jinja b/backend/templates/email/html/reservation_requires_handling.jinja similarity index 100% rename from templates/email/html/reservation_requires_handling.jinja rename to backend/templates/email/html/reservation_requires_handling.jinja diff --git a/templates/email/html/reservation_requires_payment.jinja b/backend/templates/email/html/reservation_requires_payment.jinja similarity index 100% rename from templates/email/html/reservation_requires_payment.jinja rename to backend/templates/email/html/reservation_requires_payment.jinja diff --git a/templates/email/html/seasonal_reservation_cancelled_single.jinja b/backend/templates/email/html/seasonal_reservation_cancelled_single.jinja similarity index 100% rename from templates/email/html/seasonal_reservation_cancelled_single.jinja rename to backend/templates/email/html/seasonal_reservation_cancelled_single.jinja diff --git a/templates/email/html/seasonal_reservation_modified_series.jinja b/backend/templates/email/html/seasonal_reservation_modified_series.jinja similarity index 100% rename from templates/email/html/seasonal_reservation_modified_series.jinja rename to backend/templates/email/html/seasonal_reservation_modified_series.jinja diff --git a/templates/email/html/seasonal_reservation_modified_single.jinja b/backend/templates/email/html/seasonal_reservation_modified_single.jinja similarity index 100% rename from templates/email/html/seasonal_reservation_modified_single.jinja rename to backend/templates/email/html/seasonal_reservation_modified_single.jinja diff --git a/templates/email/html/seasonal_reservation_rejected_series.jinja b/backend/templates/email/html/seasonal_reservation_rejected_series.jinja similarity index 100% rename from templates/email/html/seasonal_reservation_rejected_series.jinja rename to backend/templates/email/html/seasonal_reservation_rejected_series.jinja diff --git a/templates/email/html/seasonal_reservation_rejected_single.jinja b/backend/templates/email/html/seasonal_reservation_rejected_single.jinja similarity index 100% rename from templates/email/html/seasonal_reservation_rejected_single.jinja rename to backend/templates/email/html/seasonal_reservation_rejected_single.jinja diff --git a/templates/email/html/staff_notification_application_section_cancelled.jinja b/backend/templates/email/html/staff_notification_application_section_cancelled.jinja similarity index 100% rename from templates/email/html/staff_notification_application_section_cancelled.jinja rename to backend/templates/email/html/staff_notification_application_section_cancelled.jinja diff --git a/templates/email/html/staff_notification_reservation_made.jinja b/backend/templates/email/html/staff_notification_reservation_made.jinja similarity index 100% rename from templates/email/html/staff_notification_reservation_made.jinja rename to backend/templates/email/html/staff_notification_reservation_made.jinja diff --git a/templates/email/html/staff_notification_reservation_requires_handling.jinja b/backend/templates/email/html/staff_notification_reservation_requires_handling.jinja similarity index 100% rename from templates/email/html/staff_notification_reservation_requires_handling.jinja rename to backend/templates/email/html/staff_notification_reservation_requires_handling.jinja diff --git a/templates/email/html/user_anonymization.jinja b/backend/templates/email/html/user_anonymization.jinja similarity index 100% rename from templates/email/html/user_anonymization.jinja rename to backend/templates/email/html/user_anonymization.jinja diff --git a/templates/email/text/application_handled.jinja b/backend/templates/email/text/application_handled.jinja similarity index 100% rename from templates/email/text/application_handled.jinja rename to backend/templates/email/text/application_handled.jinja diff --git a/templates/email/text/application_in_allocation.jinja b/backend/templates/email/text/application_in_allocation.jinja similarity index 100% rename from templates/email/text/application_in_allocation.jinja rename to backend/templates/email/text/application_in_allocation.jinja diff --git a/templates/email/text/application_received.jinja b/backend/templates/email/text/application_received.jinja similarity index 100% rename from templates/email/text/application_received.jinja rename to backend/templates/email/text/application_received.jinja diff --git a/templates/email/text/application_section_cancelled.jinja b/backend/templates/email/text/application_section_cancelled.jinja similarity index 100% rename from templates/email/text/application_section_cancelled.jinja rename to backend/templates/email/text/application_section_cancelled.jinja diff --git a/templates/email/text/partials/application_section_name.jinja b/backend/templates/email/text/partials/application_section_name.jinja similarity index 100% rename from templates/email/text/partials/application_section_name.jinja rename to backend/templates/email/text/partials/application_section_name.jinja diff --git a/templates/email/text/partials/automatic_message.jinja b/backend/templates/email/text/partials/automatic_message.jinja similarity index 100% rename from templates/email/text/partials/automatic_message.jinja rename to backend/templates/email/text/partials/automatic_message.jinja diff --git a/templates/email/text/partials/closing.jinja b/backend/templates/email/text/partials/closing.jinja similarity index 100% rename from templates/email/text/partials/closing.jinja rename to backend/templates/email/text/partials/closing.jinja diff --git a/templates/email/text/partials/closing_polite.jinja b/backend/templates/email/text/partials/closing_polite.jinja similarity index 100% rename from templates/email/text/partials/closing_polite.jinja rename to backend/templates/email/text/partials/closing_polite.jinja diff --git a/templates/email/text/partials/closing_staff.jinja b/backend/templates/email/text/partials/closing_staff.jinja similarity index 100% rename from templates/email/text/partials/closing_staff.jinja rename to backend/templates/email/text/partials/closing_staff.jinja diff --git a/templates/email/text/partials/instructions.jinja b/backend/templates/email/text/partials/instructions.jinja similarity index 100% rename from templates/email/text/partials/instructions.jinja rename to backend/templates/email/text/partials/instructions.jinja diff --git a/templates/email/text/partials/reservation_basic_info.jinja b/backend/templates/email/text/partials/reservation_basic_info.jinja similarity index 100% rename from templates/email/text/partials/reservation_basic_info.jinja rename to backend/templates/email/text/partials/reservation_basic_info.jinja diff --git a/templates/email/text/partials/reservation_manage_link.jinja b/backend/templates/email/text/partials/reservation_manage_link.jinja similarity index 100% rename from templates/email/text/partials/reservation_manage_link.jinja rename to backend/templates/email/text/partials/reservation_manage_link.jinja diff --git a/templates/email/text/partials/reservation_price.jinja b/backend/templates/email/text/partials/reservation_price.jinja similarity index 100% rename from templates/email/text/partials/reservation_price.jinja rename to backend/templates/email/text/partials/reservation_price.jinja diff --git a/templates/email/text/partials/reservation_price_range.jinja b/backend/templates/email/text/partials/reservation_price_range.jinja similarity index 100% rename from templates/email/text/partials/reservation_price_range.jinja rename to backend/templates/email/text/partials/reservation_price_range.jinja diff --git a/templates/email/text/permission_deactivation.jinja b/backend/templates/email/text/permission_deactivation.jinja similarity index 100% rename from templates/email/text/permission_deactivation.jinja rename to backend/templates/email/text/permission_deactivation.jinja diff --git a/templates/email/text/reservation_approved.jinja b/backend/templates/email/text/reservation_approved.jinja similarity index 100% rename from templates/email/text/reservation_approved.jinja rename to backend/templates/email/text/reservation_approved.jinja diff --git a/templates/email/text/reservation_cancelled.jinja b/backend/templates/email/text/reservation_cancelled.jinja similarity index 100% rename from templates/email/text/reservation_cancelled.jinja rename to backend/templates/email/text/reservation_cancelled.jinja diff --git a/templates/email/text/reservation_confirmed.jinja b/backend/templates/email/text/reservation_confirmed.jinja similarity index 100% rename from templates/email/text/reservation_confirmed.jinja rename to backend/templates/email/text/reservation_confirmed.jinja diff --git a/templates/email/text/reservation_modified.jinja b/backend/templates/email/text/reservation_modified.jinja similarity index 100% rename from templates/email/text/reservation_modified.jinja rename to backend/templates/email/text/reservation_modified.jinja diff --git a/templates/email/text/reservation_rejected.jinja b/backend/templates/email/text/reservation_rejected.jinja similarity index 100% rename from templates/email/text/reservation_rejected.jinja rename to backend/templates/email/text/reservation_rejected.jinja diff --git a/templates/email/text/reservation_requires_handling.jinja b/backend/templates/email/text/reservation_requires_handling.jinja similarity index 100% rename from templates/email/text/reservation_requires_handling.jinja rename to backend/templates/email/text/reservation_requires_handling.jinja diff --git a/templates/email/text/reservation_requires_payment.jinja b/backend/templates/email/text/reservation_requires_payment.jinja similarity index 100% rename from templates/email/text/reservation_requires_payment.jinja rename to backend/templates/email/text/reservation_requires_payment.jinja diff --git a/templates/email/text/seasonal_reservation_cancelled_single.jinja b/backend/templates/email/text/seasonal_reservation_cancelled_single.jinja similarity index 100% rename from templates/email/text/seasonal_reservation_cancelled_single.jinja rename to backend/templates/email/text/seasonal_reservation_cancelled_single.jinja diff --git a/templates/email/text/seasonal_reservation_modified_series.jinja b/backend/templates/email/text/seasonal_reservation_modified_series.jinja similarity index 100% rename from templates/email/text/seasonal_reservation_modified_series.jinja rename to backend/templates/email/text/seasonal_reservation_modified_series.jinja diff --git a/templates/email/text/seasonal_reservation_modified_single.jinja b/backend/templates/email/text/seasonal_reservation_modified_single.jinja similarity index 100% rename from templates/email/text/seasonal_reservation_modified_single.jinja rename to backend/templates/email/text/seasonal_reservation_modified_single.jinja diff --git a/templates/email/text/seasonal_reservation_rejected_series.jinja b/backend/templates/email/text/seasonal_reservation_rejected_series.jinja similarity index 100% rename from templates/email/text/seasonal_reservation_rejected_series.jinja rename to backend/templates/email/text/seasonal_reservation_rejected_series.jinja diff --git a/templates/email/text/seasonal_reservation_rejected_single.jinja b/backend/templates/email/text/seasonal_reservation_rejected_single.jinja similarity index 100% rename from templates/email/text/seasonal_reservation_rejected_single.jinja rename to backend/templates/email/text/seasonal_reservation_rejected_single.jinja diff --git a/templates/email/text/staff_notification_application_section_cancelled.jinja b/backend/templates/email/text/staff_notification_application_section_cancelled.jinja similarity index 100% rename from templates/email/text/staff_notification_application_section_cancelled.jinja rename to backend/templates/email/text/staff_notification_application_section_cancelled.jinja diff --git a/templates/email/text/staff_notification_reservation_made.jinja b/backend/templates/email/text/staff_notification_reservation_made.jinja similarity index 100% rename from templates/email/text/staff_notification_reservation_made.jinja rename to backend/templates/email/text/staff_notification_reservation_made.jinja diff --git a/templates/email/text/staff_notification_reservation_requires_handling.jinja b/backend/templates/email/text/staff_notification_reservation_requires_handling.jinja similarity index 100% rename from templates/email/text/staff_notification_reservation_requires_handling.jinja rename to backend/templates/email/text/staff_notification_reservation_requires_handling.jinja diff --git a/templates/email/text/user_anonymization.jinja b/backend/templates/email/text/user_anonymization.jinja similarity index 100% rename from templates/email/text/user_anonymization.jinja rename to backend/templates/email/text/user_anonymization.jinja diff --git a/templates/mock_verkkokauppa/index.html b/backend/templates/mock_verkkokauppa/index.html similarity index 100% rename from templates/mock_verkkokauppa/index.html rename to backend/templates/mock_verkkokauppa/index.html diff --git a/templates/terms_of_use/booking_terms.jinja b/backend/templates/terms_of_use/booking_terms.jinja similarity index 100% rename from templates/terms_of_use/booking_terms.jinja rename to backend/templates/terms_of_use/booking_terms.jinja diff --git a/templates/terms_of_use/components/base.jinja b/backend/templates/terms_of_use/components/base.jinja similarity index 100% rename from templates/terms_of_use/components/base.jinja rename to backend/templates/terms_of_use/components/base.jinja diff --git a/tests/__init__.py b/backend/tests/__init__.py similarity index 100% rename from tests/__init__.py rename to backend/tests/__init__.py diff --git a/tests/conftest.py b/backend/tests/conftest.py similarity index 100% rename from tests/conftest.py rename to backend/tests/conftest.py diff --git a/tests/factories/__init__.py b/backend/tests/factories/__init__.py similarity index 100% rename from tests/factories/__init__.py rename to backend/tests/factories/__init__.py diff --git a/tests/factories/_base.py b/backend/tests/factories/_base.py similarity index 100% rename from tests/factories/_base.py rename to backend/tests/factories/_base.py diff --git a/tests/factories/_typing.py b/backend/tests/factories/_typing.py similarity index 100% rename from tests/factories/_typing.py rename to backend/tests/factories/_typing.py diff --git a/tests/factories/ability_group.py b/backend/tests/factories/ability_group.py similarity index 100% rename from tests/factories/ability_group.py rename to backend/tests/factories/ability_group.py diff --git a/tests/factories/address.py b/backend/tests/factories/address.py similarity index 100% rename from tests/factories/address.py rename to backend/tests/factories/address.py diff --git a/tests/factories/age_group.py b/backend/tests/factories/age_group.py similarity index 100% rename from tests/factories/age_group.py rename to backend/tests/factories/age_group.py diff --git a/tests/factories/allocated_time_slot.py b/backend/tests/factories/allocated_time_slot.py similarity index 100% rename from tests/factories/allocated_time_slot.py rename to backend/tests/factories/allocated_time_slot.py diff --git a/tests/factories/application.py b/backend/tests/factories/application.py similarity index 100% rename from tests/factories/application.py rename to backend/tests/factories/application.py diff --git a/tests/factories/application_round.py b/backend/tests/factories/application_round.py similarity index 100% rename from tests/factories/application_round.py rename to backend/tests/factories/application_round.py diff --git a/tests/factories/application_round_time_slot.py b/backend/tests/factories/application_round_time_slot.py similarity index 100% rename from tests/factories/application_round_time_slot.py rename to backend/tests/factories/application_round_time_slot.py diff --git a/tests/factories/application_section.py b/backend/tests/factories/application_section.py similarity index 100% rename from tests/factories/application_section.py rename to backend/tests/factories/application_section.py diff --git a/tests/factories/banner_notification.py b/backend/tests/factories/banner_notification.py similarity index 100% rename from tests/factories/banner_notification.py rename to backend/tests/factories/banner_notification.py diff --git a/tests/factories/city.py b/backend/tests/factories/city.py similarity index 100% rename from tests/factories/city.py rename to backend/tests/factories/city.py diff --git a/tests/factories/equipment.py b/backend/tests/factories/equipment.py similarity index 100% rename from tests/factories/equipment.py rename to backend/tests/factories/equipment.py diff --git a/tests/factories/equipment_category.py b/backend/tests/factories/equipment_category.py similarity index 100% rename from tests/factories/equipment_category.py rename to backend/tests/factories/equipment_category.py diff --git a/tests/factories/general_role.py b/backend/tests/factories/general_role.py similarity index 100% rename from tests/factories/general_role.py rename to backend/tests/factories/general_role.py diff --git a/tests/factories/helsinki_profile.py b/backend/tests/factories/helsinki_profile.py similarity index 100% rename from tests/factories/helsinki_profile.py rename to backend/tests/factories/helsinki_profile.py diff --git a/tests/factories/location.py b/backend/tests/factories/location.py similarity index 100% rename from tests/factories/location.py rename to backend/tests/factories/location.py diff --git a/tests/factories/organisation.py b/backend/tests/factories/organisation.py similarity index 100% rename from tests/factories/organisation.py rename to backend/tests/factories/organisation.py diff --git a/tests/factories/origin_hauki_resource.py b/backend/tests/factories/origin_hauki_resource.py similarity index 100% rename from tests/factories/origin_hauki_resource.py rename to backend/tests/factories/origin_hauki_resource.py diff --git a/tests/factories/payment_accounting.py b/backend/tests/factories/payment_accounting.py similarity index 100% rename from tests/factories/payment_accounting.py rename to backend/tests/factories/payment_accounting.py diff --git a/tests/factories/payment_merchant.py b/backend/tests/factories/payment_merchant.py similarity index 100% rename from tests/factories/payment_merchant.py rename to backend/tests/factories/payment_merchant.py diff --git a/tests/factories/payment_order.py b/backend/tests/factories/payment_order.py similarity index 100% rename from tests/factories/payment_order.py rename to backend/tests/factories/payment_order.py diff --git a/tests/factories/payment_product.py b/backend/tests/factories/payment_product.py similarity index 100% rename from tests/factories/payment_product.py rename to backend/tests/factories/payment_product.py diff --git a/tests/factories/person.py b/backend/tests/factories/person.py similarity index 100% rename from tests/factories/person.py rename to backend/tests/factories/person.py diff --git a/tests/factories/providers/__init__.py b/backend/tests/factories/providers/__init__.py similarity index 100% rename from tests/factories/providers/__init__.py rename to backend/tests/factories/providers/__init__.py diff --git a/tests/factories/providers/html/__init__.py b/backend/tests/factories/providers/html/__init__.py similarity index 100% rename from tests/factories/providers/html/__init__.py rename to backend/tests/factories/providers/html/__init__.py diff --git a/tests/factories/providers/html/en_US/__init__.py b/backend/tests/factories/providers/html/en_US/__init__.py similarity index 100% rename from tests/factories/providers/html/en_US/__init__.py rename to backend/tests/factories/providers/html/en_US/__init__.py diff --git a/tests/factories/providers/html/fi_FI/__init__.py b/backend/tests/factories/providers/html/fi_FI/__init__.py similarity index 100% rename from tests/factories/providers/html/fi_FI/__init__.py rename to backend/tests/factories/providers/html/fi_FI/__init__.py diff --git a/tests/factories/providers/html/sv_SE/__init__.py b/backend/tests/factories/providers/html/sv_SE/__init__.py similarity index 100% rename from tests/factories/providers/html/sv_SE/__init__.py rename to backend/tests/factories/providers/html/sv_SE/__init__.py diff --git a/tests/factories/purpose.py b/backend/tests/factories/purpose.py similarity index 100% rename from tests/factories/purpose.py rename to backend/tests/factories/purpose.py diff --git a/tests/factories/qualifier.py b/backend/tests/factories/qualifier.py similarity index 100% rename from tests/factories/qualifier.py rename to backend/tests/factories/qualifier.py diff --git a/tests/factories/recurring_reservation.py b/backend/tests/factories/recurring_reservation.py similarity index 100% rename from tests/factories/recurring_reservation.py rename to backend/tests/factories/recurring_reservation.py diff --git a/tests/factories/rejected_occurrence.py b/backend/tests/factories/rejected_occurrence.py similarity index 100% rename from tests/factories/rejected_occurrence.py rename to backend/tests/factories/rejected_occurrence.py diff --git a/tests/factories/reservable_time_span.py b/backend/tests/factories/reservable_time_span.py similarity index 100% rename from tests/factories/reservable_time_span.py rename to backend/tests/factories/reservable_time_span.py diff --git a/tests/factories/reservation.py b/backend/tests/factories/reservation.py similarity index 100% rename from tests/factories/reservation.py rename to backend/tests/factories/reservation.py diff --git a/tests/factories/reservation_cancel_reason.py b/backend/tests/factories/reservation_cancel_reason.py similarity index 100% rename from tests/factories/reservation_cancel_reason.py rename to backend/tests/factories/reservation_cancel_reason.py diff --git a/tests/factories/reservation_deny_reason.py b/backend/tests/factories/reservation_deny_reason.py similarity index 100% rename from tests/factories/reservation_deny_reason.py rename to backend/tests/factories/reservation_deny_reason.py diff --git a/tests/factories/reservation_metadata_field.py b/backend/tests/factories/reservation_metadata_field.py similarity index 100% rename from tests/factories/reservation_metadata_field.py rename to backend/tests/factories/reservation_metadata_field.py diff --git a/tests/factories/reservation_metadata_set.py b/backend/tests/factories/reservation_metadata_set.py similarity index 100% rename from tests/factories/reservation_metadata_set.py rename to backend/tests/factories/reservation_metadata_set.py diff --git a/tests/factories/reservation_purpose.py b/backend/tests/factories/reservation_purpose.py similarity index 100% rename from tests/factories/reservation_purpose.py rename to backend/tests/factories/reservation_purpose.py diff --git a/tests/factories/reservation_unit.py b/backend/tests/factories/reservation_unit.py similarity index 100% rename from tests/factories/reservation_unit.py rename to backend/tests/factories/reservation_unit.py diff --git a/tests/factories/reservation_unit_cancellation_rule.py b/backend/tests/factories/reservation_unit_cancellation_rule.py similarity index 100% rename from tests/factories/reservation_unit_cancellation_rule.py rename to backend/tests/factories/reservation_unit_cancellation_rule.py diff --git a/tests/factories/reservation_unit_image.py b/backend/tests/factories/reservation_unit_image.py similarity index 100% rename from tests/factories/reservation_unit_image.py rename to backend/tests/factories/reservation_unit_image.py diff --git a/tests/factories/reservation_unit_option.py b/backend/tests/factories/reservation_unit_option.py similarity index 100% rename from tests/factories/reservation_unit_option.py rename to backend/tests/factories/reservation_unit_option.py diff --git a/tests/factories/reservation_unit_payment_type.py b/backend/tests/factories/reservation_unit_payment_type.py similarity index 100% rename from tests/factories/reservation_unit_payment_type.py rename to backend/tests/factories/reservation_unit_payment_type.py diff --git a/tests/factories/reservation_unit_pricing.py b/backend/tests/factories/reservation_unit_pricing.py similarity index 100% rename from tests/factories/reservation_unit_pricing.py rename to backend/tests/factories/reservation_unit_pricing.py diff --git a/tests/factories/reservation_unit_type.py b/backend/tests/factories/reservation_unit_type.py similarity index 100% rename from tests/factories/reservation_unit_type.py rename to backend/tests/factories/reservation_unit_type.py diff --git a/tests/factories/resource.py b/backend/tests/factories/resource.py similarity index 100% rename from tests/factories/resource.py rename to backend/tests/factories/resource.py diff --git a/tests/factories/space.py b/backend/tests/factories/space.py similarity index 100% rename from tests/factories/space.py rename to backend/tests/factories/space.py diff --git a/tests/factories/suitable_time_range.py b/backend/tests/factories/suitable_time_range.py similarity index 100% rename from tests/factories/suitable_time_range.py rename to backend/tests/factories/suitable_time_range.py diff --git a/tests/factories/tax_percentage.py b/backend/tests/factories/tax_percentage.py similarity index 100% rename from tests/factories/tax_percentage.py rename to backend/tests/factories/tax_percentage.py diff --git a/tests/factories/terms_of_use.py b/backend/tests/factories/terms_of_use.py similarity index 100% rename from tests/factories/terms_of_use.py rename to backend/tests/factories/terms_of_use.py diff --git a/tests/factories/unit.py b/backend/tests/factories/unit.py similarity index 100% rename from tests/factories/unit.py rename to backend/tests/factories/unit.py diff --git a/tests/factories/unit_group.py b/backend/tests/factories/unit_group.py similarity index 100% rename from tests/factories/unit_group.py rename to backend/tests/factories/unit_group.py diff --git a/tests/factories/unit_role.py b/backend/tests/factories/unit_role.py similarity index 100% rename from tests/factories/unit_role.py rename to backend/tests/factories/unit_role.py diff --git a/tests/factories/user.py b/backend/tests/factories/user.py similarity index 100% rename from tests/factories/user.py rename to backend/tests/factories/user.py diff --git a/tests/factories/verkkokauppa.py b/backend/tests/factories/verkkokauppa.py similarity index 100% rename from tests/factories/verkkokauppa.py rename to backend/tests/factories/verkkokauppa.py diff --git a/tests/helpers.py b/backend/tests/helpers.py similarity index 100% rename from tests/helpers.py rename to backend/tests/helpers.py diff --git a/tests/plugins.py b/backend/tests/plugins.py similarity index 100% rename from tests/plugins.py rename to backend/tests/plugins.py diff --git a/tests/test_actions/__init__.py b/backend/tests/test_actions/__init__.py similarity index 100% rename from tests/test_actions/__init__.py rename to backend/tests/test_actions/__init__.py diff --git a/tests/test_actions/test_anonymization.py b/backend/tests/test_actions/test_anonymization.py similarity index 100% rename from tests/test_actions/test_anonymization.py rename to backend/tests/test_actions/test_anonymization.py diff --git a/tests/test_actions/test_application_round_actions.py b/backend/tests/test_actions/test_application_round_actions.py similarity index 100% rename from tests/test_actions/test_application_round_actions.py rename to backend/tests/test_actions/test_application_round_actions.py diff --git a/tests/test_actions/test_pricing_calculation.py b/backend/tests/test_actions/test_pricing_calculation.py similarity index 100% rename from tests/test_actions/test_pricing_calculation.py rename to backend/tests/test_actions/test_pricing_calculation.py diff --git a/tests/test_actions/test_reservation_unit_actions/__init__.py b/backend/tests/test_actions/test_reservation_unit_actions/__init__.py similarity index 100% rename from tests/test_actions/test_reservation_unit_actions/__init__.py rename to backend/tests/test_actions/test_reservation_unit_actions/__init__.py diff --git a/tests/test_actions/test_reservation_unit_actions/test_actions_get_next_reservation.py b/backend/tests/test_actions/test_reservation_unit_actions/test_actions_get_next_reservation.py similarity index 100% rename from tests/test_actions/test_reservation_unit_actions/test_actions_get_next_reservation.py rename to backend/tests/test_actions/test_reservation_unit_actions/test_actions_get_next_reservation.py diff --git a/tests/test_actions/test_reservation_unit_actions/test_check_reservation_overlap.py b/backend/tests/test_actions/test_reservation_unit_actions/test_check_reservation_overlap.py similarity index 100% rename from tests/test_actions/test_reservation_unit_actions/test_check_reservation_overlap.py rename to backend/tests/test_actions/test_reservation_unit_actions/test_check_reservation_overlap.py diff --git a/tests/test_actions/test_reservation_unit_actions/test_hauki_exporter.py b/backend/tests/test_actions/test_reservation_unit_actions/test_hauki_exporter.py similarity index 100% rename from tests/test_actions/test_reservation_unit_actions/test_hauki_exporter.py rename to backend/tests/test_actions/test_reservation_unit_actions/test_hauki_exporter.py diff --git a/tests/test_actions/test_reservation_unit_actions/test_method_of_entry_at.py b/backend/tests/test_actions/test_reservation_unit_actions/test_method_of_entry_at.py similarity index 100% rename from tests/test_actions/test_reservation_unit_actions/test_method_of_entry_at.py rename to backend/tests/test_actions/test_reservation_unit_actions/test_method_of_entry_at.py diff --git a/tests/test_actions/test_reservation_unit_actions/test_unit_get_previous_reservation.py b/backend/tests/test_actions/test_reservation_unit_actions/test_unit_get_previous_reservation.py similarity index 100% rename from tests/test_actions/test_reservation_unit_actions/test_unit_get_previous_reservation.py rename to backend/tests/test_actions/test_reservation_unit_actions/test_unit_get_previous_reservation.py diff --git a/tests/test_actions/test_user_actions.py b/backend/tests/test_actions/test_user_actions.py similarity index 100% rename from tests/test_actions/test_user_actions.py rename to backend/tests/test_actions/test_user_actions.py diff --git a/tests/test_admin/__init__.py b/backend/tests/test_admin/__init__.py similarity index 100% rename from tests/test_admin/__init__.py rename to backend/tests/test_admin/__init__.py diff --git a/tests/test_admin/test_django_admin_site.py b/backend/tests/test_admin/test_django_admin_site.py similarity index 100% rename from tests/test_admin/test_django_admin_site.py rename to backend/tests/test_admin/test_django_admin_site.py diff --git a/tests/test_admin/test_reservation_unit_admin_autocomplete.py b/backend/tests/test_admin/test_reservation_unit_admin_autocomplete.py similarity index 100% rename from tests/test_admin/test_reservation_unit_admin_autocomplete.py rename to backend/tests/test_admin/test_reservation_unit_admin_autocomplete.py diff --git a/tests/test_admin/test_reservation_unit_admin_terms.py b/backend/tests/test_admin/test_reservation_unit_admin_terms.py similarity index 100% rename from tests/test_admin/test_reservation_unit_admin_terms.py rename to backend/tests/test_admin/test_reservation_unit_admin_terms.py diff --git a/tests/test_csv_exporters/__init__.py b/backend/tests/test_csv_exporters/__init__.py similarity index 100% rename from tests/test_csv_exporters/__init__.py rename to backend/tests/test_csv_exporters/__init__.py diff --git a/tests/test_csv_exporters/helpers.py b/backend/tests/test_csv_exporters/helpers.py similarity index 100% rename from tests/test_csv_exporters/helpers.py rename to backend/tests/test_csv_exporters/helpers.py diff --git a/tests/test_csv_exporters/test_application_round_applications_export.py b/backend/tests/test_csv_exporters/test_application_round_applications_export.py similarity index 100% rename from tests/test_csv_exporters/test_application_round_applications_export.py rename to backend/tests/test_csv_exporters/test_application_round_applications_export.py diff --git a/tests/test_csv_exporters/test_application_round_results_export.py b/backend/tests/test_csv_exporters/test_application_round_results_export.py similarity index 100% rename from tests/test_csv_exporters/test_application_round_results_export.py rename to backend/tests/test_csv_exporters/test_application_round_results_export.py diff --git a/tests/test_csv_exporters/test_reservation_unit_export.py b/backend/tests/test_csv_exporters/test_reservation_unit_export.py similarity index 100% rename from tests/test_csv_exporters/test_reservation_unit_export.py rename to backend/tests/test_csv_exporters/test_reservation_unit_export.py diff --git a/tests/test_external_services/__init__.py b/backend/tests/test_external_services/__init__.py similarity index 100% rename from tests/test_external_services/__init__.py rename to backend/tests/test_external_services/__init__.py diff --git a/tests/test_external_services/test_hauki/__init__.py b/backend/tests/test_external_services/test_hauki/__init__.py similarity index 100% rename from tests/test_external_services/test_hauki/__init__.py rename to backend/tests/test_external_services/test_hauki/__init__.py diff --git a/tests/test_external_services/test_hauki/conftest.py b/backend/tests/test_external_services/test_hauki/conftest.py similarity index 100% rename from tests/test_external_services/test_hauki/conftest.py rename to backend/tests/test_external_services/test_hauki/conftest.py diff --git a/tests/test_external_services/test_hauki/test_hauki_link_generator.py b/backend/tests/test_external_services/test_hauki/test_hauki_link_generator.py similarity index 100% rename from tests/test_external_services/test_hauki/test_hauki_link_generator.py rename to backend/tests/test_external_services/test_hauki/test_hauki_link_generator.py diff --git a/tests/test_external_services/test_hauki/test_hauki_resource_hash_updater.py b/backend/tests/test_external_services/test_hauki/test_hauki_resource_hash_updater.py similarity index 100% rename from tests/test_external_services/test_hauki/test_hauki_resource_hash_updater.py rename to backend/tests/test_external_services/test_hauki/test_hauki_resource_hash_updater.py diff --git a/tests/test_external_services/test_hauki/test_merge_overlapping_time_span_elements.py b/backend/tests/test_external_services/test_hauki/test_merge_overlapping_time_span_elements.py similarity index 100% rename from tests/test_external_services/test_hauki/test_merge_overlapping_time_span_elements.py rename to backend/tests/test_external_services/test_hauki/test_merge_overlapping_time_span_elements.py diff --git a/tests/test_external_services/test_hauki/test_override_reservable_with_closed_time_spans.py b/backend/tests/test_external_services/test_hauki/test_override_reservable_with_closed_time_spans.py similarity index 100% rename from tests/test_external_services/test_hauki/test_override_reservable_with_closed_time_spans.py rename to backend/tests/test_external_services/test_hauki/test_override_reservable_with_closed_time_spans.py diff --git a/tests/test_external_services/test_hauki/test_reservable_time_spans_client.py b/backend/tests/test_external_services/test_hauki/test_reservable_time_spans_client.py similarity index 100% rename from tests/test_external_services/test_hauki/test_reservable_time_spans_client.py rename to backend/tests/test_external_services/test_hauki/test_reservable_time_spans_client.py diff --git a/tests/test_external_services/test_hauki/test_summaries.py b/backend/tests/test_external_services/test_hauki/test_summaries.py similarity index 100% rename from tests/test_external_services/test_hauki/test_summaries.py rename to backend/tests/test_external_services/test_hauki/test_summaries.py diff --git a/tests/test_external_services/test_hauki/test_time_span_element.py b/backend/tests/test_external_services/test_hauki/test_time_span_element.py similarity index 100% rename from tests/test_external_services/test_hauki/test_time_span_element.py rename to backend/tests/test_external_services/test_hauki/test_time_span_element.py diff --git a/tests/test_external_services/test_tprek/__init__.py b/backend/tests/test_external_services/test_tprek/__init__.py similarity index 100% rename from tests/test_external_services/test_tprek/__init__.py rename to backend/tests/test_external_services/test_tprek/__init__.py diff --git a/tests/test_external_services/test_tprek/helpers.py b/backend/tests/test_external_services/test_tprek/helpers.py similarity index 100% rename from tests/test_external_services/test_tprek/helpers.py rename to backend/tests/test_external_services/test_tprek/helpers.py diff --git a/tests/test_external_services/test_tprek/test_tprek_api_client.py b/backend/tests/test_external_services/test_tprek/test_tprek_api_client.py similarity index 100% rename from tests/test_external_services/test_tprek/test_tprek_api_client.py rename to backend/tests/test_external_services/test_tprek/test_tprek_api_client.py diff --git a/tests/test_external_services/test_tprek/test_tprek_unit_hauki_resource_importer.py b/backend/tests/test_external_services/test_tprek/test_tprek_unit_hauki_resource_importer.py similarity index 100% rename from tests/test_external_services/test_tprek/test_tprek_unit_hauki_resource_importer.py rename to backend/tests/test_external_services/test_tprek/test_tprek_unit_hauki_resource_importer.py diff --git a/tests/test_external_services/test_tprek/test_tprek_unit_importer.py b/backend/tests/test_external_services/test_tprek/test_tprek_unit_importer.py similarity index 100% rename from tests/test_external_services/test_tprek/test_tprek_unit_importer.py rename to backend/tests/test_external_services/test_tprek/test_tprek_unit_importer.py diff --git a/tests/test_external_services/test_verkkokauppa/__init__.py b/backend/tests/test_external_services/test_verkkokauppa/__init__.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/__init__.py rename to backend/tests/test_external_services/test_verkkokauppa/__init__.py diff --git a/tests/test_external_services/test_verkkokauppa/test_create_order_params.py b/backend/tests/test_external_services/test_verkkokauppa/test_create_order_params.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_create_order_params.py rename to backend/tests/test_external_services/test_verkkokauppa/test_create_order_params.py diff --git a/tests/test_external_services/test_verkkokauppa/test_helpers.py b/backend/tests/test_external_services/test_verkkokauppa/test_helpers.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_helpers.py rename to backend/tests/test_external_services/test_verkkokauppa/test_helpers.py diff --git a/tests/test_external_services/test_verkkokauppa/test_merchant_requests.py b/backend/tests/test_external_services/test_verkkokauppa/test_merchant_requests.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_merchant_requests.py rename to backend/tests/test_external_services/test_verkkokauppa/test_merchant_requests.py diff --git a/tests/test_external_services/test_verkkokauppa/test_merchant_types.py b/backend/tests/test_external_services/test_verkkokauppa/test_merchant_types.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_merchant_types.py rename to backend/tests/test_external_services/test_verkkokauppa/test_merchant_types.py diff --git a/tests/test_external_services/test_verkkokauppa/test_order_from_json.py b/backend/tests/test_external_services/test_verkkokauppa/test_order_from_json.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_order_from_json.py rename to backend/tests/test_external_services/test_verkkokauppa/test_order_from_json.py diff --git a/tests/test_external_services/test_verkkokauppa/test_order_requests.py b/backend/tests/test_external_services/test_verkkokauppa/test_order_requests.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_order_requests.py rename to backend/tests/test_external_services/test_verkkokauppa/test_order_requests.py diff --git a/tests/test_external_services/test_verkkokauppa/test_order_types.py b/backend/tests/test_external_services/test_verkkokauppa/test_order_types.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_order_types.py rename to backend/tests/test_external_services/test_verkkokauppa/test_order_types.py diff --git a/tests/test_external_services/test_verkkokauppa/test_payment_requests.py b/backend/tests/test_external_services/test_verkkokauppa/test_payment_requests.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_payment_requests.py rename to backend/tests/test_external_services/test_verkkokauppa/test_payment_requests.py diff --git a/tests/test_external_services/test_verkkokauppa/test_payment_types.py b/backend/tests/test_external_services/test_verkkokauppa/test_payment_types.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_payment_types.py rename to backend/tests/test_external_services/test_verkkokauppa/test_payment_types.py diff --git a/tests/test_external_services/test_verkkokauppa/test_product_requests.py b/backend/tests/test_external_services/test_verkkokauppa/test_product_requests.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_product_requests.py rename to backend/tests/test_external_services/test_verkkokauppa/test_product_requests.py diff --git a/tests/test_external_services/test_verkkokauppa/test_product_types.py b/backend/tests/test_external_services/test_verkkokauppa/test_product_types.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_product_types.py rename to backend/tests/test_external_services/test_verkkokauppa/test_product_types.py diff --git a/tests/test_external_services/test_verkkokauppa/test_pruning.py b/backend/tests/test_external_services/test_verkkokauppa/test_pruning.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_pruning.py rename to backend/tests/test_external_services/test_verkkokauppa/test_pruning.py diff --git a/tests/test_external_services/test_verkkokauppa/test_refund_from_json.py b/backend/tests/test_external_services/test_verkkokauppa/test_refund_from_json.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_refund_from_json.py rename to backend/tests/test_external_services/test_verkkokauppa/test_refund_from_json.py diff --git a/tests/test_external_services/test_verkkokauppa/test_refund_status_from_json.py b/backend/tests/test_external_services/test_verkkokauppa/test_refund_status_from_json.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_refund_status_from_json.py rename to backend/tests/test_external_services/test_verkkokauppa/test_refund_status_from_json.py diff --git a/tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_accounting.py b/backend/tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_accounting.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_accounting.py rename to backend/tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_accounting.py diff --git a/tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_product_mapping.py b/backend/tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_product_mapping.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_product_mapping.py rename to backend/tests/test_external_services/test_verkkokauppa/test_task_refresh_reservation_unit_product_mapping.py diff --git a/tests/test_external_services/test_verkkokauppa/test_tasks.py b/backend/tests/test_external_services/test_verkkokauppa/test_tasks.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_tasks.py rename to backend/tests/test_external_services/test_verkkokauppa/test_tasks.py diff --git a/tests/test_external_services/test_verkkokauppa/test_validators.py b/backend/tests/test_external_services/test_verkkokauppa/test_validators.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_validators.py rename to backend/tests/test_external_services/test_verkkokauppa/test_validators.py diff --git a/tests/test_external_services/test_verkkokauppa/test_webhooks/__init__.py b/backend/tests/test_external_services/test_verkkokauppa/test_webhooks/__init__.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_webhooks/__init__.py rename to backend/tests/test_external_services/test_verkkokauppa/test_webhooks/__init__.py diff --git a/tests/test_external_services/test_verkkokauppa/test_webhooks/helpers.py b/backend/tests/test_external_services/test_verkkokauppa/test_webhooks/helpers.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_webhooks/helpers.py rename to backend/tests/test_external_services/test_verkkokauppa/test_webhooks/helpers.py diff --git a/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_cancel_webhooks.py b/backend/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_cancel_webhooks.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_cancel_webhooks.py rename to backend/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_cancel_webhooks.py diff --git a/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_payment_webhooks.py b/backend/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_payment_webhooks.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_payment_webhooks.py rename to backend/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_payment_webhooks.py diff --git a/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_refund_webhooks.py b/backend/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_refund_webhooks.py similarity index 100% rename from tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_refund_webhooks.py rename to backend/tests/test_external_services/test_verkkokauppa/test_webhooks/test_order_refund_webhooks.py diff --git a/tests/test_factories/__init__.py b/backend/tests/test_factories/__init__.py similarity index 100% rename from tests/test_factories/__init__.py rename to backend/tests/test_factories/__init__.py diff --git a/tests/test_factories/test_application.py b/backend/tests/test_factories/test_application.py similarity index 100% rename from tests/test_factories/test_application.py rename to backend/tests/test_factories/test_application.py diff --git a/tests/test_factories/test_application_round.py b/backend/tests/test_factories/test_application_round.py similarity index 100% rename from tests/test_factories/test_application_round.py rename to backend/tests/test_factories/test_application_round.py diff --git a/tests/test_factories/test_application_section.py b/backend/tests/test_factories/test_application_section.py similarity index 100% rename from tests/test_factories/test_application_section.py rename to backend/tests/test_factories/test_application_section.py diff --git a/tests/test_frontend_testing_api/__init__.py b/backend/tests/test_frontend_testing_api/__init__.py similarity index 100% rename from tests/test_frontend_testing_api/__init__.py rename to backend/tests/test_frontend_testing_api/__init__.py diff --git a/tests/test_frontend_testing_api/test_reservation.py b/backend/tests/test_frontend_testing_api/test_reservation.py similarity index 100% rename from tests/test_frontend_testing_api/test_reservation.py rename to backend/tests/test_frontend_testing_api/test_reservation.py diff --git a/tests/test_gdpr_api/__init__.py b/backend/tests/test_gdpr_api/__init__.py similarity index 100% rename from tests/test_gdpr_api/__init__.py rename to backend/tests/test_gdpr_api/__init__.py diff --git a/tests/test_gdpr_api/helpers.py b/backend/tests/test_gdpr_api/helpers.py similarity index 100% rename from tests/test_gdpr_api/helpers.py rename to backend/tests/test_gdpr_api/helpers.py diff --git a/tests/test_gdpr_api/test_gdpr_api.py b/backend/tests/test_gdpr_api/test_gdpr_api.py similarity index 100% rename from tests/test_gdpr_api/test_gdpr_api.py rename to backend/tests/test_gdpr_api/test_gdpr_api.py diff --git a/tests/test_graphql_api/__init__.py b/backend/tests/test_graphql_api/__init__.py similarity index 100% rename from tests/test_graphql_api/__init__.py rename to backend/tests/test_graphql_api/__init__.py diff --git a/tests/test_graphql_api/test_age_group/__init__.py b/backend/tests/test_graphql_api/test_age_group/__init__.py similarity index 100% rename from tests/test_graphql_api/test_age_group/__init__.py rename to backend/tests/test_graphql_api/test_age_group/__init__.py diff --git a/tests/test_graphql_api/test_age_group/test_query.py b/backend/tests/test_graphql_api/test_age_group/test_query.py similarity index 100% rename from tests/test_graphql_api/test_age_group/test_query.py rename to backend/tests/test_graphql_api/test_age_group/test_query.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/__init__.py b/backend/tests/test_graphql_api/test_allocated_time_slot/__init__.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/__init__.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/__init__.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/helpers.py b/backend/tests/test_graphql_api/test_allocated_time_slot/helpers.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/helpers.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/helpers.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_create.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_create.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_create.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_create.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_create_permissions.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_create_permissions.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_create_permissions.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_delete.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_delete.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_delete.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_delete_permissions.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_filtering.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_filtering.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_filtering.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_ordering.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_ordering.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_ordering.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_ordering.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_query.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_query.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_query.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_query.py diff --git a/tests/test_graphql_api/test_allocated_time_slot/test_query_permissions.py b/backend/tests/test_graphql_api/test_allocated_time_slot/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_allocated_time_slot/test_query_permissions.py rename to backend/tests/test_graphql_api/test_allocated_time_slot/test_query_permissions.py diff --git a/tests/test_graphql_api/test_application/__init__.py b/backend/tests/test_graphql_api/test_application/__init__.py similarity index 100% rename from tests/test_graphql_api/test_application/__init__.py rename to backend/tests/test_graphql_api/test_application/__init__.py diff --git a/tests/test_graphql_api/test_application/helpers.py b/backend/tests/test_graphql_api/test_application/helpers.py similarity index 100% rename from tests/test_graphql_api/test_application/helpers.py rename to backend/tests/test_graphql_api/test_application/helpers.py diff --git a/tests/test_graphql_api/test_application/test_cancel.py b/backend/tests/test_graphql_api/test_application/test_cancel.py similarity index 100% rename from tests/test_graphql_api/test_application/test_cancel.py rename to backend/tests/test_graphql_api/test_application/test_cancel.py diff --git a/tests/test_graphql_api/test_application/test_cancel_permissions.py b/backend/tests/test_graphql_api/test_application/test_cancel_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application/test_cancel_permissions.py rename to backend/tests/test_graphql_api/test_application/test_cancel_permissions.py diff --git a/tests/test_graphql_api/test_application/test_create.py b/backend/tests/test_graphql_api/test_application/test_create.py similarity index 100% rename from tests/test_graphql_api/test_application/test_create.py rename to backend/tests/test_graphql_api/test_application/test_create.py diff --git a/tests/test_graphql_api/test_application/test_create_permissions.py b/backend/tests/test_graphql_api/test_application/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application/test_create_permissions.py rename to backend/tests/test_graphql_api/test_application/test_create_permissions.py diff --git a/tests/test_graphql_api/test_application/test_filtering.py b/backend/tests/test_graphql_api/test_application/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_application/test_filtering.py rename to backend/tests/test_graphql_api/test_application/test_filtering.py diff --git a/tests/test_graphql_api/test_application/test_ordering.py b/backend/tests/test_graphql_api/test_application/test_ordering.py similarity index 100% rename from tests/test_graphql_api/test_application/test_ordering.py rename to backend/tests/test_graphql_api/test_application/test_ordering.py diff --git a/tests/test_graphql_api/test_application/test_query.py b/backend/tests/test_graphql_api/test_application/test_query.py similarity index 100% rename from tests/test_graphql_api/test_application/test_query.py rename to backend/tests/test_graphql_api/test_application/test_query.py diff --git a/tests/test_graphql_api/test_application/test_query_permissions.py b/backend/tests/test_graphql_api/test_application/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application/test_query_permissions.py rename to backend/tests/test_graphql_api/test_application/test_query_permissions.py diff --git a/tests/test_graphql_api/test_application/test_reject_all_options.py b/backend/tests/test_graphql_api/test_application/test_reject_all_options.py similarity index 100% rename from tests/test_graphql_api/test_application/test_reject_all_options.py rename to backend/tests/test_graphql_api/test_application/test_reject_all_options.py diff --git a/tests/test_graphql_api/test_application/test_restore_all_options.py b/backend/tests/test_graphql_api/test_application/test_restore_all_options.py similarity index 100% rename from tests/test_graphql_api/test_application/test_restore_all_options.py rename to backend/tests/test_graphql_api/test_application/test_restore_all_options.py diff --git a/tests/test_graphql_api/test_application/test_send.py b/backend/tests/test_graphql_api/test_application/test_send.py similarity index 100% rename from tests/test_graphql_api/test_application/test_send.py rename to backend/tests/test_graphql_api/test_application/test_send.py diff --git a/tests/test_graphql_api/test_application/test_send_permissions.py b/backend/tests/test_graphql_api/test_application/test_send_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application/test_send_permissions.py rename to backend/tests/test_graphql_api/test_application/test_send_permissions.py diff --git a/tests/test_graphql_api/test_application/test_update.py b/backend/tests/test_graphql_api/test_application/test_update.py similarity index 100% rename from tests/test_graphql_api/test_application/test_update.py rename to backend/tests/test_graphql_api/test_application/test_update.py diff --git a/tests/test_graphql_api/test_application/test_update_permissions.py b/backend/tests/test_graphql_api/test_application/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application/test_update_permissions.py rename to backend/tests/test_graphql_api/test_application/test_update_permissions.py diff --git a/tests/test_graphql_api/test_application_round/__init__.py b/backend/tests/test_graphql_api/test_application_round/__init__.py similarity index 100% rename from tests/test_graphql_api/test_application_round/__init__.py rename to backend/tests/test_graphql_api/test_application_round/__init__.py diff --git a/tests/test_graphql_api/test_application_round/helpers.py b/backend/tests/test_graphql_api/test_application_round/helpers.py similarity index 100% rename from tests/test_graphql_api/test_application_round/helpers.py rename to backend/tests/test_graphql_api/test_application_round/helpers.py diff --git a/tests/test_graphql_api/test_application_round/test_filtering.py b/backend/tests/test_graphql_api/test_application_round/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_application_round/test_filtering.py rename to backend/tests/test_graphql_api/test_application_round/test_filtering.py diff --git a/tests/test_graphql_api/test_application_round/test_query.py b/backend/tests/test_graphql_api/test_application_round/test_query.py similarity index 100% rename from tests/test_graphql_api/test_application_round/test_query.py rename to backend/tests/test_graphql_api/test_application_round/test_query.py diff --git a/tests/test_graphql_api/test_application_round/test_set_handled.py b/backend/tests/test_graphql_api/test_application_round/test_set_handled.py similarity index 100% rename from tests/test_graphql_api/test_application_round/test_set_handled.py rename to backend/tests/test_graphql_api/test_application_round/test_set_handled.py diff --git a/tests/test_graphql_api/test_application_round/test_set_results_sent.py b/backend/tests/test_graphql_api/test_application_round/test_set_results_sent.py similarity index 100% rename from tests/test_graphql_api/test_application_round/test_set_results_sent.py rename to backend/tests/test_graphql_api/test_application_round/test_set_results_sent.py diff --git a/tests/test_graphql_api/test_application_section/__init__.py b/backend/tests/test_graphql_api/test_application_section/__init__.py similarity index 100% rename from tests/test_graphql_api/test_application_section/__init__.py rename to backend/tests/test_graphql_api/test_application_section/__init__.py diff --git a/tests/test_graphql_api/test_application_section/helpers.py b/backend/tests/test_graphql_api/test_application_section/helpers.py similarity index 100% rename from tests/test_graphql_api/test_application_section/helpers.py rename to backend/tests/test_graphql_api/test_application_section/helpers.py diff --git a/tests/test_graphql_api/test_application_section/test_create.py b/backend/tests/test_graphql_api/test_application_section/test_create.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_create.py rename to backend/tests/test_graphql_api/test_application_section/test_create.py diff --git a/tests/test_graphql_api/test_application_section/test_create_permissions.py b/backend/tests/test_graphql_api/test_application_section/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_create_permissions.py rename to backend/tests/test_graphql_api/test_application_section/test_create_permissions.py diff --git a/tests/test_graphql_api/test_application_section/test_delete.py b/backend/tests/test_graphql_api/test_application_section/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_delete.py rename to backend/tests/test_graphql_api/test_application_section/test_delete.py diff --git a/tests/test_graphql_api/test_application_section/test_delete_permissions.py b/backend/tests/test_graphql_api/test_application_section/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_application_section/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_application_section/test_filtering.py b/backend/tests/test_graphql_api/test_application_section/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_filtering.py rename to backend/tests/test_graphql_api/test_application_section/test_filtering.py diff --git a/tests/test_graphql_api/test_application_section/test_ordering.py b/backend/tests/test_graphql_api/test_application_section/test_ordering.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_ordering.py rename to backend/tests/test_graphql_api/test_application_section/test_ordering.py diff --git a/tests/test_graphql_api/test_application_section/test_query.py b/backend/tests/test_graphql_api/test_application_section/test_query.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_query.py rename to backend/tests/test_graphql_api/test_application_section/test_query.py diff --git a/tests/test_graphql_api/test_application_section/test_query_permissions.py b/backend/tests/test_graphql_api/test_application_section/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_query_permissions.py rename to backend/tests/test_graphql_api/test_application_section/test_query_permissions.py diff --git a/tests/test_graphql_api/test_application_section/test_reject_all_options.py b/backend/tests/test_graphql_api/test_application_section/test_reject_all_options.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_reject_all_options.py rename to backend/tests/test_graphql_api/test_application_section/test_reject_all_options.py diff --git a/tests/test_graphql_api/test_application_section/test_restore_all_options.py b/backend/tests/test_graphql_api/test_application_section/test_restore_all_options.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_restore_all_options.py rename to backend/tests/test_graphql_api/test_application_section/test_restore_all_options.py diff --git a/tests/test_graphql_api/test_application_section/test_update.py b/backend/tests/test_graphql_api/test_application_section/test_update.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_update.py rename to backend/tests/test_graphql_api/test_application_section/test_update.py diff --git a/tests/test_graphql_api/test_application_section/test_update_permissions.py b/backend/tests/test_graphql_api/test_application_section/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_application_section/test_update_permissions.py rename to backend/tests/test_graphql_api/test_application_section/test_update_permissions.py diff --git a/tests/test_graphql_api/test_banner_notification/__init__.py b/backend/tests/test_graphql_api/test_banner_notification/__init__.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/__init__.py rename to backend/tests/test_graphql_api/test_banner_notification/__init__.py diff --git a/tests/test_graphql_api/test_banner_notification/helpers.py b/backend/tests/test_graphql_api/test_banner_notification/helpers.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/helpers.py rename to backend/tests/test_graphql_api/test_banner_notification/helpers.py diff --git a/tests/test_graphql_api/test_banner_notification/test_constraints.py b/backend/tests/test_graphql_api/test_banner_notification/test_constraints.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_constraints.py rename to backend/tests/test_graphql_api/test_banner_notification/test_constraints.py diff --git a/tests/test_graphql_api/test_banner_notification/test_create.py b/backend/tests/test_graphql_api/test_banner_notification/test_create.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_create.py rename to backend/tests/test_graphql_api/test_banner_notification/test_create.py diff --git a/tests/test_graphql_api/test_banner_notification/test_create_permissions.py b/backend/tests/test_graphql_api/test_banner_notification/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_create_permissions.py rename to backend/tests/test_graphql_api/test_banner_notification/test_create_permissions.py diff --git a/tests/test_graphql_api/test_banner_notification/test_delete.py b/backend/tests/test_graphql_api/test_banner_notification/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_delete.py rename to backend/tests/test_graphql_api/test_banner_notification/test_delete.py diff --git a/tests/test_graphql_api/test_banner_notification/test_delete_permissions.py b/backend/tests/test_graphql_api/test_banner_notification/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_banner_notification/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_banner_notification/test_query.py b/backend/tests/test_graphql_api/test_banner_notification/test_query.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_query.py rename to backend/tests/test_graphql_api/test_banner_notification/test_query.py diff --git a/tests/test_graphql_api/test_banner_notification/test_query_permissions.py b/backend/tests/test_graphql_api/test_banner_notification/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_query_permissions.py rename to backend/tests/test_graphql_api/test_banner_notification/test_query_permissions.py diff --git a/tests/test_graphql_api/test_banner_notification/test_sorting.py b/backend/tests/test_graphql_api/test_banner_notification/test_sorting.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_sorting.py rename to backend/tests/test_graphql_api/test_banner_notification/test_sorting.py diff --git a/tests/test_graphql_api/test_banner_notification/test_update.py b/backend/tests/test_graphql_api/test_banner_notification/test_update.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_update.py rename to backend/tests/test_graphql_api/test_banner_notification/test_update.py diff --git a/tests/test_graphql_api/test_banner_notification/test_update_permissions.py b/backend/tests/test_graphql_api/test_banner_notification/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_banner_notification/test_update_permissions.py rename to backend/tests/test_graphql_api/test_banner_notification/test_update_permissions.py diff --git a/tests/test_graphql_api/test_city/__init__.py b/backend/tests/test_graphql_api/test_city/__init__.py similarity index 100% rename from tests/test_graphql_api/test_city/__init__.py rename to backend/tests/test_graphql_api/test_city/__init__.py diff --git a/tests/test_graphql_api/test_city/test_query.py b/backend/tests/test_graphql_api/test_city/test_query.py similarity index 100% rename from tests/test_graphql_api/test_city/test_query.py rename to backend/tests/test_graphql_api/test_city/test_query.py diff --git a/tests/test_graphql_api/test_equipment/__init__.py b/backend/tests/test_graphql_api/test_equipment/__init__.py similarity index 100% rename from tests/test_graphql_api/test_equipment/__init__.py rename to backend/tests/test_graphql_api/test_equipment/__init__.py diff --git a/tests/test_graphql_api/test_equipment/helpers.py b/backend/tests/test_graphql_api/test_equipment/helpers.py similarity index 100% rename from tests/test_graphql_api/test_equipment/helpers.py rename to backend/tests/test_graphql_api/test_equipment/helpers.py diff --git a/tests/test_graphql_api/test_equipment/test_create.py b/backend/tests/test_graphql_api/test_equipment/test_create.py similarity index 100% rename from tests/test_graphql_api/test_equipment/test_create.py rename to backend/tests/test_graphql_api/test_equipment/test_create.py diff --git a/tests/test_graphql_api/test_equipment/test_create_permissions.py b/backend/tests/test_graphql_api/test_equipment/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_equipment/test_create_permissions.py rename to backend/tests/test_graphql_api/test_equipment/test_create_permissions.py diff --git a/tests/test_graphql_api/test_equipment/test_query.py b/backend/tests/test_graphql_api/test_equipment/test_query.py similarity index 100% rename from tests/test_graphql_api/test_equipment/test_query.py rename to backend/tests/test_graphql_api/test_equipment/test_query.py diff --git a/tests/test_graphql_api/test_equipment/test_query_all.py b/backend/tests/test_graphql_api/test_equipment/test_query_all.py similarity index 100% rename from tests/test_graphql_api/test_equipment/test_query_all.py rename to backend/tests/test_graphql_api/test_equipment/test_query_all.py diff --git a/tests/test_graphql_api/test_equipment/test_update.py b/backend/tests/test_graphql_api/test_equipment/test_update.py similarity index 100% rename from tests/test_graphql_api/test_equipment/test_update.py rename to backend/tests/test_graphql_api/test_equipment/test_update.py diff --git a/tests/test_graphql_api/test_equipment/test_update_permissions.py b/backend/tests/test_graphql_api/test_equipment/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_equipment/test_update_permissions.py rename to backend/tests/test_graphql_api/test_equipment/test_update_permissions.py diff --git a/tests/test_graphql_api/test_equipment_category/__init__.py b/backend/tests/test_graphql_api/test_equipment_category/__init__.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/__init__.py rename to backend/tests/test_graphql_api/test_equipment_category/__init__.py diff --git a/tests/test_graphql_api/test_equipment_category/helpers.py b/backend/tests/test_graphql_api/test_equipment_category/helpers.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/helpers.py rename to backend/tests/test_graphql_api/test_equipment_category/helpers.py diff --git a/tests/test_graphql_api/test_equipment_category/test_create.py b/backend/tests/test_graphql_api/test_equipment_category/test_create.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_create.py rename to backend/tests/test_graphql_api/test_equipment_category/test_create.py diff --git a/tests/test_graphql_api/test_equipment_category/test_create_permissions.py b/backend/tests/test_graphql_api/test_equipment_category/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_create_permissions.py rename to backend/tests/test_graphql_api/test_equipment_category/test_create_permissions.py diff --git a/tests/test_graphql_api/test_equipment_category/test_delete.py b/backend/tests/test_graphql_api/test_equipment_category/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_delete.py rename to backend/tests/test_graphql_api/test_equipment_category/test_delete.py diff --git a/tests/test_graphql_api/test_equipment_category/test_delete_permissions.py b/backend/tests/test_graphql_api/test_equipment_category/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_equipment_category/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_equipment_category/test_query.py b/backend/tests/test_graphql_api/test_equipment_category/test_query.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_query.py rename to backend/tests/test_graphql_api/test_equipment_category/test_query.py diff --git a/tests/test_graphql_api/test_equipment_category/test_query_permissions.py b/backend/tests/test_graphql_api/test_equipment_category/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_query_permissions.py rename to backend/tests/test_graphql_api/test_equipment_category/test_query_permissions.py diff --git a/tests/test_graphql_api/test_equipment_category/test_update.py b/backend/tests/test_graphql_api/test_equipment_category/test_update.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_update.py rename to backend/tests/test_graphql_api/test_equipment_category/test_update.py diff --git a/tests/test_graphql_api/test_equipment_category/test_update_permissions.py b/backend/tests/test_graphql_api/test_equipment_category/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_equipment_category/test_update_permissions.py rename to backend/tests/test_graphql_api/test_equipment_category/test_update_permissions.py diff --git a/tests/test_graphql_api/test_helsinki_profile/__init__.py b/backend/tests/test_graphql_api/test_helsinki_profile/__init__.py similarity index 100% rename from tests/test_graphql_api/test_helsinki_profile/__init__.py rename to backend/tests/test_graphql_api/test_helsinki_profile/__init__.py diff --git a/tests/test_graphql_api/test_helsinki_profile/helpers.py b/backend/tests/test_graphql_api/test_helsinki_profile/helpers.py similarity index 100% rename from tests/test_graphql_api/test_helsinki_profile/helpers.py rename to backend/tests/test_graphql_api/test_helsinki_profile/helpers.py diff --git a/tests/test_graphql_api/test_helsinki_profile/test_query.py b/backend/tests/test_graphql_api/test_helsinki_profile/test_query.py similarity index 100% rename from tests/test_graphql_api/test_helsinki_profile/test_query.py rename to backend/tests/test_graphql_api/test_helsinki_profile/test_query.py diff --git a/tests/test_graphql_api/test_metadata_set/__init__.py b/backend/tests/test_graphql_api/test_metadata_set/__init__.py similarity index 100% rename from tests/test_graphql_api/test_metadata_set/__init__.py rename to backend/tests/test_graphql_api/test_metadata_set/__init__.py diff --git a/tests/test_graphql_api/test_metadata_set/test_query.py b/backend/tests/test_graphql_api/test_metadata_set/test_query.py similarity index 100% rename from tests/test_graphql_api/test_metadata_set/test_query.py rename to backend/tests/test_graphql_api/test_metadata_set/test_query.py diff --git a/tests/test_graphql_api/test_order/__init__.py b/backend/tests/test_graphql_api/test_order/__init__.py similarity index 100% rename from tests/test_graphql_api/test_order/__init__.py rename to backend/tests/test_graphql_api/test_order/__init__.py diff --git a/tests/test_graphql_api/test_order/helpers.py b/backend/tests/test_graphql_api/test_order/helpers.py similarity index 100% rename from tests/test_graphql_api/test_order/helpers.py rename to backend/tests/test_graphql_api/test_order/helpers.py diff --git a/tests/test_graphql_api/test_order/test_query.py b/backend/tests/test_graphql_api/test_order/test_query.py similarity index 100% rename from tests/test_graphql_api/test_order/test_query.py rename to backend/tests/test_graphql_api/test_order/test_query.py diff --git a/tests/test_graphql_api/test_order/test_query_permissions.py b/backend/tests/test_graphql_api/test_order/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_order/test_query_permissions.py rename to backend/tests/test_graphql_api/test_order/test_query_permissions.py diff --git a/tests/test_graphql_api/test_order/test_refresh.py b/backend/tests/test_graphql_api/test_order/test_refresh.py similarity index 100% rename from tests/test_graphql_api/test_order/test_refresh.py rename to backend/tests/test_graphql_api/test_order/test_refresh.py diff --git a/tests/test_graphql_api/test_order/test_refresh_permissions.py b/backend/tests/test_graphql_api/test_order/test_refresh_permissions.py similarity index 100% rename from tests/test_graphql_api/test_order/test_refresh_permissions.py rename to backend/tests/test_graphql_api/test_order/test_refresh_permissions.py diff --git a/tests/test_graphql_api/test_permissions/__init__.py b/backend/tests/test_graphql_api/test_permissions/__init__.py similarity index 100% rename from tests/test_graphql_api/test_permissions/__init__.py rename to backend/tests/test_graphql_api/test_permissions/__init__.py diff --git a/tests/test_graphql_api/test_permissions/test_permission_checker.py b/backend/tests/test_graphql_api/test_permissions/test_permission_checker.py similarity index 100% rename from tests/test_graphql_api/test_permissions/test_permission_checker.py rename to backend/tests/test_graphql_api/test_permissions/test_permission_checker.py diff --git a/tests/test_graphql_api/test_purpose/__init__.py b/backend/tests/test_graphql_api/test_purpose/__init__.py similarity index 100% rename from tests/test_graphql_api/test_purpose/__init__.py rename to backend/tests/test_graphql_api/test_purpose/__init__.py diff --git a/tests/test_graphql_api/test_purpose/helpers.py b/backend/tests/test_graphql_api/test_purpose/helpers.py similarity index 100% rename from tests/test_graphql_api/test_purpose/helpers.py rename to backend/tests/test_graphql_api/test_purpose/helpers.py diff --git a/tests/test_graphql_api/test_purpose/test_create.py b/backend/tests/test_graphql_api/test_purpose/test_create.py similarity index 100% rename from tests/test_graphql_api/test_purpose/test_create.py rename to backend/tests/test_graphql_api/test_purpose/test_create.py diff --git a/tests/test_graphql_api/test_purpose/test_create_permissions.py b/backend/tests/test_graphql_api/test_purpose/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_purpose/test_create_permissions.py rename to backend/tests/test_graphql_api/test_purpose/test_create_permissions.py diff --git a/tests/test_graphql_api/test_purpose/test_query.py b/backend/tests/test_graphql_api/test_purpose/test_query.py similarity index 100% rename from tests/test_graphql_api/test_purpose/test_query.py rename to backend/tests/test_graphql_api/test_purpose/test_query.py diff --git a/tests/test_graphql_api/test_purpose/test_update.py b/backend/tests/test_graphql_api/test_purpose/test_update.py similarity index 100% rename from tests/test_graphql_api/test_purpose/test_update.py rename to backend/tests/test_graphql_api/test_purpose/test_update.py diff --git a/tests/test_graphql_api/test_purpose/test_update_permissions.py b/backend/tests/test_graphql_api/test_purpose/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_purpose/test_update_permissions.py rename to backend/tests/test_graphql_api/test_purpose/test_update_permissions.py diff --git a/tests/test_graphql_api/test_qualifier/__init__.py b/backend/tests/test_graphql_api/test_qualifier/__init__.py similarity index 100% rename from tests/test_graphql_api/test_qualifier/__init__.py rename to backend/tests/test_graphql_api/test_qualifier/__init__.py diff --git a/tests/test_graphql_api/test_qualifier/test_query.py b/backend/tests/test_graphql_api/test_qualifier/test_query.py similarity index 100% rename from tests/test_graphql_api/test_qualifier/test_query.py rename to backend/tests/test_graphql_api/test_qualifier/test_query.py diff --git a/tests/test_graphql_api/test_recurring_reservation/__init__.py b/backend/tests/test_graphql_api/test_recurring_reservation/__init__.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/__init__.py rename to backend/tests/test_graphql_api/test_recurring_reservation/__init__.py diff --git a/tests/test_graphql_api/test_recurring_reservation/helpers.py b/backend/tests/test_graphql_api/test_recurring_reservation/helpers.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/helpers.py rename to backend/tests/test_graphql_api/test_recurring_reservation/helpers.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_add_reservation.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_add_reservation.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_add_reservation.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_add_reservation.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_add_reservation_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_add_reservation_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_add_reservation_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_add_reservation_permissions.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_cancel_series.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_cancel_series.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_cancel_series.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_cancel_series.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_cancel_series_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_cancel_series_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_cancel_series_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_cancel_series_permissions.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_create_series.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_create_series.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_create_series.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_create_series.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_create_series_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_create_series_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_create_series_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_create_series_permissions.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_deny_series.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_deny_series.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_deny_series.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_deny_series.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_deny_series_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_deny_series_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_deny_series_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_deny_series_permissions.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_query.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_query.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_query.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_query.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_query_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_query_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_query_permissions.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_reschedule_series.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_reschedule_series.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_reschedule_series.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_reschedule_series.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_reschedule_series_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_reschedule_series_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_reschedule_series_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_reschedule_series_permissions.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_update_series.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_update_series.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_update_series.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_update_series.py diff --git a/tests/test_graphql_api/test_recurring_reservation/test_update_series_permissions.py b/backend/tests/test_graphql_api/test_recurring_reservation/test_update_series_permissions.py similarity index 100% rename from tests/test_graphql_api/test_recurring_reservation/test_update_series_permissions.py rename to backend/tests/test_graphql_api/test_recurring_reservation/test_update_series_permissions.py diff --git a/tests/test_graphql_api/test_rejected_occurrence/__init__.py b/backend/tests/test_graphql_api/test_rejected_occurrence/__init__.py similarity index 100% rename from tests/test_graphql_api/test_rejected_occurrence/__init__.py rename to backend/tests/test_graphql_api/test_rejected_occurrence/__init__.py diff --git a/tests/test_graphql_api/test_rejected_occurrence/helpers.py b/backend/tests/test_graphql_api/test_rejected_occurrence/helpers.py similarity index 100% rename from tests/test_graphql_api/test_rejected_occurrence/helpers.py rename to backend/tests/test_graphql_api/test_rejected_occurrence/helpers.py diff --git a/tests/test_graphql_api/test_rejected_occurrence/test_query.py b/backend/tests/test_graphql_api/test_rejected_occurrence/test_query.py similarity index 100% rename from tests/test_graphql_api/test_rejected_occurrence/test_query.py rename to backend/tests/test_graphql_api/test_rejected_occurrence/test_query.py diff --git a/tests/test_graphql_api/test_reservation/__init__.py b/backend/tests/test_graphql_api/test_reservation/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation/__init__.py rename to backend/tests/test_graphql_api/test_reservation/__init__.py diff --git a/tests/test_graphql_api/test_reservation/helpers.py b/backend/tests/test_graphql_api/test_reservation/helpers.py similarity index 100% rename from tests/test_graphql_api/test_reservation/helpers.py rename to backend/tests/test_graphql_api/test_reservation/helpers.py diff --git a/tests/test_graphql_api/test_reservation/test_adjust_time.py b/backend/tests/test_graphql_api/test_reservation/test_adjust_time.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_adjust_time.py rename to backend/tests/test_graphql_api/test_reservation/test_adjust_time.py diff --git a/tests/test_graphql_api/test_reservation/test_affecting_reservations.py b/backend/tests/test_graphql_api/test_reservation/test_affecting_reservations.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_affecting_reservations.py rename to backend/tests/test_graphql_api/test_reservation/test_affecting_reservations.py diff --git a/tests/test_graphql_api/test_reservation/test_approve.py b/backend/tests/test_graphql_api/test_reservation/test_approve.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_approve.py rename to backend/tests/test_graphql_api/test_reservation/test_approve.py diff --git a/tests/test_graphql_api/test_reservation/test_approve_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_approve_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_approve_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_approve_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_cancel.py b/backend/tests/test_graphql_api/test_reservation/test_cancel.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_cancel.py rename to backend/tests/test_graphql_api/test_reservation/test_cancel.py diff --git a/tests/test_graphql_api/test_reservation/test_confirm.py b/backend/tests/test_graphql_api/test_reservation/test_confirm.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_confirm.py rename to backend/tests/test_graphql_api/test_reservation/test_confirm.py diff --git a/tests/test_graphql_api/test_reservation/test_create.py b/backend/tests/test_graphql_api/test_reservation/test_create.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_create.py rename to backend/tests/test_graphql_api/test_reservation/test_create.py diff --git a/tests/test_graphql_api/test_reservation/test_delete.py b/backend/tests/test_graphql_api/test_reservation/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_delete.py rename to backend/tests/test_graphql_api/test_reservation/test_delete.py diff --git a/tests/test_graphql_api/test_reservation/test_delete_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_deny.py b/backend/tests/test_graphql_api/test_reservation/test_deny.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_deny.py rename to backend/tests/test_graphql_api/test_reservation/test_deny.py diff --git a/tests/test_graphql_api/test_reservation/test_deny_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_deny_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_deny_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_deny_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_filtering.py b/backend/tests/test_graphql_api/test_reservation/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_filtering.py rename to backend/tests/test_graphql_api/test_reservation/test_filtering.py diff --git a/tests/test_graphql_api/test_reservation/test_ordering.py b/backend/tests/test_graphql_api/test_reservation/test_ordering.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_ordering.py rename to backend/tests/test_graphql_api/test_reservation/test_ordering.py diff --git a/tests/test_graphql_api/test_reservation/test_query.py b/backend/tests/test_graphql_api/test_reservation/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_query.py rename to backend/tests/test_graphql_api/test_reservation/test_query.py diff --git a/tests/test_graphql_api/test_reservation/test_query_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_query_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_query_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_refund.py b/backend/tests/test_graphql_api/test_reservation/test_refund.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_refund.py rename to backend/tests/test_graphql_api/test_reservation/test_refund.py diff --git a/tests/test_graphql_api/test_reservation/test_requires_handling.py b/backend/tests/test_graphql_api/test_reservation/test_requires_handling.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_requires_handling.py rename to backend/tests/test_graphql_api/test_reservation/test_requires_handling.py diff --git a/tests/test_graphql_api/test_reservation/test_requires_handling_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_requires_handling_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_requires_handling_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_requires_handling_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_adjust_time.py b/backend/tests/test_graphql_api/test_reservation/test_staff_adjust_time.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_adjust_time.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_adjust_time.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_adjust_time_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_staff_adjust_time_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_adjust_time_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_adjust_time_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_change_access_code.py b/backend/tests/test_graphql_api/test_reservation/test_staff_change_access_code.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_change_access_code.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_change_access_code.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_change_access_code_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_staff_change_access_code_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_change_access_code_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_change_access_code_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_create.py b/backend/tests/test_graphql_api/test_reservation/test_staff_create.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_create.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_create.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_modify.py b/backend/tests/test_graphql_api/test_reservation/test_staff_modify.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_modify.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_modify.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_modify_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_staff_modify_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_modify_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_modify_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_repair_access_code.py b/backend/tests/test_graphql_api/test_reservation/test_staff_repair_access_code.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_repair_access_code.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_repair_access_code.py diff --git a/tests/test_graphql_api/test_reservation/test_staff_repair_access_code_permissions.py b/backend/tests/test_graphql_api/test_reservation/test_staff_repair_access_code_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_staff_repair_access_code_permissions.py rename to backend/tests/test_graphql_api/test_reservation/test_staff_repair_access_code_permissions.py diff --git a/tests/test_graphql_api/test_reservation/test_update.py b/backend/tests/test_graphql_api/test_reservation/test_update.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_update.py rename to backend/tests/test_graphql_api/test_reservation/test_update.py diff --git a/tests/test_graphql_api/test_reservation/test_working_memo_update.py b/backend/tests/test_graphql_api/test_reservation/test_working_memo_update.py similarity index 100% rename from tests/test_graphql_api/test_reservation/test_working_memo_update.py rename to backend/tests/test_graphql_api/test_reservation/test_working_memo_update.py diff --git a/tests/test_graphql_api/test_reservation_cancel_reason/__init__.py b/backend/tests/test_graphql_api/test_reservation_cancel_reason/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_cancel_reason/__init__.py rename to backend/tests/test_graphql_api/test_reservation_cancel_reason/__init__.py diff --git a/tests/test_graphql_api/test_reservation_cancel_reason/test_query.py b/backend/tests/test_graphql_api/test_reservation_cancel_reason/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_cancel_reason/test_query.py rename to backend/tests/test_graphql_api/test_reservation_cancel_reason/test_query.py diff --git a/tests/test_graphql_api/test_reservation_deny_reason/__init__.py b/backend/tests/test_graphql_api/test_reservation_deny_reason/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_deny_reason/__init__.py rename to backend/tests/test_graphql_api/test_reservation_deny_reason/__init__.py diff --git a/tests/test_graphql_api/test_reservation_deny_reason/test_query.py b/backend/tests/test_graphql_api/test_reservation_deny_reason/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_deny_reason/test_query.py rename to backend/tests/test_graphql_api/test_reservation_deny_reason/test_query.py diff --git a/tests/test_graphql_api/test_reservation_purpose/__init__.py b/backend/tests/test_graphql_api/test_reservation_purpose/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_purpose/__init__.py rename to backend/tests/test_graphql_api/test_reservation_purpose/__init__.py diff --git a/tests/test_graphql_api/test_reservation_purpose/test_query.py b/backend/tests/test_graphql_api/test_reservation_purpose/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_purpose/test_query.py rename to backend/tests/test_graphql_api/test_reservation_purpose/test_query.py diff --git a/tests/test_graphql_api/test_reservation_unit/__init__.py b/backend/tests/test_graphql_api/test_reservation_unit/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/__init__.py rename to backend/tests/test_graphql_api/test_reservation_unit/__init__.py diff --git a/tests/test_graphql_api/test_reservation_unit/helpers.py b/backend/tests/test_graphql_api/test_reservation_unit/helpers.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/helpers.py rename to backend/tests/test_graphql_api/test_reservation_unit/helpers.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_create.py b/backend/tests/test_graphql_api/test_reservation_unit/test_create.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_create.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_create.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_create_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_create_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_create_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_filtering.py b/backend/tests/test_graphql_api/test_reservation_unit/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_filtering.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_filtering.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_hauki_integration.py b/backend/tests/test_graphql_api/test_reservation_unit/test_hauki_integration.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_hauki_integration.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_hauki_integration.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_ordering.py b/backend/tests/test_graphql_api/test_reservation_unit/test_ordering.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_ordering.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_ordering.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_pricing.py b/backend/tests/test_graphql_api/test_reservation_unit/test_pricing.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_pricing.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_pricing.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_query.py b/backend/tests/test_graphql_api/test_reservation_unit/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_query.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_query.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_query_all.py b/backend/tests/test_graphql_api/test_reservation_unit/test_query_all.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_query_all.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_query_all.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_query_first_reservable_time.py b/backend/tests/test_graphql_api/test_reservation_unit/test_query_first_reservable_time.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_query_first_reservable_time.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_query_first_reservable_time.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_query_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_query_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_query_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_query_reservable_time_spans.py b/backend/tests/test_graphql_api/test_reservation_unit/test_query_reservable_time_spans.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_query_reservable_time_spans.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_query_reservable_time_spans.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_text_search.py b/backend/tests/test_graphql_api/test_reservation_unit/test_text_search.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_text_search.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_text_search.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_update_draft.py b/backend/tests/test_graphql_api/test_reservation_unit/test_update_draft.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_update_draft.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_update_draft.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_update_not_draft.py b/backend/tests/test_graphql_api/test_reservation_unit/test_update_not_draft.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_update_not_draft.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_update_not_draft.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_update_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_update_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_update_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit/test_update_timeslots.py b/backend/tests/test_graphql_api/test_reservation_unit/test_update_timeslots.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit/test_update_timeslots.py rename to backend/tests/test_graphql_api/test_reservation_unit/test_update_timeslots.py diff --git a/tests/test_graphql_api/test_reservation_unit_cancellation_rule/__init__.py b/backend/tests/test_graphql_api/test_reservation_unit_cancellation_rule/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_cancellation_rule/__init__.py rename to backend/tests/test_graphql_api/test_reservation_unit_cancellation_rule/__init__.py diff --git a/tests/test_graphql_api/test_reservation_unit_cancellation_rule/test_query.py b/backend/tests/test_graphql_api/test_reservation_unit_cancellation_rule/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_cancellation_rule/test_query.py rename to backend/tests/test_graphql_api/test_reservation_unit_cancellation_rule/test_query.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/__init__.py b/backend/tests/test_graphql_api/test_reservation_unit_image/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/__init__.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/__init__.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/helpers.py b/backend/tests/test_graphql_api/test_reservation_unit_image/helpers.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/helpers.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/helpers.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/test_create.py b/backend/tests/test_graphql_api/test_reservation_unit_image/test_create.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/test_create.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/test_create.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/test_create_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit_image/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/test_create_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/test_create_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/test_delete.py b/backend/tests/test_graphql_api/test_reservation_unit_image/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/test_delete.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/test_delete.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/test_delete_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit_image/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/test_update.py b/backend/tests/test_graphql_api/test_reservation_unit_image/test_update.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/test_update.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/test_update.py diff --git a/tests/test_graphql_api/test_reservation_unit_image/test_update_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit_image/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_image/test_update_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit_image/test_update_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit_option/__init__.py b/backend/tests/test_graphql_api/test_reservation_unit_option/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_option/__init__.py rename to backend/tests/test_graphql_api/test_reservation_unit_option/__init__.py diff --git a/tests/test_graphql_api/test_reservation_unit_option/helpers.py b/backend/tests/test_graphql_api/test_reservation_unit_option/helpers.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_option/helpers.py rename to backend/tests/test_graphql_api/test_reservation_unit_option/helpers.py diff --git a/tests/test_graphql_api/test_reservation_unit_option/test_query.py b/backend/tests/test_graphql_api/test_reservation_unit_option/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_option/test_query.py rename to backend/tests/test_graphql_api/test_reservation_unit_option/test_query.py diff --git a/tests/test_graphql_api/test_reservation_unit_option/test_query_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit_option/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_option/test_query_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit_option/test_query_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit_option/test_update.py b/backend/tests/test_graphql_api/test_reservation_unit_option/test_update.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_option/test_update.py rename to backend/tests/test_graphql_api/test_reservation_unit_option/test_update.py diff --git a/tests/test_graphql_api/test_reservation_unit_option/test_update_permissions.py b/backend/tests/test_graphql_api/test_reservation_unit_option/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_option/test_update_permissions.py rename to backend/tests/test_graphql_api/test_reservation_unit_option/test_update_permissions.py diff --git a/tests/test_graphql_api/test_reservation_unit_type/__init__.py b/backend/tests/test_graphql_api/test_reservation_unit_type/__init__.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_type/__init__.py rename to backend/tests/test_graphql_api/test_reservation_unit_type/__init__.py diff --git a/tests/test_graphql_api/test_reservation_unit_type/test_query.py b/backend/tests/test_graphql_api/test_reservation_unit_type/test_query.py similarity index 100% rename from tests/test_graphql_api/test_reservation_unit_type/test_query.py rename to backend/tests/test_graphql_api/test_reservation_unit_type/test_query.py diff --git a/tests/test_graphql_api/test_resource/__init__.py b/backend/tests/test_graphql_api/test_resource/__init__.py similarity index 100% rename from tests/test_graphql_api/test_resource/__init__.py rename to backend/tests/test_graphql_api/test_resource/__init__.py diff --git a/tests/test_graphql_api/test_resource/helpers.py b/backend/tests/test_graphql_api/test_resource/helpers.py similarity index 100% rename from tests/test_graphql_api/test_resource/helpers.py rename to backend/tests/test_graphql_api/test_resource/helpers.py diff --git a/tests/test_graphql_api/test_resource/test_create.py b/backend/tests/test_graphql_api/test_resource/test_create.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_create.py rename to backend/tests/test_graphql_api/test_resource/test_create.py diff --git a/tests/test_graphql_api/test_resource/test_create_permissions.py b/backend/tests/test_graphql_api/test_resource/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_create_permissions.py rename to backend/tests/test_graphql_api/test_resource/test_create_permissions.py diff --git a/tests/test_graphql_api/test_resource/test_delete.py b/backend/tests/test_graphql_api/test_resource/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_delete.py rename to backend/tests/test_graphql_api/test_resource/test_delete.py diff --git a/tests/test_graphql_api/test_resource/test_delete_permissions.py b/backend/tests/test_graphql_api/test_resource/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_resource/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_resource/test_query.py b/backend/tests/test_graphql_api/test_resource/test_query.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_query.py rename to backend/tests/test_graphql_api/test_resource/test_query.py diff --git a/tests/test_graphql_api/test_resource/test_query_permissions.py b/backend/tests/test_graphql_api/test_resource/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_query_permissions.py rename to backend/tests/test_graphql_api/test_resource/test_query_permissions.py diff --git a/tests/test_graphql_api/test_resource/test_update.py b/backend/tests/test_graphql_api/test_resource/test_update.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_update.py rename to backend/tests/test_graphql_api/test_resource/test_update.py diff --git a/tests/test_graphql_api/test_resource/test_update_permissions.py b/backend/tests/test_graphql_api/test_resource/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_resource/test_update_permissions.py rename to backend/tests/test_graphql_api/test_resource/test_update_permissions.py diff --git a/tests/test_graphql_api/test_space/__init__.py b/backend/tests/test_graphql_api/test_space/__init__.py similarity index 100% rename from tests/test_graphql_api/test_space/__init__.py rename to backend/tests/test_graphql_api/test_space/__init__.py diff --git a/tests/test_graphql_api/test_space/helpers.py b/backend/tests/test_graphql_api/test_space/helpers.py similarity index 100% rename from tests/test_graphql_api/test_space/helpers.py rename to backend/tests/test_graphql_api/test_space/helpers.py diff --git a/tests/test_graphql_api/test_space/test_create.py b/backend/tests/test_graphql_api/test_space/test_create.py similarity index 100% rename from tests/test_graphql_api/test_space/test_create.py rename to backend/tests/test_graphql_api/test_space/test_create.py diff --git a/tests/test_graphql_api/test_space/test_create_permissions.py b/backend/tests/test_graphql_api/test_space/test_create_permissions.py similarity index 100% rename from tests/test_graphql_api/test_space/test_create_permissions.py rename to backend/tests/test_graphql_api/test_space/test_create_permissions.py diff --git a/tests/test_graphql_api/test_space/test_delete.py b/backend/tests/test_graphql_api/test_space/test_delete.py similarity index 100% rename from tests/test_graphql_api/test_space/test_delete.py rename to backend/tests/test_graphql_api/test_space/test_delete.py diff --git a/tests/test_graphql_api/test_space/test_delete_permissions.py b/backend/tests/test_graphql_api/test_space/test_delete_permissions.py similarity index 100% rename from tests/test_graphql_api/test_space/test_delete_permissions.py rename to backend/tests/test_graphql_api/test_space/test_delete_permissions.py diff --git a/tests/test_graphql_api/test_space/test_filtering.py b/backend/tests/test_graphql_api/test_space/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_space/test_filtering.py rename to backend/tests/test_graphql_api/test_space/test_filtering.py diff --git a/tests/test_graphql_api/test_space/test_query.py b/backend/tests/test_graphql_api/test_space/test_query.py similarity index 100% rename from tests/test_graphql_api/test_space/test_query.py rename to backend/tests/test_graphql_api/test_space/test_query.py diff --git a/tests/test_graphql_api/test_space/test_update.py b/backend/tests/test_graphql_api/test_space/test_update.py similarity index 100% rename from tests/test_graphql_api/test_space/test_update.py rename to backend/tests/test_graphql_api/test_space/test_update.py diff --git a/tests/test_graphql_api/test_space/test_update_permissions.py b/backend/tests/test_graphql_api/test_space/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_space/test_update_permissions.py rename to backend/tests/test_graphql_api/test_space/test_update_permissions.py diff --git a/tests/test_graphql_api/test_tax_percentage/__init__.py b/backend/tests/test_graphql_api/test_tax_percentage/__init__.py similarity index 100% rename from tests/test_graphql_api/test_tax_percentage/__init__.py rename to backend/tests/test_graphql_api/test_tax_percentage/__init__.py diff --git a/tests/test_graphql_api/test_tax_percentage/test_query.py b/backend/tests/test_graphql_api/test_tax_percentage/test_query.py similarity index 100% rename from tests/test_graphql_api/test_tax_percentage/test_query.py rename to backend/tests/test_graphql_api/test_tax_percentage/test_query.py diff --git a/tests/test_graphql_api/test_terms_of_use/__init__.py b/backend/tests/test_graphql_api/test_terms_of_use/__init__.py similarity index 100% rename from tests/test_graphql_api/test_terms_of_use/__init__.py rename to backend/tests/test_graphql_api/test_terms_of_use/__init__.py diff --git a/tests/test_graphql_api/test_terms_of_use/test_query.py b/backend/tests/test_graphql_api/test_terms_of_use/test_query.py similarity index 100% rename from tests/test_graphql_api/test_terms_of_use/test_query.py rename to backend/tests/test_graphql_api/test_terms_of_use/test_query.py diff --git a/tests/test_graphql_api/test_unit/__init__.py b/backend/tests/test_graphql_api/test_unit/__init__.py similarity index 100% rename from tests/test_graphql_api/test_unit/__init__.py rename to backend/tests/test_graphql_api/test_unit/__init__.py diff --git a/tests/test_graphql_api/test_unit/helpers.py b/backend/tests/test_graphql_api/test_unit/helpers.py similarity index 100% rename from tests/test_graphql_api/test_unit/helpers.py rename to backend/tests/test_graphql_api/test_unit/helpers.py diff --git a/tests/test_graphql_api/test_unit/test_filtering.py b/backend/tests/test_graphql_api/test_unit/test_filtering.py similarity index 100% rename from tests/test_graphql_api/test_unit/test_filtering.py rename to backend/tests/test_graphql_api/test_unit/test_filtering.py diff --git a/tests/test_graphql_api/test_unit/test_ordering.py b/backend/tests/test_graphql_api/test_unit/test_ordering.py similarity index 100% rename from tests/test_graphql_api/test_unit/test_ordering.py rename to backend/tests/test_graphql_api/test_unit/test_ordering.py diff --git a/tests/test_graphql_api/test_unit/test_query.py b/backend/tests/test_graphql_api/test_unit/test_query.py similarity index 100% rename from tests/test_graphql_api/test_unit/test_query.py rename to backend/tests/test_graphql_api/test_unit/test_query.py diff --git a/tests/test_graphql_api/test_unit/test_query_permissions.py b/backend/tests/test_graphql_api/test_unit/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_unit/test_query_permissions.py rename to backend/tests/test_graphql_api/test_unit/test_query_permissions.py diff --git a/tests/test_graphql_api/test_unit/test_update.py b/backend/tests/test_graphql_api/test_unit/test_update.py similarity index 100% rename from tests/test_graphql_api/test_unit/test_update.py rename to backend/tests/test_graphql_api/test_unit/test_update.py diff --git a/tests/test_graphql_api/test_unit/test_update_permissions.py b/backend/tests/test_graphql_api/test_unit/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_unit/test_update_permissions.py rename to backend/tests/test_graphql_api/test_unit/test_update_permissions.py diff --git a/tests/test_graphql_api/test_unit_group/__init__.py b/backend/tests/test_graphql_api/test_unit_group/__init__.py similarity index 100% rename from tests/test_graphql_api/test_unit_group/__init__.py rename to backend/tests/test_graphql_api/test_unit_group/__init__.py diff --git a/tests/test_graphql_api/test_unit_group/test_query.py b/backend/tests/test_graphql_api/test_unit_group/test_query.py similarity index 100% rename from tests/test_graphql_api/test_unit_group/test_query.py rename to backend/tests/test_graphql_api/test_unit_group/test_query.py diff --git a/tests/test_graphql_api/test_user/__init__.py b/backend/tests/test_graphql_api/test_user/__init__.py similarity index 100% rename from tests/test_graphql_api/test_user/__init__.py rename to backend/tests/test_graphql_api/test_user/__init__.py diff --git a/tests/test_graphql_api/test_user/helpers.py b/backend/tests/test_graphql_api/test_user/helpers.py similarity index 100% rename from tests/test_graphql_api/test_user/helpers.py rename to backend/tests/test_graphql_api/test_user/helpers.py diff --git a/tests/test_graphql_api/test_user/test_query.py b/backend/tests/test_graphql_api/test_user/test_query.py similarity index 100% rename from tests/test_graphql_api/test_user/test_query.py rename to backend/tests/test_graphql_api/test_user/test_query.py diff --git a/tests/test_graphql_api/test_user/test_query_current_user.py b/backend/tests/test_graphql_api/test_user/test_query_current_user.py similarity index 100% rename from tests/test_graphql_api/test_user/test_query_current_user.py rename to backend/tests/test_graphql_api/test_user/test_query_current_user.py diff --git a/tests/test_graphql_api/test_user/test_query_permissions.py b/backend/tests/test_graphql_api/test_user/test_query_permissions.py similarity index 100% rename from tests/test_graphql_api/test_user/test_query_permissions.py rename to backend/tests/test_graphql_api/test_user/test_query_permissions.py diff --git a/tests/test_graphql_api/test_user/test_update.py b/backend/tests/test_graphql_api/test_user/test_update.py similarity index 100% rename from tests/test_graphql_api/test_user/test_update.py rename to backend/tests/test_graphql_api/test_user/test_update.py diff --git a/tests/test_graphql_api/test_user/test_update_permissions.py b/backend/tests/test_graphql_api/test_user/test_update_permissions.py similarity index 100% rename from tests/test_graphql_api/test_user/test_update_permissions.py rename to backend/tests/test_graphql_api/test_user/test_update_permissions.py diff --git a/tests/test_graphql_api/test_user/test_update_staff.py b/backend/tests/test_graphql_api/test_user/test_update_staff.py similarity index 100% rename from tests/test_graphql_api/test_user/test_update_staff.py rename to backend/tests/test_graphql_api/test_user/test_update_staff.py diff --git a/tests/test_graphql_api/test_user/test_update_staff_permissions.py b/backend/tests/test_graphql_api/test_user/test_update_staff_permissions.py similarity index 100% rename from tests/test_graphql_api/test_user/test_update_staff_permissions.py rename to backend/tests/test_graphql_api/test_user/test_update_staff_permissions.py diff --git a/tests/test_helauth/__init__.py b/backend/tests/test_helauth/__init__.py similarity index 100% rename from tests/test_helauth/__init__.py rename to backend/tests/test_helauth/__init__.py diff --git a/tests/test_helauth/helpers.py b/backend/tests/test_helauth/helpers.py similarity index 100% rename from tests/test_helauth/helpers.py rename to backend/tests/test_helauth/helpers.py diff --git a/tests/test_helauth/test_pipeline_additions.py b/backend/tests/test_helauth/test_pipeline_additions.py similarity index 100% rename from tests/test_helauth/test_pipeline_additions.py rename to backend/tests/test_helauth/test_pipeline_additions.py diff --git a/tests/test_helauth/test_profile_client.py b/backend/tests/test_helauth/test_profile_client.py similarity index 100% rename from tests/test_helauth/test_profile_client.py rename to backend/tests/test_helauth/test_profile_client.py diff --git a/tests/test_integrations/__init__.py b/backend/tests/test_integrations/__init__.py similarity index 100% rename from tests/test_integrations/__init__.py rename to backend/tests/test_integrations/__init__.py diff --git a/tests/test_integrations/test_email/__init__.py b/backend/tests/test_integrations/test_email/__init__.py similarity index 100% rename from tests/test_integrations/test_email/__init__.py rename to backend/tests/test_integrations/test_email/__init__.py diff --git a/tests/test_integrations/test_email/conftest.py b/backend/tests/test_integrations/test_email/conftest.py similarity index 100% rename from tests/test_integrations/test_email/conftest.py rename to backend/tests/test_integrations/test_email/conftest.py diff --git a/tests/test_integrations/test_email/helpers.py b/backend/tests/test_integrations/test_email/helpers.py similarity index 100% rename from tests/test_integrations/test_email/helpers.py rename to backend/tests/test_integrations/test_email/helpers.py diff --git a/tests/test_integrations/test_email/test_application_context.py b/backend/tests/test_integrations/test_email/test_application_context.py similarity index 100% rename from tests/test_integrations/test_email/test_application_context.py rename to backend/tests/test_integrations/test_email/test_application_context.py diff --git a/tests/test_integrations/test_email/test_email_service.py b/backend/tests/test_integrations/test_email/test_email_service.py similarity index 100% rename from tests/test_integrations/test_email/test_email_service.py rename to backend/tests/test_integrations/test_email/test_email_service.py diff --git a/tests/test_integrations/test_email/test_find_language.py b/backend/tests/test_integrations/test_email/test_find_language.py similarity index 100% rename from tests/test_integrations/test_email/test_find_language.py rename to backend/tests/test_integrations/test_email/test_find_language.py diff --git a/tests/test_integrations/test_email/test_find_recipients.py b/backend/tests/test_integrations/test_email/test_find_recipients.py similarity index 100% rename from tests/test_integrations/test_email/test_find_recipients.py rename to backend/tests/test_integrations/test_email/test_find_recipients.py diff --git a/tests/test_integrations/test_email/test_permission_context.py b/backend/tests/test_integrations/test_email/test_permission_context.py similarity index 100% rename from tests/test_integrations/test_email/test_permission_context.py rename to backend/tests/test_integrations/test_email/test_permission_context.py diff --git a/tests/test_integrations/test_email/test_render_html.py b/backend/tests/test_integrations/test_email/test_render_html.py similarity index 100% rename from tests/test_integrations/test_email/test_render_html.py rename to backend/tests/test_integrations/test_email/test_render_html.py diff --git a/tests/test_integrations/test_email/test_render_text.py b/backend/tests/test_integrations/test_email/test_render_text.py similarity index 100% rename from tests/test_integrations/test_email/test_render_text.py rename to backend/tests/test_integrations/test_email/test_render_text.py diff --git a/tests/test_integrations/test_email/test_reservation_context.py b/backend/tests/test_integrations/test_email/test_reservation_context.py similarity index 100% rename from tests/test_integrations/test_email/test_reservation_context.py rename to backend/tests/test_integrations/test_email/test_reservation_context.py diff --git a/tests/test_integrations/test_email/test_sending.py b/backend/tests/test_integrations/test_email/test_sending.py similarity index 100% rename from tests/test_integrations/test_email/test_sending.py rename to backend/tests/test_integrations/test_email/test_sending.py diff --git a/tests/test_integrations/test_keyless_entry/__init__.py b/backend/tests/test_integrations/test_keyless_entry/__init__.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/__init__.py rename to backend/tests/test_integrations/test_keyless_entry/__init__.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/__init__.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/__init__.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/__init__.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/__init__.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/helpers.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/helpers.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/helpers.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/helpers.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/test_caching.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_caching.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/test_caching.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_caching.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_series.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_series.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_series.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_series.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_unit.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_unit.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_unit.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_reservation_unit.py diff --git a/tests/test_integrations/test_keyless_entry/test_pindora_client/test_seasonal_booking.py b/backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_seasonal_booking.py similarity index 100% rename from tests/test_integrations/test_keyless_entry/test_pindora_client/test_seasonal_booking.py rename to backend/tests/test_integrations/test_keyless_entry/test_pindora_client/test_seasonal_booking.py diff --git a/tests/test_models/__init__.py b/backend/tests/test_models/__init__.py similarity index 100% rename from tests/test_models/__init__.py rename to backend/tests/test_models/__init__.py diff --git a/tests/test_models/test_allocated_time_slot.py b/backend/tests/test_models/test_allocated_time_slot.py similarity index 100% rename from tests/test_models/test_allocated_time_slot.py rename to backend/tests/test_models/test_allocated_time_slot.py diff --git a/tests/test_models/test_application.py b/backend/tests/test_models/test_application.py similarity index 100% rename from tests/test_models/test_application.py rename to backend/tests/test_models/test_application.py diff --git a/tests/test_models/test_application_round.py b/backend/tests/test_models/test_application_round.py similarity index 100% rename from tests/test_models/test_application_round.py rename to backend/tests/test_models/test_application_round.py diff --git a/tests/test_models/test_application_section.py b/backend/tests/test_models/test_application_section.py similarity index 100% rename from tests/test_models/test_application_section.py rename to backend/tests/test_models/test_application_section.py diff --git a/tests/test_models/test_payment_accounting.py b/backend/tests/test_models/test_payment_accounting.py similarity index 100% rename from tests/test_models/test_payment_accounting.py rename to backend/tests/test_models/test_payment_accounting.py diff --git a/tests/test_models/test_payment_order.py b/backend/tests/test_models/test_payment_order.py similarity index 100% rename from tests/test_models/test_payment_order.py rename to backend/tests/test_models/test_payment_order.py diff --git a/tests/test_models/test_purpose_image.py b/backend/tests/test_models/test_purpose_image.py similarity index 100% rename from tests/test_models/test_purpose_image.py rename to backend/tests/test_models/test_purpose_image.py diff --git a/tests/test_models/test_reservation_reservee_name.py b/backend/tests/test_models/test_reservation_reservee_name.py similarity index 100% rename from tests/test_models/test_reservation_reservee_name.py rename to backend/tests/test_models/test_reservation_reservee_name.py diff --git a/tests/test_models/test_reservation_statistics.py b/backend/tests/test_models/test_reservation_statistics.py similarity index 100% rename from tests/test_models/test_reservation_statistics.py rename to backend/tests/test_models/test_reservation_statistics.py diff --git a/tests/test_models/test_reservation_unit_image.py b/backend/tests/test_models/test_reservation_unit_image.py similarity index 100% rename from tests/test_models/test_reservation_unit_image.py rename to backend/tests/test_models/test_reservation_unit_image.py diff --git a/tests/test_models/test_reservation_unit_pricing_updates.py b/backend/tests/test_models/test_reservation_unit_pricing_updates.py similarity index 100% rename from tests/test_models/test_reservation_unit_pricing_updates.py rename to backend/tests/test_models/test_reservation_unit_pricing_updates.py diff --git a/tests/test_models/test_reservation_unit_publishing_state.py b/backend/tests/test_models/test_reservation_unit_publishing_state.py similarity index 100% rename from tests/test_models/test_reservation_unit_publishing_state.py rename to backend/tests/test_models/test_reservation_unit_publishing_state.py diff --git a/tests/test_models/test_reservation_unit_reservation_scheduler.py b/backend/tests/test_models/test_reservation_unit_reservation_scheduler.py similarity index 100% rename from tests/test_models/test_reservation_unit_reservation_scheduler.py rename to backend/tests/test_models/test_reservation_unit_reservation_scheduler.py diff --git a/tests/test_models/test_reservation_unit_reservation_state.py b/backend/tests/test_models/test_reservation_unit_reservation_state.py similarity index 100% rename from tests/test_models/test_reservation_unit_reservation_state.py rename to backend/tests/test_models/test_reservation_unit_reservation_state.py diff --git a/tests/test_models/test_suitable_time_range.py b/backend/tests/test_models/test_suitable_time_range.py similarity index 100% rename from tests/test_models/test_suitable_time_range.py rename to backend/tests/test_models/test_suitable_time_range.py diff --git a/tests/test_models/test_user.py b/backend/tests/test_models/test_user.py similarity index 100% rename from tests/test_models/test_user.py rename to backend/tests/test_models/test_user.py diff --git a/tests/test_palvelukartta_api/__init__.py b/backend/tests/test_palvelukartta_api/__init__.py similarity index 100% rename from tests/test_palvelukartta_api/__init__.py rename to backend/tests/test_palvelukartta_api/__init__.py diff --git a/tests/test_palvelukartta_api/test_reservation_units.py b/backend/tests/test_palvelukartta_api/test_reservation_units.py similarity index 100% rename from tests/test_palvelukartta_api/test_reservation_units.py rename to backend/tests/test_palvelukartta_api/test_reservation_units.py diff --git a/tests/test_querysets/__init__.py b/backend/tests/test_querysets/__init__.py similarity index 100% rename from tests/test_querysets/__init__.py rename to backend/tests/test_querysets/__init__.py diff --git a/tests/test_querysets/test_reservable_time_span.py b/backend/tests/test_querysets/test_reservable_time_span.py similarity index 100% rename from tests/test_querysets/test_reservable_time_span.py rename to backend/tests/test_querysets/test_reservable_time_span.py diff --git a/tests/test_querysets/test_reservation_querysets.py b/backend/tests/test_querysets/test_reservation_querysets.py similarity index 100% rename from tests/test_querysets/test_reservation_querysets.py rename to backend/tests/test_querysets/test_reservation_querysets.py diff --git a/tests/test_querysets/test_reservation_units_with_common_hierarchy.py b/backend/tests/test_querysets/test_reservation_units_with_common_hierarchy.py similarity index 100% rename from tests/test_querysets/test_reservation_units_with_common_hierarchy.py rename to backend/tests/test_querysets/test_reservation_units_with_common_hierarchy.py diff --git a/tests/test_querysets/test_space_querysets.py b/backend/tests/test_querysets/test_space_querysets.py similarity index 100% rename from tests/test_querysets/test_space_querysets.py rename to backend/tests/test_querysets/test_space_querysets.py diff --git a/tests/test_rest_api/__init__.py b/backend/tests/test_rest_api/__init__.py similarity index 100% rename from tests/test_rest_api/__init__.py rename to backend/tests/test_rest_api/__init__.py diff --git a/tests/test_rest_api/test_ical_api.py b/backend/tests/test_rest_api/test_ical_api.py similarity index 100% rename from tests/test_rest_api/test_ical_api.py rename to backend/tests/test_rest_api/test_ical_api.py diff --git a/tests/test_rest_api/test_terms_pdf.py b/backend/tests/test_rest_api/test_terms_pdf.py similarity index 100% rename from tests/test_rest_api/test_terms_pdf.py rename to backend/tests/test_rest_api/test_terms_pdf.py diff --git a/tests/test_services/__init__.py b/backend/tests/test_services/__init__.py similarity index 100% rename from tests/test_services/__init__.py rename to backend/tests/test_services/__init__.py diff --git a/tests/test_services/test_permission_services.py b/backend/tests/test_services/test_permission_services.py similarity index 100% rename from tests/test_services/test_permission_services.py rename to backend/tests/test_services/test_permission_services.py diff --git a/tests/test_tasks/__init__.py b/backend/tests/test_tasks/__init__.py similarity index 100% rename from tests/test_tasks/__init__.py rename to backend/tests/test_tasks/__init__.py diff --git a/tests/test_tasks/test_create_missing_pindora_reservations.py b/backend/tests/test_tasks/test_create_missing_pindora_reservations.py similarity index 100% rename from tests/test_tasks/test_create_missing_pindora_reservations.py rename to backend/tests/test_tasks/test_create_missing_pindora_reservations.py diff --git a/tests/test_tasks/test_delete_expired_applications.py b/backend/tests/test_tasks/test_delete_expired_applications.py similarity index 100% rename from tests/test_tasks/test_delete_expired_applications.py rename to backend/tests/test_tasks/test_delete_expired_applications.py diff --git a/tests/test_tasks/test_prune_inactive_reservations.py b/backend/tests/test_tasks/test_prune_inactive_reservations.py similarity index 100% rename from tests/test_tasks/test_prune_inactive_reservations.py rename to backend/tests/test_tasks/test_prune_inactive_reservations.py diff --git a/tests/test_tasks/test_prune_recurring_reservations.py b/backend/tests/test_tasks/test_prune_recurring_reservations.py similarity index 100% rename from tests/test_tasks/test_prune_recurring_reservations.py rename to backend/tests/test_tasks/test_prune_recurring_reservations.py diff --git a/tests/test_tasks/test_prune_reservation_statistics.py b/backend/tests/test_tasks/test_prune_reservation_statistics.py similarity index 100% rename from tests/test_tasks/test_prune_reservation_statistics.py rename to backend/tests/test_tasks/test_prune_reservation_statistics.py diff --git a/tests/test_tasks/test_prune_reservation_with_inactive_payments.py b/backend/tests/test_tasks/test_prune_reservation_with_inactive_payments.py similarity index 100% rename from tests/test_tasks/test_prune_reservation_with_inactive_payments.py rename to backend/tests/test_tasks/test_prune_reservation_with_inactive_payments.py diff --git a/tests/test_tasks/test_remove_personal_info_logs_older_than.py b/backend/tests/test_tasks/test_remove_personal_info_logs_older_than.py similarity index 100% rename from tests/test_tasks/test_remove_personal_info_logs_older_than.py rename to backend/tests/test_tasks/test_remove_personal_info_logs_older_than.py diff --git a/tests/test_tasks/test_save_personal_info_view_log_task.py b/backend/tests/test_tasks/test_save_personal_info_view_log_task.py similarity index 100% rename from tests/test_tasks/test_save_personal_info_view_log_task.py rename to backend/tests/test_tasks/test_save_personal_info_view_log_task.py diff --git a/tests/test_tasks/test_update_pindora_access_code_is_active.py b/backend/tests/test_tasks/test_update_pindora_access_code_is_active.py similarity index 100% rename from tests/test_tasks/test_update_pindora_access_code_is_active.py rename to backend/tests/test_tasks/test_update_pindora_access_code_is_active.py diff --git a/tests/test_utils/__init__.py b/backend/tests/test_utils/__init__.py similarity index 100% rename from tests/test_utils/__init__.py rename to backend/tests/test_utils/__init__.py diff --git a/tests/test_utils/test_comma_sep_str.py b/backend/tests/test_utils/test_comma_sep_str.py similarity index 100% rename from tests/test_utils/test_comma_sep_str.py rename to backend/tests/test_utils/test_comma_sep_str.py diff --git a/tests/test_utils/test_convert_html_to_text.py b/backend/tests/test_utils/test_convert_html_to_text.py similarity index 100% rename from tests/test_utils/test_convert_html_to_text.py rename to backend/tests/test_utils/test_convert_html_to_text.py diff --git a/tests/test_utils/test_create_test_data.py b/backend/tests/test_utils/test_create_test_data.py similarity index 100% rename from tests/test_utils/test_create_test_data.py rename to backend/tests/test_utils/test_create_test_data.py diff --git a/tests/test_utils/test_date_util.py b/backend/tests/test_utils/test_date_util.py similarity index 100% rename from tests/test_utils/test_date_util.py rename to backend/tests/test_utils/test_date_util.py diff --git a/tests/test_utils/test_decimal_utils.py b/backend/tests/test_utils/test_decimal_utils.py similarity index 100% rename from tests/test_utils/test_decimal_utils.py rename to backend/tests/test_utils/test_decimal_utils.py diff --git a/tests/test_utils/test_first_reservable_time_helper.py b/backend/tests/test_utils/test_first_reservable_time_helper.py similarity index 100% rename from tests/test_utils/test_first_reservable_time_helper.py rename to backend/tests/test_utils/test_first_reservable_time_helper.py diff --git a/tests/test_utils/test_generate_reservations_from_allocations.py b/backend/tests/test_utils/test_generate_reservations_from_allocations.py similarity index 100% rename from tests/test_utils/test_generate_reservations_from_allocations.py rename to backend/tests/test_utils/test_generate_reservations_from_allocations.py diff --git a/tests/test_utils/test_get_nested.py b/backend/tests/test_utils/test_get_nested.py similarity index 100% rename from tests/test_utils/test_get_nested.py rename to backend/tests/test_utils/test_get_nested.py diff --git a/tests/test_utils/test_image_cache.py b/backend/tests/test_utils/test_image_cache.py similarity index 100% rename from tests/test_utils/test_image_cache.py rename to backend/tests/test_utils/test_image_cache.py diff --git a/tests/test_utils/test_jwt_decoding.py b/backend/tests/test_utils/test_jwt_decoding.py similarity index 100% rename from tests/test_utils/test_jwt_decoding.py rename to backend/tests/test_utils/test_jwt_decoding.py diff --git a/tests/test_utils/test_query_logging_middleware.py b/backend/tests/test_utils/test_query_logging_middleware.py similarity index 100% rename from tests/test_utils/test_query_logging_middleware.py rename to backend/tests/test_utils/test_query_logging_middleware.py diff --git a/tests/test_utils/test_translations_done.py b/backend/tests/test_utils/test_translations_done.py similarity index 100% rename from tests/test_utils/test_translations_done.py rename to backend/tests/test_utils/test_translations_done.py diff --git a/tests/test_utils/test_validators.py b/backend/tests/test_utils/test_validators.py similarity index 100% rename from tests/test_utils/test_validators.py rename to backend/tests/test_utils/test_validators.py diff --git a/tests/test_utils/test_with_indices.py b/backend/tests/test_utils/test_with_indices.py similarity index 100% rename from tests/test_utils/test_with_indices.py rename to backend/tests/test_utils/test_with_indices.py diff --git a/tilavarauspalvelu/__init__.py b/backend/tilavarauspalvelu/__init__.py similarity index 100% rename from tilavarauspalvelu/__init__.py rename to backend/tilavarauspalvelu/__init__.py diff --git a/tilavarauspalvelu/admin/__init__.py b/backend/tilavarauspalvelu/admin/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/__init__.py rename to backend/tilavarauspalvelu/admin/__init__.py diff --git a/tilavarauspalvelu/admin/ability_group/__init__.py b/backend/tilavarauspalvelu/admin/ability_group/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/ability_group/__init__.py rename to backend/tilavarauspalvelu/admin/ability_group/__init__.py diff --git a/tilavarauspalvelu/admin/ability_group/admin.py b/backend/tilavarauspalvelu/admin/ability_group/admin.py similarity index 100% rename from tilavarauspalvelu/admin/ability_group/admin.py rename to backend/tilavarauspalvelu/admin/ability_group/admin.py diff --git a/tilavarauspalvelu/admin/address/__init__.py b/backend/tilavarauspalvelu/admin/address/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/address/__init__.py rename to backend/tilavarauspalvelu/admin/address/__init__.py diff --git a/tilavarauspalvelu/admin/address/admin.py b/backend/tilavarauspalvelu/admin/address/admin.py similarity index 100% rename from tilavarauspalvelu/admin/address/admin.py rename to backend/tilavarauspalvelu/admin/address/admin.py diff --git a/tilavarauspalvelu/admin/affecting_time_span/__init__.py b/backend/tilavarauspalvelu/admin/affecting_time_span/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/affecting_time_span/__init__.py rename to backend/tilavarauspalvelu/admin/affecting_time_span/__init__.py diff --git a/tilavarauspalvelu/admin/affecting_time_span/admin.py b/backend/tilavarauspalvelu/admin/affecting_time_span/admin.py similarity index 100% rename from tilavarauspalvelu/admin/affecting_time_span/admin.py rename to backend/tilavarauspalvelu/admin/affecting_time_span/admin.py diff --git a/tilavarauspalvelu/admin/age_group/__init__.py b/backend/tilavarauspalvelu/admin/age_group/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/age_group/__init__.py rename to backend/tilavarauspalvelu/admin/age_group/__init__.py diff --git a/tilavarauspalvelu/admin/age_group/admin.py b/backend/tilavarauspalvelu/admin/age_group/admin.py similarity index 100% rename from tilavarauspalvelu/admin/age_group/admin.py rename to backend/tilavarauspalvelu/admin/age_group/admin.py diff --git a/tilavarauspalvelu/admin/allocated_timeslot/__init__.py b/backend/tilavarauspalvelu/admin/allocated_timeslot/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/allocated_timeslot/__init__.py rename to backend/tilavarauspalvelu/admin/allocated_timeslot/__init__.py diff --git a/tilavarauspalvelu/admin/allocated_timeslot/admin.py b/backend/tilavarauspalvelu/admin/allocated_timeslot/admin.py similarity index 100% rename from tilavarauspalvelu/admin/allocated_timeslot/admin.py rename to backend/tilavarauspalvelu/admin/allocated_timeslot/admin.py diff --git a/tilavarauspalvelu/admin/allocated_timeslot/filters.py b/backend/tilavarauspalvelu/admin/allocated_timeslot/filters.py similarity index 100% rename from tilavarauspalvelu/admin/allocated_timeslot/filters.py rename to backend/tilavarauspalvelu/admin/allocated_timeslot/filters.py diff --git a/tilavarauspalvelu/admin/allocated_timeslot/form.py b/backend/tilavarauspalvelu/admin/allocated_timeslot/form.py similarity index 100% rename from tilavarauspalvelu/admin/allocated_timeslot/form.py rename to backend/tilavarauspalvelu/admin/allocated_timeslot/form.py diff --git a/tilavarauspalvelu/admin/application/__init__.py b/backend/tilavarauspalvelu/admin/application/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/application/__init__.py rename to backend/tilavarauspalvelu/admin/application/__init__.py diff --git a/tilavarauspalvelu/admin/application/admin.py b/backend/tilavarauspalvelu/admin/application/admin.py similarity index 100% rename from tilavarauspalvelu/admin/application/admin.py rename to backend/tilavarauspalvelu/admin/application/admin.py diff --git a/tilavarauspalvelu/admin/application/filters.py b/backend/tilavarauspalvelu/admin/application/filters.py similarity index 100% rename from tilavarauspalvelu/admin/application/filters.py rename to backend/tilavarauspalvelu/admin/application/filters.py diff --git a/tilavarauspalvelu/admin/application/form.py b/backend/tilavarauspalvelu/admin/application/form.py similarity index 100% rename from tilavarauspalvelu/admin/application/form.py rename to backend/tilavarauspalvelu/admin/application/form.py diff --git a/tilavarauspalvelu/admin/application_round/__init__.py b/backend/tilavarauspalvelu/admin/application_round/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/application_round/__init__.py rename to backend/tilavarauspalvelu/admin/application_round/__init__.py diff --git a/tilavarauspalvelu/admin/application_round/admin.py b/backend/tilavarauspalvelu/admin/application_round/admin.py similarity index 100% rename from tilavarauspalvelu/admin/application_round/admin.py rename to backend/tilavarauspalvelu/admin/application_round/admin.py diff --git a/tilavarauspalvelu/admin/application_round/form.py b/backend/tilavarauspalvelu/admin/application_round/form.py similarity index 100% rename from tilavarauspalvelu/admin/application_round/form.py rename to backend/tilavarauspalvelu/admin/application_round/form.py diff --git a/tilavarauspalvelu/admin/application_round_time_slot/__init__.py b/backend/tilavarauspalvelu/admin/application_round_time_slot/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/application_round_time_slot/__init__.py rename to backend/tilavarauspalvelu/admin/application_round_time_slot/__init__.py diff --git a/tilavarauspalvelu/admin/application_round_time_slot/admin.py b/backend/tilavarauspalvelu/admin/application_round_time_slot/admin.py similarity index 100% rename from tilavarauspalvelu/admin/application_round_time_slot/admin.py rename to backend/tilavarauspalvelu/admin/application_round_time_slot/admin.py diff --git a/tilavarauspalvelu/admin/application_round_time_slot/form.py b/backend/tilavarauspalvelu/admin/application_round_time_slot/form.py similarity index 100% rename from tilavarauspalvelu/admin/application_round_time_slot/form.py rename to backend/tilavarauspalvelu/admin/application_round_time_slot/form.py diff --git a/tilavarauspalvelu/admin/application_section/__init__.py b/backend/tilavarauspalvelu/admin/application_section/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/application_section/__init__.py rename to backend/tilavarauspalvelu/admin/application_section/__init__.py diff --git a/tilavarauspalvelu/admin/application_section/admin.py b/backend/tilavarauspalvelu/admin/application_section/admin.py similarity index 100% rename from tilavarauspalvelu/admin/application_section/admin.py rename to backend/tilavarauspalvelu/admin/application_section/admin.py diff --git a/tilavarauspalvelu/admin/application_section/filters.py b/backend/tilavarauspalvelu/admin/application_section/filters.py similarity index 100% rename from tilavarauspalvelu/admin/application_section/filters.py rename to backend/tilavarauspalvelu/admin/application_section/filters.py diff --git a/tilavarauspalvelu/admin/application_section/form.py b/backend/tilavarauspalvelu/admin/application_section/form.py similarity index 100% rename from tilavarauspalvelu/admin/application_section/form.py rename to backend/tilavarauspalvelu/admin/application_section/form.py diff --git a/tilavarauspalvelu/admin/banner_notification/__init__.py b/backend/tilavarauspalvelu/admin/banner_notification/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/banner_notification/__init__.py rename to backend/tilavarauspalvelu/admin/banner_notification/__init__.py diff --git a/tilavarauspalvelu/admin/banner_notification/admin.py b/backend/tilavarauspalvelu/admin/banner_notification/admin.py similarity index 100% rename from tilavarauspalvelu/admin/banner_notification/admin.py rename to backend/tilavarauspalvelu/admin/banner_notification/admin.py diff --git a/tilavarauspalvelu/admin/bug_report/__init__.py b/backend/tilavarauspalvelu/admin/bug_report/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/bug_report/__init__.py rename to backend/tilavarauspalvelu/admin/bug_report/__init__.py diff --git a/tilavarauspalvelu/admin/bug_report/admin.py b/backend/tilavarauspalvelu/admin/bug_report/admin.py similarity index 100% rename from tilavarauspalvelu/admin/bug_report/admin.py rename to backend/tilavarauspalvelu/admin/bug_report/admin.py diff --git a/tilavarauspalvelu/admin/building/__init__.py b/backend/tilavarauspalvelu/admin/building/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/building/__init__.py rename to backend/tilavarauspalvelu/admin/building/__init__.py diff --git a/tilavarauspalvelu/admin/building/admin.py b/backend/tilavarauspalvelu/admin/building/admin.py similarity index 100% rename from tilavarauspalvelu/admin/building/admin.py rename to backend/tilavarauspalvelu/admin/building/admin.py diff --git a/tilavarauspalvelu/admin/city/__init__.py b/backend/tilavarauspalvelu/admin/city/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/city/__init__.py rename to backend/tilavarauspalvelu/admin/city/__init__.py diff --git a/tilavarauspalvelu/admin/city/admin.py b/backend/tilavarauspalvelu/admin/city/admin.py similarity index 100% rename from tilavarauspalvelu/admin/city/admin.py rename to backend/tilavarauspalvelu/admin/city/admin.py diff --git a/tilavarauspalvelu/admin/email_template/__init__.py b/backend/tilavarauspalvelu/admin/email_template/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/email_template/__init__.py rename to backend/tilavarauspalvelu/admin/email_template/__init__.py diff --git a/tilavarauspalvelu/admin/email_template/forms.py b/backend/tilavarauspalvelu/admin/email_template/forms.py similarity index 100% rename from tilavarauspalvelu/admin/email_template/forms.py rename to backend/tilavarauspalvelu/admin/email_template/forms.py diff --git a/tilavarauspalvelu/admin/email_template/tester.py b/backend/tilavarauspalvelu/admin/email_template/tester.py similarity index 100% rename from tilavarauspalvelu/admin/email_template/tester.py rename to backend/tilavarauspalvelu/admin/email_template/tester.py diff --git a/tilavarauspalvelu/admin/email_template/utils.py b/backend/tilavarauspalvelu/admin/email_template/utils.py similarity index 100% rename from tilavarauspalvelu/admin/email_template/utils.py rename to backend/tilavarauspalvelu/admin/email_template/utils.py diff --git a/tilavarauspalvelu/admin/email_template/view.py b/backend/tilavarauspalvelu/admin/email_template/view.py similarity index 100% rename from tilavarauspalvelu/admin/email_template/view.py rename to backend/tilavarauspalvelu/admin/email_template/view.py diff --git a/tilavarauspalvelu/admin/equipment/__init__.py b/backend/tilavarauspalvelu/admin/equipment/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/equipment/__init__.py rename to backend/tilavarauspalvelu/admin/equipment/__init__.py diff --git a/tilavarauspalvelu/admin/equipment/admin.py b/backend/tilavarauspalvelu/admin/equipment/admin.py similarity index 100% rename from tilavarauspalvelu/admin/equipment/admin.py rename to backend/tilavarauspalvelu/admin/equipment/admin.py diff --git a/tilavarauspalvelu/admin/equipment_category/__init__.py b/backend/tilavarauspalvelu/admin/equipment_category/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/equipment_category/__init__.py rename to backend/tilavarauspalvelu/admin/equipment_category/__init__.py diff --git a/tilavarauspalvelu/admin/equipment_category/admin.py b/backend/tilavarauspalvelu/admin/equipment_category/admin.py similarity index 100% rename from tilavarauspalvelu/admin/equipment_category/admin.py rename to backend/tilavarauspalvelu/admin/equipment_category/admin.py diff --git a/tilavarauspalvelu/admin/general_role/__init__.py b/backend/tilavarauspalvelu/admin/general_role/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/general_role/__init__.py rename to backend/tilavarauspalvelu/admin/general_role/__init__.py diff --git a/tilavarauspalvelu/admin/general_role/admin.py b/backend/tilavarauspalvelu/admin/general_role/admin.py similarity index 100% rename from tilavarauspalvelu/admin/general_role/admin.py rename to backend/tilavarauspalvelu/admin/general_role/admin.py diff --git a/tilavarauspalvelu/admin/helpers.py b/backend/tilavarauspalvelu/admin/helpers.py similarity index 100% rename from tilavarauspalvelu/admin/helpers.py rename to backend/tilavarauspalvelu/admin/helpers.py diff --git a/tilavarauspalvelu/admin/introduction/__init__.py b/backend/tilavarauspalvelu/admin/introduction/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/introduction/__init__.py rename to backend/tilavarauspalvelu/admin/introduction/__init__.py diff --git a/tilavarauspalvelu/admin/introduction/admin.py b/backend/tilavarauspalvelu/admin/introduction/admin.py similarity index 100% rename from tilavarauspalvelu/admin/introduction/admin.py rename to backend/tilavarauspalvelu/admin/introduction/admin.py diff --git a/tilavarauspalvelu/admin/location/__init__.py b/backend/tilavarauspalvelu/admin/location/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/location/__init__.py rename to backend/tilavarauspalvelu/admin/location/__init__.py diff --git a/tilavarauspalvelu/admin/location/admin.py b/backend/tilavarauspalvelu/admin/location/admin.py similarity index 100% rename from tilavarauspalvelu/admin/location/admin.py rename to backend/tilavarauspalvelu/admin/location/admin.py diff --git a/tilavarauspalvelu/admin/organisation/__init__.py b/backend/tilavarauspalvelu/admin/organisation/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/organisation/__init__.py rename to backend/tilavarauspalvelu/admin/organisation/__init__.py diff --git a/tilavarauspalvelu/admin/organisation/admin.py b/backend/tilavarauspalvelu/admin/organisation/admin.py similarity index 100% rename from tilavarauspalvelu/admin/organisation/admin.py rename to backend/tilavarauspalvelu/admin/organisation/admin.py diff --git a/tilavarauspalvelu/admin/origin_hauki_resource/__init__.py b/backend/tilavarauspalvelu/admin/origin_hauki_resource/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/origin_hauki_resource/__init__.py rename to backend/tilavarauspalvelu/admin/origin_hauki_resource/__init__.py diff --git a/tilavarauspalvelu/admin/origin_hauki_resource/admin.py b/backend/tilavarauspalvelu/admin/origin_hauki_resource/admin.py similarity index 100% rename from tilavarauspalvelu/admin/origin_hauki_resource/admin.py rename to backend/tilavarauspalvelu/admin/origin_hauki_resource/admin.py diff --git a/tilavarauspalvelu/admin/payment_accounting/__init__.py b/backend/tilavarauspalvelu/admin/payment_accounting/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/payment_accounting/__init__.py rename to backend/tilavarauspalvelu/admin/payment_accounting/__init__.py diff --git a/tilavarauspalvelu/admin/payment_accounting/admin.py b/backend/tilavarauspalvelu/admin/payment_accounting/admin.py similarity index 100% rename from tilavarauspalvelu/admin/payment_accounting/admin.py rename to backend/tilavarauspalvelu/admin/payment_accounting/admin.py diff --git a/tilavarauspalvelu/admin/payment_merchant/__init__.py b/backend/tilavarauspalvelu/admin/payment_merchant/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/payment_merchant/__init__.py rename to backend/tilavarauspalvelu/admin/payment_merchant/__init__.py diff --git a/tilavarauspalvelu/admin/payment_merchant/admin.py b/backend/tilavarauspalvelu/admin/payment_merchant/admin.py similarity index 100% rename from tilavarauspalvelu/admin/payment_merchant/admin.py rename to backend/tilavarauspalvelu/admin/payment_merchant/admin.py diff --git a/tilavarauspalvelu/admin/payment_order/__init__.py b/backend/tilavarauspalvelu/admin/payment_order/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/payment_order/__init__.py rename to backend/tilavarauspalvelu/admin/payment_order/__init__.py diff --git a/tilavarauspalvelu/admin/payment_order/admin.py b/backend/tilavarauspalvelu/admin/payment_order/admin.py similarity index 100% rename from tilavarauspalvelu/admin/payment_order/admin.py rename to backend/tilavarauspalvelu/admin/payment_order/admin.py diff --git a/tilavarauspalvelu/admin/person/__init__.py b/backend/tilavarauspalvelu/admin/person/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/person/__init__.py rename to backend/tilavarauspalvelu/admin/person/__init__.py diff --git a/tilavarauspalvelu/admin/person/admin.py b/backend/tilavarauspalvelu/admin/person/admin.py similarity index 100% rename from tilavarauspalvelu/admin/person/admin.py rename to backend/tilavarauspalvelu/admin/person/admin.py diff --git a/tilavarauspalvelu/admin/purpose/__init__.py b/backend/tilavarauspalvelu/admin/purpose/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/purpose/__init__.py rename to backend/tilavarauspalvelu/admin/purpose/__init__.py diff --git a/tilavarauspalvelu/admin/purpose/admin.py b/backend/tilavarauspalvelu/admin/purpose/admin.py similarity index 100% rename from tilavarauspalvelu/admin/purpose/admin.py rename to backend/tilavarauspalvelu/admin/purpose/admin.py diff --git a/tilavarauspalvelu/admin/qualifier/__init__.py b/backend/tilavarauspalvelu/admin/qualifier/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/qualifier/__init__.py rename to backend/tilavarauspalvelu/admin/qualifier/__init__.py diff --git a/tilavarauspalvelu/admin/qualifier/admin.py b/backend/tilavarauspalvelu/admin/qualifier/admin.py similarity index 100% rename from tilavarauspalvelu/admin/qualifier/admin.py rename to backend/tilavarauspalvelu/admin/qualifier/admin.py diff --git a/tilavarauspalvelu/admin/real_estate/__init__.py b/backend/tilavarauspalvelu/admin/real_estate/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/real_estate/__init__.py rename to backend/tilavarauspalvelu/admin/real_estate/__init__.py diff --git a/tilavarauspalvelu/admin/real_estate/admin.py b/backend/tilavarauspalvelu/admin/real_estate/admin.py similarity index 100% rename from tilavarauspalvelu/admin/real_estate/admin.py rename to backend/tilavarauspalvelu/admin/real_estate/admin.py diff --git a/tilavarauspalvelu/admin/recurring_reservation/__init__.py b/backend/tilavarauspalvelu/admin/recurring_reservation/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/recurring_reservation/__init__.py rename to backend/tilavarauspalvelu/admin/recurring_reservation/__init__.py diff --git a/tilavarauspalvelu/admin/recurring_reservation/admin.py b/backend/tilavarauspalvelu/admin/recurring_reservation/admin.py similarity index 100% rename from tilavarauspalvelu/admin/recurring_reservation/admin.py rename to backend/tilavarauspalvelu/admin/recurring_reservation/admin.py diff --git a/tilavarauspalvelu/admin/rejected_occurrence/__init__.py b/backend/tilavarauspalvelu/admin/rejected_occurrence/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/rejected_occurrence/__init__.py rename to backend/tilavarauspalvelu/admin/rejected_occurrence/__init__.py diff --git a/tilavarauspalvelu/admin/rejected_occurrence/admin.py b/backend/tilavarauspalvelu/admin/rejected_occurrence/admin.py similarity index 100% rename from tilavarauspalvelu/admin/rejected_occurrence/admin.py rename to backend/tilavarauspalvelu/admin/rejected_occurrence/admin.py diff --git a/tilavarauspalvelu/admin/request_log/__init__.py b/backend/tilavarauspalvelu/admin/request_log/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/request_log/__init__.py rename to backend/tilavarauspalvelu/admin/request_log/__init__.py diff --git a/tilavarauspalvelu/admin/request_log/admin.py b/backend/tilavarauspalvelu/admin/request_log/admin.py similarity index 100% rename from tilavarauspalvelu/admin/request_log/admin.py rename to backend/tilavarauspalvelu/admin/request_log/admin.py diff --git a/tilavarauspalvelu/admin/reservable_time_span/__init__.py b/backend/tilavarauspalvelu/admin/reservable_time_span/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservable_time_span/__init__.py rename to backend/tilavarauspalvelu/admin/reservable_time_span/__init__.py diff --git a/tilavarauspalvelu/admin/reservable_time_span/admin.py b/backend/tilavarauspalvelu/admin/reservable_time_span/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservable_time_span/admin.py rename to backend/tilavarauspalvelu/admin/reservable_time_span/admin.py diff --git a/tilavarauspalvelu/admin/reservation/__init__.py b/backend/tilavarauspalvelu/admin/reservation/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation/__init__.py rename to backend/tilavarauspalvelu/admin/reservation/__init__.py diff --git a/tilavarauspalvelu/admin/reservation/admin.py b/backend/tilavarauspalvelu/admin/reservation/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation/admin.py rename to backend/tilavarauspalvelu/admin/reservation/admin.py diff --git a/tilavarauspalvelu/admin/reservation/filters.py b/backend/tilavarauspalvelu/admin/reservation/filters.py similarity index 100% rename from tilavarauspalvelu/admin/reservation/filters.py rename to backend/tilavarauspalvelu/admin/reservation/filters.py diff --git a/tilavarauspalvelu/admin/reservation/form.py b/backend/tilavarauspalvelu/admin/reservation/form.py similarity index 100% rename from tilavarauspalvelu/admin/reservation/form.py rename to backend/tilavarauspalvelu/admin/reservation/form.py diff --git a/tilavarauspalvelu/admin/reservation_cancel_reason/__init__.py b/backend/tilavarauspalvelu/admin/reservation_cancel_reason/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_cancel_reason/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_cancel_reason/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_cancel_reason/admin.py b/backend/tilavarauspalvelu/admin/reservation_cancel_reason/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_cancel_reason/admin.py rename to backend/tilavarauspalvelu/admin/reservation_cancel_reason/admin.py diff --git a/tilavarauspalvelu/admin/reservation_deny_reason/__init__.py b/backend/tilavarauspalvelu/admin/reservation_deny_reason/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_deny_reason/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_deny_reason/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_deny_reason/admin.py b/backend/tilavarauspalvelu/admin/reservation_deny_reason/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_deny_reason/admin.py rename to backend/tilavarauspalvelu/admin/reservation_deny_reason/admin.py diff --git a/tilavarauspalvelu/admin/reservation_metadata_field/__init__.py b/backend/tilavarauspalvelu/admin/reservation_metadata_field/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_metadata_field/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_metadata_field/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_metadata_field/admin.py b/backend/tilavarauspalvelu/admin/reservation_metadata_field/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_metadata_field/admin.py rename to backend/tilavarauspalvelu/admin/reservation_metadata_field/admin.py diff --git a/tilavarauspalvelu/admin/reservation_metadata_set/__init__.py b/backend/tilavarauspalvelu/admin/reservation_metadata_set/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_metadata_set/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_metadata_set/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_metadata_set/admin.py b/backend/tilavarauspalvelu/admin/reservation_metadata_set/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_metadata_set/admin.py rename to backend/tilavarauspalvelu/admin/reservation_metadata_set/admin.py diff --git a/tilavarauspalvelu/admin/reservation_purpose/__init__.py b/backend/tilavarauspalvelu/admin/reservation_purpose/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_purpose/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_purpose/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_purpose/admin.py b/backend/tilavarauspalvelu/admin/reservation_purpose/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_purpose/admin.py rename to backend/tilavarauspalvelu/admin/reservation_purpose/admin.py diff --git a/tilavarauspalvelu/admin/reservation_statistic/__init__.py b/backend/tilavarauspalvelu/admin/reservation_statistic/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_statistic/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_statistic/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_statistic/admin.py b/backend/tilavarauspalvelu/admin/reservation_statistic/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_statistic/admin.py rename to backend/tilavarauspalvelu/admin/reservation_statistic/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit/form.py b/backend/tilavarauspalvelu/admin/reservation_unit/form.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit/form.py rename to backend/tilavarauspalvelu/admin/reservation_unit/form.py diff --git a/tilavarauspalvelu/admin/reservation_unit_cancellation_rule/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_cancellation_rule/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_cancellation_rule/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_cancellation_rule/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_cancellation_rule/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_cancellation_rule/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_cancellation_rule/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_cancellation_rule/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit_hierarchy/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_hierarchy/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_hierarchy/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_hierarchy/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_hierarchy/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_hierarchy/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_hierarchy/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_hierarchy/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit_image/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_image/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_image/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_image/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_image/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_image/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_image/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_image/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit_option/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_option/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_option/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_option/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_option/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_option/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_option/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_option/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit_payment_type/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_payment_type/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_payment_type/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_payment_type/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_payment_type/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_payment_type/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_payment_type/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_payment_type/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit_pricing/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_pricing/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_pricing/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_pricing/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_pricing/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_pricing/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_pricing/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_pricing/admin.py diff --git a/tilavarauspalvelu/admin/reservation_unit_type/__init__.py b/backend/tilavarauspalvelu/admin/reservation_unit_type/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_type/__init__.py rename to backend/tilavarauspalvelu/admin/reservation_unit_type/__init__.py diff --git a/tilavarauspalvelu/admin/reservation_unit_type/admin.py b/backend/tilavarauspalvelu/admin/reservation_unit_type/admin.py similarity index 100% rename from tilavarauspalvelu/admin/reservation_unit_type/admin.py rename to backend/tilavarauspalvelu/admin/reservation_unit_type/admin.py diff --git a/tilavarauspalvelu/admin/resource/__init__.py b/backend/tilavarauspalvelu/admin/resource/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/resource/__init__.py rename to backend/tilavarauspalvelu/admin/resource/__init__.py diff --git a/tilavarauspalvelu/admin/resource/admin.py b/backend/tilavarauspalvelu/admin/resource/admin.py similarity index 100% rename from tilavarauspalvelu/admin/resource/admin.py rename to backend/tilavarauspalvelu/admin/resource/admin.py diff --git a/tilavarauspalvelu/admin/space/__init__.py b/backend/tilavarauspalvelu/admin/space/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/space/__init__.py rename to backend/tilavarauspalvelu/admin/space/__init__.py diff --git a/tilavarauspalvelu/admin/space/admin.py b/backend/tilavarauspalvelu/admin/space/admin.py similarity index 100% rename from tilavarauspalvelu/admin/space/admin.py rename to backend/tilavarauspalvelu/admin/space/admin.py diff --git a/tilavarauspalvelu/admin/sql_log/__init__.py b/backend/tilavarauspalvelu/admin/sql_log/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/sql_log/__init__.py rename to backend/tilavarauspalvelu/admin/sql_log/__init__.py diff --git a/tilavarauspalvelu/admin/sql_log/admin.py b/backend/tilavarauspalvelu/admin/sql_log/admin.py similarity index 100% rename from tilavarauspalvelu/admin/sql_log/admin.py rename to backend/tilavarauspalvelu/admin/sql_log/admin.py diff --git a/tilavarauspalvelu/admin/suitable_time_range/__init__.py b/backend/tilavarauspalvelu/admin/suitable_time_range/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/suitable_time_range/__init__.py rename to backend/tilavarauspalvelu/admin/suitable_time_range/__init__.py diff --git a/tilavarauspalvelu/admin/suitable_time_range/admin.py b/backend/tilavarauspalvelu/admin/suitable_time_range/admin.py similarity index 100% rename from tilavarauspalvelu/admin/suitable_time_range/admin.py rename to backend/tilavarauspalvelu/admin/suitable_time_range/admin.py diff --git a/tilavarauspalvelu/admin/tax_percentage/__init__.py b/backend/tilavarauspalvelu/admin/tax_percentage/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/tax_percentage/__init__.py rename to backend/tilavarauspalvelu/admin/tax_percentage/__init__.py diff --git a/tilavarauspalvelu/admin/tax_percentage/admin.py b/backend/tilavarauspalvelu/admin/tax_percentage/admin.py similarity index 100% rename from tilavarauspalvelu/admin/tax_percentage/admin.py rename to backend/tilavarauspalvelu/admin/tax_percentage/admin.py diff --git a/tilavarauspalvelu/admin/terms_of_use/__init__.py b/backend/tilavarauspalvelu/admin/terms_of_use/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/terms_of_use/__init__.py rename to backend/tilavarauspalvelu/admin/terms_of_use/__init__.py diff --git a/tilavarauspalvelu/admin/terms_of_use/admin.py b/backend/tilavarauspalvelu/admin/terms_of_use/admin.py similarity index 100% rename from tilavarauspalvelu/admin/terms_of_use/admin.py rename to backend/tilavarauspalvelu/admin/terms_of_use/admin.py diff --git a/tilavarauspalvelu/admin/text_search_view.py b/backend/tilavarauspalvelu/admin/text_search_view.py similarity index 100% rename from tilavarauspalvelu/admin/text_search_view.py rename to backend/tilavarauspalvelu/admin/text_search_view.py diff --git a/tilavarauspalvelu/admin/unit/__init__.py b/backend/tilavarauspalvelu/admin/unit/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/unit/__init__.py rename to backend/tilavarauspalvelu/admin/unit/__init__.py diff --git a/tilavarauspalvelu/admin/unit/admin.py b/backend/tilavarauspalvelu/admin/unit/admin.py similarity index 100% rename from tilavarauspalvelu/admin/unit/admin.py rename to backend/tilavarauspalvelu/admin/unit/admin.py diff --git a/tilavarauspalvelu/admin/unit/form.py b/backend/tilavarauspalvelu/admin/unit/form.py similarity index 100% rename from tilavarauspalvelu/admin/unit/form.py rename to backend/tilavarauspalvelu/admin/unit/form.py diff --git a/tilavarauspalvelu/admin/unit_group/__init__.py b/backend/tilavarauspalvelu/admin/unit_group/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/unit_group/__init__.py rename to backend/tilavarauspalvelu/admin/unit_group/__init__.py diff --git a/tilavarauspalvelu/admin/unit_group/admin.py b/backend/tilavarauspalvelu/admin/unit_group/admin.py similarity index 100% rename from tilavarauspalvelu/admin/unit_group/admin.py rename to backend/tilavarauspalvelu/admin/unit_group/admin.py diff --git a/tilavarauspalvelu/admin/unit_role/__init__.py b/backend/tilavarauspalvelu/admin/unit_role/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/unit_role/__init__.py rename to backend/tilavarauspalvelu/admin/unit_role/__init__.py diff --git a/tilavarauspalvelu/admin/unit_role/admin.py b/backend/tilavarauspalvelu/admin/unit_role/admin.py similarity index 100% rename from tilavarauspalvelu/admin/unit_role/admin.py rename to backend/tilavarauspalvelu/admin/unit_role/admin.py diff --git a/tilavarauspalvelu/admin/user/__init__.py b/backend/tilavarauspalvelu/admin/user/__init__.py similarity index 100% rename from tilavarauspalvelu/admin/user/__init__.py rename to backend/tilavarauspalvelu/admin/user/__init__.py diff --git a/tilavarauspalvelu/admin/user/admin.py b/backend/tilavarauspalvelu/admin/user/admin.py similarity index 100% rename from tilavarauspalvelu/admin/user/admin.py rename to backend/tilavarauspalvelu/admin/user/admin.py diff --git a/tilavarauspalvelu/api/__init__.py b/backend/tilavarauspalvelu/api/__init__.py similarity index 100% rename from tilavarauspalvelu/api/__init__.py rename to backend/tilavarauspalvelu/api/__init__.py diff --git a/tilavarauspalvelu/api/frontend_testing_api/__init__.py b/backend/tilavarauspalvelu/api/frontend_testing_api/__init__.py similarity index 100% rename from tilavarauspalvelu/api/frontend_testing_api/__init__.py rename to backend/tilavarauspalvelu/api/frontend_testing_api/__init__.py diff --git a/tilavarauspalvelu/api/frontend_testing_api/helpers.py b/backend/tilavarauspalvelu/api/frontend_testing_api/helpers.py similarity index 100% rename from tilavarauspalvelu/api/frontend_testing_api/helpers.py rename to backend/tilavarauspalvelu/api/frontend_testing_api/helpers.py diff --git a/tilavarauspalvelu/api/frontend_testing_api/reservation.py b/backend/tilavarauspalvelu/api/frontend_testing_api/reservation.py similarity index 100% rename from tilavarauspalvelu/api/frontend_testing_api/reservation.py rename to backend/tilavarauspalvelu/api/frontend_testing_api/reservation.py diff --git a/tilavarauspalvelu/api/frontend_testing_api/serializers.py b/backend/tilavarauspalvelu/api/frontend_testing_api/serializers.py similarity index 100% rename from tilavarauspalvelu/api/frontend_testing_api/serializers.py rename to backend/tilavarauspalvelu/api/frontend_testing_api/serializers.py diff --git a/tilavarauspalvelu/api/frontend_testing_api/urls.py b/backend/tilavarauspalvelu/api/frontend_testing_api/urls.py similarity index 100% rename from tilavarauspalvelu/api/frontend_testing_api/urls.py rename to backend/tilavarauspalvelu/api/frontend_testing_api/urls.py diff --git a/tilavarauspalvelu/api/frontend_testing_api/viewsets.py b/backend/tilavarauspalvelu/api/frontend_testing_api/viewsets.py similarity index 100% rename from tilavarauspalvelu/api/frontend_testing_api/viewsets.py rename to backend/tilavarauspalvelu/api/frontend_testing_api/viewsets.py diff --git a/tilavarauspalvelu/api/gdpr/__init__.py b/backend/tilavarauspalvelu/api/gdpr/__init__.py similarity index 100% rename from tilavarauspalvelu/api/gdpr/__init__.py rename to backend/tilavarauspalvelu/api/gdpr/__init__.py diff --git a/tilavarauspalvelu/api/gdpr/views.py b/backend/tilavarauspalvelu/api/gdpr/views.py similarity index 100% rename from tilavarauspalvelu/api/gdpr/views.py rename to backend/tilavarauspalvelu/api/gdpr/views.py diff --git a/tilavarauspalvelu/api/graphql/__init__.py b/backend/tilavarauspalvelu/api/graphql/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/__init__.py rename to backend/tilavarauspalvelu/api/graphql/__init__.py diff --git a/tilavarauspalvelu/api/graphql/extensions/__init__.py b/backend/tilavarauspalvelu/api/graphql/extensions/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/extensions/__init__.py rename to backend/tilavarauspalvelu/api/graphql/extensions/__init__.py diff --git a/tilavarauspalvelu/api/graphql/extensions/error_codes.py b/backend/tilavarauspalvelu/api/graphql/extensions/error_codes.py similarity index 100% rename from tilavarauspalvelu/api/graphql/extensions/error_codes.py rename to backend/tilavarauspalvelu/api/graphql/extensions/error_codes.py diff --git a/tilavarauspalvelu/api/graphql/extensions/filters.py b/backend/tilavarauspalvelu/api/graphql/extensions/filters.py similarity index 100% rename from tilavarauspalvelu/api/graphql/extensions/filters.py rename to backend/tilavarauspalvelu/api/graphql/extensions/filters.py diff --git a/tilavarauspalvelu/api/graphql/mutations.py b/backend/tilavarauspalvelu/api/graphql/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/mutations.py rename to backend/tilavarauspalvelu/api/graphql/mutations.py diff --git a/tilavarauspalvelu/api/graphql/queries.py b/backend/tilavarauspalvelu/api/graphql/queries.py similarity index 100% rename from tilavarauspalvelu/api/graphql/queries.py rename to backend/tilavarauspalvelu/api/graphql/queries.py diff --git a/tilavarauspalvelu/api/graphql/schema.py b/backend/tilavarauspalvelu/api/graphql/schema.py similarity index 100% rename from tilavarauspalvelu/api/graphql/schema.py rename to backend/tilavarauspalvelu/api/graphql/schema.py diff --git a/tilavarauspalvelu/api/graphql/types/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/ability_group/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/ability_group/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/ability_group/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/ability_group/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/ability_group/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/ability_group/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/ability_group/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/ability_group/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/ability_group/types.py b/backend/tilavarauspalvelu/api/graphql/types/ability_group/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/ability_group/types.py rename to backend/tilavarauspalvelu/api/graphql/types/ability_group/types.py diff --git a/tilavarauspalvelu/api/graphql/types/address/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/address/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/address/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/address/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/address/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/address/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/address/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/address/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/address/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/address/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/address/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/address/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/address/types.py b/backend/tilavarauspalvelu/api/graphql/types/address/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/address/types.py rename to backend/tilavarauspalvelu/api/graphql/types/address/types.py diff --git a/tilavarauspalvelu/api/graphql/types/age_group/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/age_group/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/age_group/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/age_group/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/age_group/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/age_group/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/age_group/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/age_group/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/age_group/types.py b/backend/tilavarauspalvelu/api/graphql/types/age_group/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/age_group/types.py rename to backend/tilavarauspalvelu/api/graphql/types/age_group/types.py diff --git a/tilavarauspalvelu/api/graphql/types/allocated_time_slot/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/allocated_time_slot/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/allocated_time_slot/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/allocated_time_slot/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/allocated_time_slot/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/allocated_time_slot/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/allocated_time_slot/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/allocated_time_slot/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/allocated_time_slot/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/allocated_time_slot/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/allocated_time_slot/types.py b/backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/allocated_time_slot/types.py rename to backend/tilavarauspalvelu/api/graphql/types/allocated_time_slot/types.py diff --git a/tilavarauspalvelu/api/graphql/types/application/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/application/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/application/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/application/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/application/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/application/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/application/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/application/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/application/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/application/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/application/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/application/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/application/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/application/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/application/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/application/types.py b/backend/tilavarauspalvelu/api/graphql/types/application/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application/types.py rename to backend/tilavarauspalvelu/api/graphql/types/application/types.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/application_round/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/application_round/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round/mutation.py b/backend/tilavarauspalvelu/api/graphql/types/application_round/mutation.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round/mutation.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round/mutation.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/application_round/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/application_round/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round/types.py b/backend/tilavarauspalvelu/api/graphql/types/application_round/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round/types.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round/types.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round_time_slot/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round_time_slot/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round_time_slot/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round_time_slot/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round_time_slot/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round_time_slot/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/application_round_time_slot/types.py b/backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_round_time_slot/types.py rename to backend/tilavarauspalvelu/api/graphql/types/application_round_time_slot/types.py diff --git a/tilavarauspalvelu/api/graphql/types/application_section/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/application_section/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_section/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/application_section/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/application_section/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/application_section/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_section/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/application_section/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/application_section/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/application_section/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_section/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/application_section/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/application_section/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/application_section/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_section/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/application_section/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/application_section/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/application_section/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_section/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/application_section/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/application_section/types.py b/backend/tilavarauspalvelu/api/graphql/types/application_section/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/application_section/types.py rename to backend/tilavarauspalvelu/api/graphql/types/application_section/types.py diff --git a/tilavarauspalvelu/api/graphql/types/banner_notification/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/banner_notification/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/banner_notification/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/banner_notification/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/banner_notification/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/banner_notification/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/banner_notification/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/banner_notification/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/banner_notification/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/banner_notification/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/banner_notification/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/banner_notification/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/banner_notification/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/banner_notification/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/banner_notification/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/banner_notification/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/banner_notification/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/banner_notification/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/banner_notification/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/banner_notification/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/banner_notification/types.py b/backend/tilavarauspalvelu/api/graphql/types/banner_notification/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/banner_notification/types.py rename to backend/tilavarauspalvelu/api/graphql/types/banner_notification/types.py diff --git a/tilavarauspalvelu/api/graphql/types/building/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/building/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/building/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/building/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/building/types.py b/backend/tilavarauspalvelu/api/graphql/types/building/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/building/types.py rename to backend/tilavarauspalvelu/api/graphql/types/building/types.py diff --git a/tilavarauspalvelu/api/graphql/types/city/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/city/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/city/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/city/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/city/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/city/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/city/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/city/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/city/types.py b/backend/tilavarauspalvelu/api/graphql/types/city/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/city/types.py rename to backend/tilavarauspalvelu/api/graphql/types/city/types.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/equipment/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/equipment/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/equipment/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/equipment/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/equipment/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment/types.py b/backend/tilavarauspalvelu/api/graphql/types/equipment/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment/types.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment/types.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment_category/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/equipment_category/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment_category/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment_category/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment_category/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/equipment_category/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment_category/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment_category/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment_category/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/equipment_category/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment_category/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment_category/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment_category/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/equipment_category/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment_category/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment_category/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment_category/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/equipment_category/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment_category/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment_category/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/equipment_category/types.py b/backend/tilavarauspalvelu/api/graphql/types/equipment_category/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/equipment_category/types.py rename to backend/tilavarauspalvelu/api/graphql/types/equipment_category/types.py diff --git a/tilavarauspalvelu/api/graphql/types/helsinki_profile/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/helsinki_profile/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/helsinki_profile/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/helsinki_profile/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/helsinki_profile/types.py b/backend/tilavarauspalvelu/api/graphql/types/helsinki_profile/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/helsinki_profile/types.py rename to backend/tilavarauspalvelu/api/graphql/types/helsinki_profile/types.py diff --git a/tilavarauspalvelu/api/graphql/types/location/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/location/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/location/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/location/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/location/types.py b/backend/tilavarauspalvelu/api/graphql/types/location/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/location/types.py rename to backend/tilavarauspalvelu/api/graphql/types/location/types.py diff --git a/tilavarauspalvelu/api/graphql/types/merchants/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/merchants/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/merchants/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/merchants/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/merchants/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/merchants/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/merchants/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/merchants/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/merchants/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/merchants/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/merchants/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/merchants/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/merchants/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/merchants/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/merchants/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/merchants/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/merchants/types.py b/backend/tilavarauspalvelu/api/graphql/types/merchants/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/merchants/types.py rename to backend/tilavarauspalvelu/api/graphql/types/merchants/types.py diff --git a/tilavarauspalvelu/api/graphql/types/organisation/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/organisation/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/organisation/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/organisation/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/organisation/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/organisation/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/organisation/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/organisation/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/organisation/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/organisation/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/organisation/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/organisation/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/organisation/types.py b/backend/tilavarauspalvelu/api/graphql/types/organisation/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/organisation/types.py rename to backend/tilavarauspalvelu/api/graphql/types/organisation/types.py diff --git a/tilavarauspalvelu/api/graphql/types/permissions/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/permissions/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/permissions/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/permissions/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/permissions/types.py b/backend/tilavarauspalvelu/api/graphql/types/permissions/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/permissions/types.py rename to backend/tilavarauspalvelu/api/graphql/types/permissions/types.py diff --git a/tilavarauspalvelu/api/graphql/types/person/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/person/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/person/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/person/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/person/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/person/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/person/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/person/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/person/types.py b/backend/tilavarauspalvelu/api/graphql/types/person/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/person/types.py rename to backend/tilavarauspalvelu/api/graphql/types/person/types.py diff --git a/tilavarauspalvelu/api/graphql/types/purpose/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/purpose/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/purpose/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/purpose/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/purpose/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/purpose/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/purpose/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/purpose/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/purpose/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/purpose/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/purpose/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/purpose/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/purpose/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/purpose/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/purpose/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/purpose/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/purpose/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/purpose/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/purpose/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/purpose/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/purpose/types.py b/backend/tilavarauspalvelu/api/graphql/types/purpose/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/purpose/types.py rename to backend/tilavarauspalvelu/api/graphql/types/purpose/types.py diff --git a/tilavarauspalvelu/api/graphql/types/qualifier/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/qualifier/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/qualifier/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/qualifier/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/qualifier/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/qualifier/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/qualifier/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/qualifier/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/qualifier/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/qualifier/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/qualifier/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/qualifier/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/qualifier/types.py b/backend/tilavarauspalvelu/api/graphql/types/qualifier/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/qualifier/types.py rename to backend/tilavarauspalvelu/api/graphql/types/qualifier/types.py diff --git a/tilavarauspalvelu/api/graphql/types/recurring_reservation/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/recurring_reservation/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/recurring_reservation/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/recurring_reservation/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/recurring_reservation/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/recurring_reservation/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/recurring_reservation/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/recurring_reservation/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/recurring_reservation/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/recurring_reservation/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/recurring_reservation/types.py b/backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/recurring_reservation/types.py rename to backend/tilavarauspalvelu/api/graphql/types/recurring_reservation/types.py diff --git a/tilavarauspalvelu/api/graphql/types/rejected_occurrence/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/rejected_occurrence/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/rejected_occurrence/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/rejected_occurrence/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/rejected_occurrence/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/rejected_occurrence/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/rejected_occurrence/types.py b/backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/rejected_occurrence/types.py rename to backend/tilavarauspalvelu/api/graphql/types/rejected_occurrence/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/adjust_time_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/adjust_time_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/adjust_time_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/adjust_time_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/approve_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/approve_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/approve_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/approve_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/cancellation_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/cancellation_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/cancellation_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/cancellation_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/confirm_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/confirm_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/confirm_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/confirm_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/create_serializer.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/create_serializer.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/create_serializer.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/create_serializer.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/deny_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/deny_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/deny_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/deny_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/memo_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/memo_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/memo_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/memo_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/refund_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/refund_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/refund_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/refund_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/requires_handling_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/requires_handling_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/requires_handling_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/requires_handling_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_adjust_time_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_adjust_time_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_adjust_time_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_adjust_time_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_change_access_code_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_change_access_code_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_change_access_code_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_change_access_code_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_create_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_create_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_create_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_create_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_repair_access_code_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_repair_access_code_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_repair_access_code_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_repair_access_code_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_reservation_modify_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_reservation_modify_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_reservation_modify_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/staff_reservation_modify_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/serializers/update_serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/update_serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/serializers/update_serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/serializers/update_serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/filersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/filersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/filersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/filersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_cancel_reason/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_deny_reason/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_deny_reason/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_deny_reason/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_deny_reason/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_metadata/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_metadata/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_metadata/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_metadata/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_metadata/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_metadata/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_metadata/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_metadata/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_metadata/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_metadata/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_metadata/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_metadata/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_purpose/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_purpose/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_purpose/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_purpose/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_purpose/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_purpose/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_purpose/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_purpose/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_purpose/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_cancellation_rule/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_image/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_image/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_image/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_image/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_image/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_image/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_image/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_image/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_image/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_image/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_image/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_option/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_option/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_option/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_option/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_option/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_option/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_option/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_option/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_option/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_option/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_option/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_option/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_option/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_payment_type/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_pricing/types.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_type/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_type/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_type/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_type/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_type/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_type/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/reservation_unit_type/types.py b/backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/reservation_unit_type/types.py rename to backend/tilavarauspalvelu/api/graphql/types/reservation_unit_type/types.py diff --git a/tilavarauspalvelu/api/graphql/types/resource/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/resource/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/resource/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/resource/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/resource/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/resource/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/resource/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/resource/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/resource/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/resource/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/resource/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/resource/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/resource/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/resource/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/resource/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/resource/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/resource/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/resource/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/resource/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/resource/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/resource/types.py b/backend/tilavarauspalvelu/api/graphql/types/resource/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/resource/types.py rename to backend/tilavarauspalvelu/api/graphql/types/resource/types.py diff --git a/tilavarauspalvelu/api/graphql/types/space/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/space/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/space/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/space/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/space/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/space/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/space/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/space/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/space/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/space/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/space/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/space/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/space/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/space/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/space/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/space/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/space/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/space/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/space/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/space/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/space/types.py b/backend/tilavarauspalvelu/api/graphql/types/space/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/space/types.py rename to backend/tilavarauspalvelu/api/graphql/types/space/types.py diff --git a/tilavarauspalvelu/api/graphql/types/suitable_time_range/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/suitable_time_range/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/suitable_time_range/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/suitable_time_range/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/suitable_time_range/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/suitable_time_range/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/suitable_time_range/types.py b/backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/suitable_time_range/types.py rename to backend/tilavarauspalvelu/api/graphql/types/suitable_time_range/types.py diff --git a/tilavarauspalvelu/api/graphql/types/tax_percentage/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/tax_percentage/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/tax_percentage/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/tax_percentage/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/tax_percentage/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/tax_percentage/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/tax_percentage/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/tax_percentage/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/tax_percentage/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/tax_percentage/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/tax_percentage/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/tax_percentage/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/tax_percentage/types.py b/backend/tilavarauspalvelu/api/graphql/types/tax_percentage/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/tax_percentage/types.py rename to backend/tilavarauspalvelu/api/graphql/types/tax_percentage/types.py diff --git a/tilavarauspalvelu/api/graphql/types/terms_of_use/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/terms_of_use/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/terms_of_use/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/terms_of_use/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/terms_of_use/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/terms_of_use/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/terms_of_use/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/terms_of_use/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/terms_of_use/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/terms_of_use/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/terms_of_use/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/terms_of_use/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/terms_of_use/types.py b/backend/tilavarauspalvelu/api/graphql/types/terms_of_use/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/terms_of_use/types.py rename to backend/tilavarauspalvelu/api/graphql/types/terms_of_use/types.py diff --git a/tilavarauspalvelu/api/graphql/types/unit/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/unit/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/unit/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/unit/filtersets.py b/backend/tilavarauspalvelu/api/graphql/types/unit/filtersets.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit/filtersets.py rename to backend/tilavarauspalvelu/api/graphql/types/unit/filtersets.py diff --git a/tilavarauspalvelu/api/graphql/types/unit/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/unit/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/unit/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/unit/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/unit/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/unit/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/unit/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/unit/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/unit/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/unit/types.py b/backend/tilavarauspalvelu/api/graphql/types/unit/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit/types.py rename to backend/tilavarauspalvelu/api/graphql/types/unit/types.py diff --git a/tilavarauspalvelu/api/graphql/types/unit_group/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/unit_group/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit_group/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/unit_group/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/unit_group/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/unit_group/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit_group/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/unit_group/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/unit_group/types.py b/backend/tilavarauspalvelu/api/graphql/types/unit_group/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/unit_group/types.py rename to backend/tilavarauspalvelu/api/graphql/types/unit_group/types.py diff --git a/tilavarauspalvelu/api/graphql/types/user/__init__.py b/backend/tilavarauspalvelu/api/graphql/types/user/__init__.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/user/__init__.py rename to backend/tilavarauspalvelu/api/graphql/types/user/__init__.py diff --git a/tilavarauspalvelu/api/graphql/types/user/mutations.py b/backend/tilavarauspalvelu/api/graphql/types/user/mutations.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/user/mutations.py rename to backend/tilavarauspalvelu/api/graphql/types/user/mutations.py diff --git a/tilavarauspalvelu/api/graphql/types/user/permissions.py b/backend/tilavarauspalvelu/api/graphql/types/user/permissions.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/user/permissions.py rename to backend/tilavarauspalvelu/api/graphql/types/user/permissions.py diff --git a/tilavarauspalvelu/api/graphql/types/user/serializers.py b/backend/tilavarauspalvelu/api/graphql/types/user/serializers.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/user/serializers.py rename to backend/tilavarauspalvelu/api/graphql/types/user/serializers.py diff --git a/tilavarauspalvelu/api/graphql/types/user/types.py b/backend/tilavarauspalvelu/api/graphql/types/user/types.py similarity index 100% rename from tilavarauspalvelu/api/graphql/types/user/types.py rename to backend/tilavarauspalvelu/api/graphql/types/user/types.py diff --git a/tilavarauspalvelu/api/helauth/__init__.py b/backend/tilavarauspalvelu/api/helauth/__init__.py similarity index 100% rename from tilavarauspalvelu/api/helauth/__init__.py rename to backend/tilavarauspalvelu/api/helauth/__init__.py diff --git a/tilavarauspalvelu/api/helauth/urls.py b/backend/tilavarauspalvelu/api/helauth/urls.py similarity index 100% rename from tilavarauspalvelu/api/helauth/urls.py rename to backend/tilavarauspalvelu/api/helauth/urls.py diff --git a/tilavarauspalvelu/api/helauth/views.py b/backend/tilavarauspalvelu/api/helauth/views.py similarity index 100% rename from tilavarauspalvelu/api/helauth/views.py rename to backend/tilavarauspalvelu/api/helauth/views.py diff --git a/tilavarauspalvelu/api/mock_verkkokauppa_api/__init__.py b/backend/tilavarauspalvelu/api/mock_verkkokauppa_api/__init__.py similarity index 100% rename from tilavarauspalvelu/api/mock_verkkokauppa_api/__init__.py rename to backend/tilavarauspalvelu/api/mock_verkkokauppa_api/__init__.py diff --git a/tilavarauspalvelu/api/mock_verkkokauppa_api/urls.py b/backend/tilavarauspalvelu/api/mock_verkkokauppa_api/urls.py similarity index 100% rename from tilavarauspalvelu/api/mock_verkkokauppa_api/urls.py rename to backend/tilavarauspalvelu/api/mock_verkkokauppa_api/urls.py diff --git a/tilavarauspalvelu/api/mock_verkkokauppa_api/views.py b/backend/tilavarauspalvelu/api/mock_verkkokauppa_api/views.py similarity index 100% rename from tilavarauspalvelu/api/mock_verkkokauppa_api/views.py rename to backend/tilavarauspalvelu/api/mock_verkkokauppa_api/views.py diff --git a/tilavarauspalvelu/api/palvelukartta/__init__.py b/backend/tilavarauspalvelu/api/palvelukartta/__init__.py similarity index 100% rename from tilavarauspalvelu/api/palvelukartta/__init__.py rename to backend/tilavarauspalvelu/api/palvelukartta/__init__.py diff --git a/tilavarauspalvelu/api/palvelukartta/urls.py b/backend/tilavarauspalvelu/api/palvelukartta/urls.py similarity index 100% rename from tilavarauspalvelu/api/palvelukartta/urls.py rename to backend/tilavarauspalvelu/api/palvelukartta/urls.py diff --git a/tilavarauspalvelu/api/palvelukartta/views.py b/backend/tilavarauspalvelu/api/palvelukartta/views.py similarity index 100% rename from tilavarauspalvelu/api/palvelukartta/views.py rename to backend/tilavarauspalvelu/api/palvelukartta/views.py diff --git a/tilavarauspalvelu/api/rest/__init__.py b/backend/tilavarauspalvelu/api/rest/__init__.py similarity index 100% rename from tilavarauspalvelu/api/rest/__init__.py rename to backend/tilavarauspalvelu/api/rest/__init__.py diff --git a/tilavarauspalvelu/api/rest/views.py b/backend/tilavarauspalvelu/api/rest/views.py similarity index 100% rename from tilavarauspalvelu/api/rest/views.py rename to backend/tilavarauspalvelu/api/rest/views.py diff --git a/tilavarauspalvelu/api/webhooks/__init__.py b/backend/tilavarauspalvelu/api/webhooks/__init__.py similarity index 100% rename from tilavarauspalvelu/api/webhooks/__init__.py rename to backend/tilavarauspalvelu/api/webhooks/__init__.py diff --git a/tilavarauspalvelu/api/webhooks/permissions.py b/backend/tilavarauspalvelu/api/webhooks/permissions.py similarity index 100% rename from tilavarauspalvelu/api/webhooks/permissions.py rename to backend/tilavarauspalvelu/api/webhooks/permissions.py diff --git a/tilavarauspalvelu/api/webhooks/serializers.py b/backend/tilavarauspalvelu/api/webhooks/serializers.py similarity index 100% rename from tilavarauspalvelu/api/webhooks/serializers.py rename to backend/tilavarauspalvelu/api/webhooks/serializers.py diff --git a/tilavarauspalvelu/api/webhooks/urls.py b/backend/tilavarauspalvelu/api/webhooks/urls.py similarity index 100% rename from tilavarauspalvelu/api/webhooks/urls.py rename to backend/tilavarauspalvelu/api/webhooks/urls.py diff --git a/tilavarauspalvelu/api/webhooks/views.py b/backend/tilavarauspalvelu/api/webhooks/views.py similarity index 100% rename from tilavarauspalvelu/api/webhooks/views.py rename to backend/tilavarauspalvelu/api/webhooks/views.py diff --git a/tilavarauspalvelu/apps.py b/backend/tilavarauspalvelu/apps.py similarity index 100% rename from tilavarauspalvelu/apps.py rename to backend/tilavarauspalvelu/apps.py diff --git a/tilavarauspalvelu/constants.py b/backend/tilavarauspalvelu/constants.py similarity index 100% rename from tilavarauspalvelu/constants.py rename to backend/tilavarauspalvelu/constants.py diff --git a/tilavarauspalvelu/dataclasses.py b/backend/tilavarauspalvelu/dataclasses.py similarity index 100% rename from tilavarauspalvelu/dataclasses.py rename to backend/tilavarauspalvelu/dataclasses.py diff --git a/tilavarauspalvelu/enums.py b/backend/tilavarauspalvelu/enums.py similarity index 100% rename from tilavarauspalvelu/enums.py rename to backend/tilavarauspalvelu/enums.py diff --git a/tilavarauspalvelu/exceptions.py b/backend/tilavarauspalvelu/exceptions.py similarity index 100% rename from tilavarauspalvelu/exceptions.py rename to backend/tilavarauspalvelu/exceptions.py diff --git a/tilavarauspalvelu/integrations/__init__.py b/backend/tilavarauspalvelu/integrations/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/__init__.py rename to backend/tilavarauspalvelu/integrations/__init__.py diff --git a/tilavarauspalvelu/integrations/email/__init__.py b/backend/tilavarauspalvelu/integrations/email/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/email/__init__.py rename to backend/tilavarauspalvelu/integrations/email/__init__.py diff --git a/tilavarauspalvelu/integrations/email/attachements.py b/backend/tilavarauspalvelu/integrations/email/attachements.py similarity index 100% rename from tilavarauspalvelu/integrations/email/attachements.py rename to backend/tilavarauspalvelu/integrations/email/attachements.py diff --git a/tilavarauspalvelu/integrations/email/find_language.py b/backend/tilavarauspalvelu/integrations/email/find_language.py similarity index 100% rename from tilavarauspalvelu/integrations/email/find_language.py rename to backend/tilavarauspalvelu/integrations/email/find_language.py diff --git a/tilavarauspalvelu/integrations/email/find_recipients.py b/backend/tilavarauspalvelu/integrations/email/find_recipients.py similarity index 100% rename from tilavarauspalvelu/integrations/email/find_recipients.py rename to backend/tilavarauspalvelu/integrations/email/find_recipients.py diff --git a/tilavarauspalvelu/integrations/email/main.py b/backend/tilavarauspalvelu/integrations/email/main.py similarity index 100% rename from tilavarauspalvelu/integrations/email/main.py rename to backend/tilavarauspalvelu/integrations/email/main.py diff --git a/tilavarauspalvelu/integrations/email/rendering.py b/backend/tilavarauspalvelu/integrations/email/rendering.py similarity index 100% rename from tilavarauspalvelu/integrations/email/rendering.py rename to backend/tilavarauspalvelu/integrations/email/rendering.py diff --git a/tilavarauspalvelu/integrations/email/sending.py b/backend/tilavarauspalvelu/integrations/email/sending.py similarity index 100% rename from tilavarauspalvelu/integrations/email/sending.py rename to backend/tilavarauspalvelu/integrations/email/sending.py diff --git a/tilavarauspalvelu/integrations/email/template_context/__init__.py b/backend/tilavarauspalvelu/integrations/email/template_context/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/email/template_context/__init__.py rename to backend/tilavarauspalvelu/integrations/email/template_context/__init__.py diff --git a/tilavarauspalvelu/integrations/email/template_context/application.py b/backend/tilavarauspalvelu/integrations/email/template_context/application.py similarity index 100% rename from tilavarauspalvelu/integrations/email/template_context/application.py rename to backend/tilavarauspalvelu/integrations/email/template_context/application.py diff --git a/tilavarauspalvelu/integrations/email/template_context/common.py b/backend/tilavarauspalvelu/integrations/email/template_context/common.py similarity index 100% rename from tilavarauspalvelu/integrations/email/template_context/common.py rename to backend/tilavarauspalvelu/integrations/email/template_context/common.py diff --git a/tilavarauspalvelu/integrations/email/template_context/permissions.py b/backend/tilavarauspalvelu/integrations/email/template_context/permissions.py similarity index 100% rename from tilavarauspalvelu/integrations/email/template_context/permissions.py rename to backend/tilavarauspalvelu/integrations/email/template_context/permissions.py diff --git a/tilavarauspalvelu/integrations/email/template_context/reservation.py b/backend/tilavarauspalvelu/integrations/email/template_context/reservation.py similarity index 100% rename from tilavarauspalvelu/integrations/email/template_context/reservation.py rename to backend/tilavarauspalvelu/integrations/email/template_context/reservation.py diff --git a/tilavarauspalvelu/integrations/email/typing.py b/backend/tilavarauspalvelu/integrations/email/typing.py similarity index 100% rename from tilavarauspalvelu/integrations/email/typing.py rename to backend/tilavarauspalvelu/integrations/email/typing.py diff --git a/tilavarauspalvelu/integrations/helauth/__init__.py b/backend/tilavarauspalvelu/integrations/helauth/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/helauth/__init__.py rename to backend/tilavarauspalvelu/integrations/helauth/__init__.py diff --git a/tilavarauspalvelu/integrations/helauth/clients.py b/backend/tilavarauspalvelu/integrations/helauth/clients.py similarity index 100% rename from tilavarauspalvelu/integrations/helauth/clients.py rename to backend/tilavarauspalvelu/integrations/helauth/clients.py diff --git a/tilavarauspalvelu/integrations/helauth/pipeline.py b/backend/tilavarauspalvelu/integrations/helauth/pipeline.py similarity index 100% rename from tilavarauspalvelu/integrations/helauth/pipeline.py rename to backend/tilavarauspalvelu/integrations/helauth/pipeline.py diff --git a/tilavarauspalvelu/integrations/helauth/typing.py b/backend/tilavarauspalvelu/integrations/helauth/typing.py similarity index 100% rename from tilavarauspalvelu/integrations/helauth/typing.py rename to backend/tilavarauspalvelu/integrations/helauth/typing.py diff --git a/tilavarauspalvelu/integrations/helsinki_profile/__init__.py b/backend/tilavarauspalvelu/integrations/helsinki_profile/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/helsinki_profile/__init__.py rename to backend/tilavarauspalvelu/integrations/helsinki_profile/__init__.py diff --git a/tilavarauspalvelu/integrations/helsinki_profile/clients.py b/backend/tilavarauspalvelu/integrations/helsinki_profile/clients.py similarity index 100% rename from tilavarauspalvelu/integrations/helsinki_profile/clients.py rename to backend/tilavarauspalvelu/integrations/helsinki_profile/clients.py diff --git a/tilavarauspalvelu/integrations/helsinki_profile/parsers.py b/backend/tilavarauspalvelu/integrations/helsinki_profile/parsers.py similarity index 100% rename from tilavarauspalvelu/integrations/helsinki_profile/parsers.py rename to backend/tilavarauspalvelu/integrations/helsinki_profile/parsers.py diff --git a/tilavarauspalvelu/integrations/helsinki_profile/typing.py b/backend/tilavarauspalvelu/integrations/helsinki_profile/typing.py similarity index 100% rename from tilavarauspalvelu/integrations/helsinki_profile/typing.py rename to backend/tilavarauspalvelu/integrations/helsinki_profile/typing.py diff --git a/tilavarauspalvelu/integrations/image_cache.py b/backend/tilavarauspalvelu/integrations/image_cache.py similarity index 100% rename from tilavarauspalvelu/integrations/image_cache.py rename to backend/tilavarauspalvelu/integrations/image_cache.py diff --git a/tilavarauspalvelu/integrations/keyless_entry/__init__.py b/backend/tilavarauspalvelu/integrations/keyless_entry/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/keyless_entry/__init__.py rename to backend/tilavarauspalvelu/integrations/keyless_entry/__init__.py diff --git a/tilavarauspalvelu/integrations/keyless_entry/client.py b/backend/tilavarauspalvelu/integrations/keyless_entry/client.py similarity index 100% rename from tilavarauspalvelu/integrations/keyless_entry/client.py rename to backend/tilavarauspalvelu/integrations/keyless_entry/client.py diff --git a/tilavarauspalvelu/integrations/keyless_entry/exceptions.py b/backend/tilavarauspalvelu/integrations/keyless_entry/exceptions.py similarity index 100% rename from tilavarauspalvelu/integrations/keyless_entry/exceptions.py rename to backend/tilavarauspalvelu/integrations/keyless_entry/exceptions.py diff --git a/tilavarauspalvelu/integrations/keyless_entry/typing.py b/backend/tilavarauspalvelu/integrations/keyless_entry/typing.py similarity index 100% rename from tilavarauspalvelu/integrations/keyless_entry/typing.py rename to backend/tilavarauspalvelu/integrations/keyless_entry/typing.py diff --git a/tilavarauspalvelu/integrations/opening_hours/__init__.py b/backend/tilavarauspalvelu/integrations/opening_hours/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/__init__.py rename to backend/tilavarauspalvelu/integrations/opening_hours/__init__.py diff --git a/tilavarauspalvelu/integrations/opening_hours/hauki_api_client.py b/backend/tilavarauspalvelu/integrations/opening_hours/hauki_api_client.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/hauki_api_client.py rename to backend/tilavarauspalvelu/integrations/opening_hours/hauki_api_client.py diff --git a/tilavarauspalvelu/integrations/opening_hours/hauki_api_types.py b/backend/tilavarauspalvelu/integrations/opening_hours/hauki_api_types.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/hauki_api_types.py rename to backend/tilavarauspalvelu/integrations/opening_hours/hauki_api_types.py diff --git a/tilavarauspalvelu/integrations/opening_hours/hauki_link_generator.py b/backend/tilavarauspalvelu/integrations/opening_hours/hauki_link_generator.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/hauki_link_generator.py rename to backend/tilavarauspalvelu/integrations/opening_hours/hauki_link_generator.py diff --git a/tilavarauspalvelu/integrations/opening_hours/hauki_resource_hash_updater.py b/backend/tilavarauspalvelu/integrations/opening_hours/hauki_resource_hash_updater.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/hauki_resource_hash_updater.py rename to backend/tilavarauspalvelu/integrations/opening_hours/hauki_resource_hash_updater.py diff --git a/tilavarauspalvelu/integrations/opening_hours/reservable_time_span_client.py b/backend/tilavarauspalvelu/integrations/opening_hours/reservable_time_span_client.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/reservable_time_span_client.py rename to backend/tilavarauspalvelu/integrations/opening_hours/reservable_time_span_client.py diff --git a/tilavarauspalvelu/integrations/opening_hours/summaries.py b/backend/tilavarauspalvelu/integrations/opening_hours/summaries.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/summaries.py rename to backend/tilavarauspalvelu/integrations/opening_hours/summaries.py diff --git a/tilavarauspalvelu/integrations/opening_hours/time_span_element.py b/backend/tilavarauspalvelu/integrations/opening_hours/time_span_element.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/time_span_element.py rename to backend/tilavarauspalvelu/integrations/opening_hours/time_span_element.py diff --git a/tilavarauspalvelu/integrations/opening_hours/time_span_element_utils.py b/backend/tilavarauspalvelu/integrations/opening_hours/time_span_element_utils.py similarity index 100% rename from tilavarauspalvelu/integrations/opening_hours/time_span_element_utils.py rename to backend/tilavarauspalvelu/integrations/opening_hours/time_span_element_utils.py diff --git a/tilavarauspalvelu/integrations/sentry.py b/backend/tilavarauspalvelu/integrations/sentry.py similarity index 100% rename from tilavarauspalvelu/integrations/sentry.py rename to backend/tilavarauspalvelu/integrations/sentry.py diff --git a/tilavarauspalvelu/integrations/tprek/__init__.py b/backend/tilavarauspalvelu/integrations/tprek/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/tprek/__init__.py rename to backend/tilavarauspalvelu/integrations/tprek/__init__.py diff --git a/tilavarauspalvelu/integrations/tprek/tprek_api_client.py b/backend/tilavarauspalvelu/integrations/tprek/tprek_api_client.py similarity index 100% rename from tilavarauspalvelu/integrations/tprek/tprek_api_client.py rename to backend/tilavarauspalvelu/integrations/tprek/tprek_api_client.py diff --git a/tilavarauspalvelu/integrations/tprek/tprek_unit_importer.py b/backend/tilavarauspalvelu/integrations/tprek/tprek_unit_importer.py similarity index 100% rename from tilavarauspalvelu/integrations/tprek/tprek_unit_importer.py rename to backend/tilavarauspalvelu/integrations/tprek/tprek_unit_importer.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/__init__.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/__init__.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/__init__.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/constants.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/constants.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/constants.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/constants.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/exceptions.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/exceptions.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/exceptions.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/exceptions.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/helpers.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/helpers.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/helpers.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/helpers.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/merchants/__init__.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/merchants/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/merchants/__init__.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/merchants/__init__.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/merchants/exceptions.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/merchants/exceptions.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/merchants/exceptions.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/merchants/exceptions.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/merchants/types.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/merchants/types.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/merchants/types.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/merchants/types.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/order/__init__.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/order/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/order/__init__.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/order/__init__.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/order/exceptions.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/order/exceptions.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/order/exceptions.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/order/exceptions.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/order/types.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/order/types.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/order/types.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/order/types.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/payment/__init__.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/payment/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/payment/__init__.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/payment/__init__.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/payment/exceptions.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/payment/exceptions.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/payment/exceptions.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/payment/exceptions.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/payment/types.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/payment/types.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/payment/types.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/payment/types.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/product/__init__.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/product/__init__.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/product/__init__.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/product/__init__.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/product/exceptions.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/product/exceptions.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/product/exceptions.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/product/exceptions.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/product/types.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/product/types.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/product/types.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/product/types.py diff --git a/tilavarauspalvelu/integrations/verkkokauppa/verkkokauppa_api_client.py b/backend/tilavarauspalvelu/integrations/verkkokauppa/verkkokauppa_api_client.py similarity index 100% rename from tilavarauspalvelu/integrations/verkkokauppa/verkkokauppa_api_client.py rename to backend/tilavarauspalvelu/integrations/verkkokauppa/verkkokauppa_api_client.py diff --git a/tilavarauspalvelu/management/__init__.py b/backend/tilavarauspalvelu/management/__init__.py similarity index 100% rename from tilavarauspalvelu/management/__init__.py rename to backend/tilavarauspalvelu/management/__init__.py diff --git a/tilavarauspalvelu/management/commands/__init__.py b/backend/tilavarauspalvelu/management/commands/__init__.py similarity index 100% rename from tilavarauspalvelu/management/commands/__init__.py rename to backend/tilavarauspalvelu/management/commands/__init__.py diff --git a/tilavarauspalvelu/management/commands/create_missing_statistics.py b/backend/tilavarauspalvelu/management/commands/create_missing_statistics.py similarity index 100% rename from tilavarauspalvelu/management/commands/create_missing_statistics.py rename to backend/tilavarauspalvelu/management/commands/create_missing_statistics.py diff --git a/tilavarauspalvelu/management/commands/create_test_data.py b/backend/tilavarauspalvelu/management/commands/create_test_data.py similarity index 100% rename from tilavarauspalvelu/management/commands/create_test_data.py rename to backend/tilavarauspalvelu/management/commands/create_test_data.py diff --git a/tilavarauspalvelu/management/commands/data_creation/__init__.py b/backend/tilavarauspalvelu/management/commands/data_creation/__init__.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/__init__.py rename to backend/tilavarauspalvelu/management/commands/data_creation/__init__.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_caisa.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_caisa.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_caisa.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_caisa.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_misc.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_misc.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_misc.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_misc.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_permissions.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_permissions.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_permissions.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_permissions.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_reservation_related_things.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_reservation_related_things.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_reservation_related_things.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_reservation_related_things.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_reservation_units.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_reservation_units.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_reservation_units.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_reservation_units.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_reservations.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_reservations.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_reservations.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_reservations.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_seasonal_booking.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_seasonal_booking.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_seasonal_booking.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_seasonal_booking.py diff --git a/tilavarauspalvelu/management/commands/data_creation/create_users.py b/backend/tilavarauspalvelu/management/commands/data_creation/create_users.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/create_users.py rename to backend/tilavarauspalvelu/management/commands/data_creation/create_users.py diff --git a/tilavarauspalvelu/management/commands/data_creation/main.py b/backend/tilavarauspalvelu/management/commands/data_creation/main.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/main.py rename to backend/tilavarauspalvelu/management/commands/data_creation/main.py diff --git a/tilavarauspalvelu/management/commands/data_creation/utils.py b/backend/tilavarauspalvelu/management/commands/data_creation/utils.py similarity index 100% rename from tilavarauspalvelu/management/commands/data_creation/utils.py rename to backend/tilavarauspalvelu/management/commands/data_creation/utils.py diff --git a/tilavarauspalvelu/management/commands/export_reservation_units.py b/backend/tilavarauspalvelu/management/commands/export_reservation_units.py similarity index 100% rename from tilavarauspalvelu/management/commands/export_reservation_units.py rename to backend/tilavarauspalvelu/management/commands/export_reservation_units.py diff --git a/tilavarauspalvelu/management/commands/maketranslations.py b/backend/tilavarauspalvelu/management/commands/maketranslations.py similarity index 100% rename from tilavarauspalvelu/management/commands/maketranslations.py rename to backend/tilavarauspalvelu/management/commands/maketranslations.py diff --git a/tilavarauspalvelu/management/commands/update_hauki_hashes.py b/backend/tilavarauspalvelu/management/commands/update_hauki_hashes.py similarity index 100% rename from tilavarauspalvelu/management/commands/update_hauki_hashes.py rename to backend/tilavarauspalvelu/management/commands/update_hauki_hashes.py diff --git a/tilavarauspalvelu/migrations/0001_initial.py b/backend/tilavarauspalvelu/migrations/0001_initial.py similarity index 100% rename from tilavarauspalvelu/migrations/0001_initial.py rename to backend/tilavarauspalvelu/migrations/0001_initial.py diff --git a/tilavarauspalvelu/migrations/0002_migrate_users.py b/backend/tilavarauspalvelu/migrations/0002_migrate_users.py similarity index 100% rename from tilavarauspalvelu/migrations/0002_migrate_users.py rename to backend/tilavarauspalvelu/migrations/0002_migrate_users.py diff --git a/tilavarauspalvelu/migrations/0003_migrate_services.py b/backend/tilavarauspalvelu/migrations/0003_migrate_services.py similarity index 100% rename from tilavarauspalvelu/migrations/0003_migrate_services.py rename to backend/tilavarauspalvelu/migrations/0003_migrate_services.py diff --git a/tilavarauspalvelu/migrations/0004_migrate_terms_of_use.py b/backend/tilavarauspalvelu/migrations/0004_migrate_terms_of_use.py similarity index 100% rename from tilavarauspalvelu/migrations/0004_migrate_terms_of_use.py rename to backend/tilavarauspalvelu/migrations/0004_migrate_terms_of_use.py diff --git a/tilavarauspalvelu/migrations/0005_migrate_merchants.py b/backend/tilavarauspalvelu/migrations/0005_migrate_merchants.py similarity index 100% rename from tilavarauspalvelu/migrations/0005_migrate_merchants.py rename to backend/tilavarauspalvelu/migrations/0005_migrate_merchants.py diff --git a/tilavarauspalvelu/migrations/0006_migrate_resources.py b/backend/tilavarauspalvelu/migrations/0006_migrate_resources.py similarity index 100% rename from tilavarauspalvelu/migrations/0006_migrate_resources.py rename to backend/tilavarauspalvelu/migrations/0006_migrate_resources.py diff --git a/tilavarauspalvelu/migrations/0007_migrate_spaces.py b/backend/tilavarauspalvelu/migrations/0007_migrate_spaces.py similarity index 100% rename from tilavarauspalvelu/migrations/0007_migrate_spaces.py rename to backend/tilavarauspalvelu/migrations/0007_migrate_spaces.py diff --git a/tilavarauspalvelu/migrations/0008_migrate_permissions.py b/backend/tilavarauspalvelu/migrations/0008_migrate_permissions.py similarity index 100% rename from tilavarauspalvelu/migrations/0008_migrate_permissions.py rename to backend/tilavarauspalvelu/migrations/0008_migrate_permissions.py diff --git a/tilavarauspalvelu/migrations/0009_migrate_email_template.py b/backend/tilavarauspalvelu/migrations/0009_migrate_email_template.py similarity index 100% rename from tilavarauspalvelu/migrations/0009_migrate_email_template.py rename to backend/tilavarauspalvelu/migrations/0009_migrate_email_template.py diff --git a/tilavarauspalvelu/migrations/0010_migrate_opening_hours.py b/backend/tilavarauspalvelu/migrations/0010_migrate_opening_hours.py similarity index 100% rename from tilavarauspalvelu/migrations/0010_migrate_opening_hours.py rename to backend/tilavarauspalvelu/migrations/0010_migrate_opening_hours.py diff --git a/tilavarauspalvelu/migrations/0011_migrate_reservations.py b/backend/tilavarauspalvelu/migrations/0011_migrate_reservations.py similarity index 100% rename from tilavarauspalvelu/migrations/0011_migrate_reservations.py rename to backend/tilavarauspalvelu/migrations/0011_migrate_reservations.py diff --git a/tilavarauspalvelu/migrations/0012_migrate_reservation_units.py b/backend/tilavarauspalvelu/migrations/0012_migrate_reservation_units.py similarity index 100% rename from tilavarauspalvelu/migrations/0012_migrate_reservation_units.py rename to backend/tilavarauspalvelu/migrations/0012_migrate_reservation_units.py diff --git a/tilavarauspalvelu/migrations/0013_migrate_applications.py b/backend/tilavarauspalvelu/migrations/0013_migrate_applications.py similarity index 100% rename from tilavarauspalvelu/migrations/0013_migrate_applications.py rename to backend/tilavarauspalvelu/migrations/0013_migrate_applications.py diff --git a/tilavarauspalvelu/migrations/0014_migrate_common.py b/backend/tilavarauspalvelu/migrations/0014_migrate_common.py similarity index 100% rename from tilavarauspalvelu/migrations/0014_migrate_common.py rename to backend/tilavarauspalvelu/migrations/0014_migrate_common.py diff --git a/tilavarauspalvelu/migrations/0015_remove_email_content_fields.py b/backend/tilavarauspalvelu/migrations/0015_remove_email_content_fields.py similarity index 100% rename from tilavarauspalvelu/migrations/0015_remove_email_content_fields.py rename to backend/tilavarauspalvelu/migrations/0015_remove_email_content_fields.py diff --git a/tilavarauspalvelu/migrations/0016_rename_email_types_part_1.py b/backend/tilavarauspalvelu/migrations/0016_rename_email_types_part_1.py similarity index 100% rename from tilavarauspalvelu/migrations/0016_rename_email_types_part_1.py rename to backend/tilavarauspalvelu/migrations/0016_rename_email_types_part_1.py diff --git a/tilavarauspalvelu/migrations/0017_rename_email_types_part_2.py b/backend/tilavarauspalvelu/migrations/0017_rename_email_types_part_2.py similarity index 100% rename from tilavarauspalvelu/migrations/0017_rename_email_types_part_2.py rename to backend/tilavarauspalvelu/migrations/0017_rename_email_types_part_2.py diff --git a/tilavarauspalvelu/migrations/0018_rename_email_types_part_3.py b/backend/tilavarauspalvelu/migrations/0018_rename_email_types_part_3.py similarity index 100% rename from tilavarauspalvelu/migrations/0018_rename_email_types_part_3.py rename to backend/tilavarauspalvelu/migrations/0018_rename_email_types_part_3.py diff --git a/tilavarauspalvelu/migrations/0019_add_now_tt.py b/backend/tilavarauspalvelu/migrations/0019_add_now_tt.py similarity index 100% rename from tilavarauspalvelu/migrations/0019_add_now_tt.py rename to backend/tilavarauspalvelu/migrations/0019_add_now_tt.py diff --git a/tilavarauspalvelu/migrations/0020_delete_emailtemplate.py b/backend/tilavarauspalvelu/migrations/0020_delete_emailtemplate.py similarity index 100% rename from tilavarauspalvelu/migrations/0020_delete_emailtemplate.py rename to backend/tilavarauspalvelu/migrations/0020_delete_emailtemplate.py diff --git a/tilavarauspalvelu/migrations/0021_generalrole_role_active_unitrole_role_active.py b/backend/tilavarauspalvelu/migrations/0021_generalrole_role_active_unitrole_role_active.py similarity index 100% rename from tilavarauspalvelu/migrations/0021_generalrole_role_active_unitrole_role_active.py rename to backend/tilavarauspalvelu/migrations/0021_generalrole_role_active_unitrole_role_active.py diff --git a/tilavarauspalvelu/migrations/0022_user_sent_email_about_deactivating_permissions.py b/backend/tilavarauspalvelu/migrations/0022_user_sent_email_about_deactivating_permissions.py similarity index 100% rename from tilavarauspalvelu/migrations/0022_user_sent_email_about_deactivating_permissions.py rename to backend/tilavarauspalvelu/migrations/0022_user_sent_email_about_deactivating_permissions.py diff --git a/tilavarauspalvelu/migrations/0023_user_sent_email_about_anonymization.py b/backend/tilavarauspalvelu/migrations/0023_user_sent_email_about_anonymization.py similarity index 100% rename from tilavarauspalvelu/migrations/0023_user_sent_email_about_anonymization.py rename to backend/tilavarauspalvelu/migrations/0023_user_sent_email_about_anonymization.py diff --git a/tilavarauspalvelu/migrations/0024_cleanup_models.py b/backend/tilavarauspalvelu/migrations/0024_cleanup_models.py similarity index 100% rename from tilavarauspalvelu/migrations/0024_cleanup_models.py rename to backend/tilavarauspalvelu/migrations/0024_cleanup_models.py diff --git a/tilavarauspalvelu/migrations/0025_remove_duplicate_date_pricings.py b/backend/tilavarauspalvelu/migrations/0025_remove_duplicate_date_pricings.py similarity index 100% rename from tilavarauspalvelu/migrations/0025_remove_duplicate_date_pricings.py rename to backend/tilavarauspalvelu/migrations/0025_remove_duplicate_date_pricings.py diff --git a/tilavarauspalvelu/migrations/0026_add_pricing_date_constraint.py b/backend/tilavarauspalvelu/migrations/0026_add_pricing_date_constraint.py similarity index 100% rename from tilavarauspalvelu/migrations/0026_add_pricing_date_constraint.py rename to backend/tilavarauspalvelu/migrations/0026_add_pricing_date_constraint.py diff --git a/tilavarauspalvelu/migrations/0027_modify_pricing_fieds.py b/backend/tilavarauspalvelu/migrations/0027_modify_pricing_fieds.py similarity index 100% rename from tilavarauspalvelu/migrations/0027_modify_pricing_fieds.py rename to backend/tilavarauspalvelu/migrations/0027_modify_pricing_fieds.py diff --git a/tilavarauspalvelu/migrations/0028_fix_rank_fields.py b/backend/tilavarauspalvelu/migrations/0028_fix_rank_fields.py similarity index 100% rename from tilavarauspalvelu/migrations/0028_fix_rank_fields.py rename to backend/tilavarauspalvelu/migrations/0028_fix_rank_fields.py diff --git a/tilavarauspalvelu/migrations/0029_add_old_application_rounds_notification_dates.py b/backend/tilavarauspalvelu/migrations/0029_add_old_application_rounds_notification_dates.py similarity index 100% rename from tilavarauspalvelu/migrations/0029_add_old_application_rounds_notification_dates.py rename to backend/tilavarauspalvelu/migrations/0029_add_old_application_rounds_notification_dates.py diff --git a/tilavarauspalvelu/migrations/0030_determine_preferred_language.py b/backend/tilavarauspalvelu/migrations/0030_determine_preferred_language.py similarity index 100% rename from tilavarauspalvelu/migrations/0030_determine_preferred_language.py rename to backend/tilavarauspalvelu/migrations/0030_determine_preferred_language.py diff --git a/tilavarauspalvelu/migrations/0031_alter_user_preferred_language.py b/backend/tilavarauspalvelu/migrations/0031_alter_user_preferred_language.py similarity index 100% rename from tilavarauspalvelu/migrations/0031_alter_user_preferred_language.py rename to backend/tilavarauspalvelu/migrations/0031_alter_user_preferred_language.py diff --git a/tilavarauspalvelu/migrations/0032_delete_servicesector.py b/backend/tilavarauspalvelu/migrations/0032_delete_servicesector.py similarity index 100% rename from tilavarauspalvelu/migrations/0032_delete_servicesector.py rename to backend/tilavarauspalvelu/migrations/0032_delete_servicesector.py diff --git a/tilavarauspalvelu/migrations/0033_delete_service.py b/backend/tilavarauspalvelu/migrations/0033_delete_service.py similarity index 100% rename from tilavarauspalvelu/migrations/0033_delete_service.py rename to backend/tilavarauspalvelu/migrations/0033_delete_service.py diff --git a/tilavarauspalvelu/migrations/0034_delete_real_estate.py b/backend/tilavarauspalvelu/migrations/0034_delete_real_estate.py similarity index 100% rename from tilavarauspalvelu/migrations/0034_delete_real_estate.py rename to backend/tilavarauspalvelu/migrations/0034_delete_real_estate.py diff --git a/tilavarauspalvelu/migrations/0035_delete_building.py b/backend/tilavarauspalvelu/migrations/0035_delete_building.py similarity index 100% rename from tilavarauspalvelu/migrations/0035_delete_building.py rename to backend/tilavarauspalvelu/migrations/0035_delete_building.py diff --git a/tilavarauspalvelu/migrations/0036_delete_introduction.py b/backend/tilavarauspalvelu/migrations/0036_delete_introduction.py similarity index 100% rename from tilavarauspalvelu/migrations/0036_delete_introduction.py rename to backend/tilavarauspalvelu/migrations/0036_delete_introduction.py diff --git a/tilavarauspalvelu/migrations/0037_delete_keywords.py b/backend/tilavarauspalvelu/migrations/0037_delete_keywords.py similarity index 100% rename from tilavarauspalvelu/migrations/0037_delete_keywords.py rename to backend/tilavarauspalvelu/migrations/0037_delete_keywords.py diff --git a/tilavarauspalvelu/migrations/0038_remove_resource_buffer_time_after_and_more.py b/backend/tilavarauspalvelu/migrations/0038_remove_resource_buffer_time_after_and_more.py similarity index 100% rename from tilavarauspalvelu/migrations/0038_remove_resource_buffer_time_after_and_more.py rename to backend/tilavarauspalvelu/migrations/0038_remove_resource_buffer_time_after_and_more.py diff --git a/tilavarauspalvelu/migrations/0039_remove_reservationunitcancellationrule_needs_handling.py b/backend/tilavarauspalvelu/migrations/0039_remove_reservationunitcancellationrule_needs_handling.py similarity index 100% rename from tilavarauspalvelu/migrations/0039_remove_reservationunitcancellationrule_needs_handling.py rename to backend/tilavarauspalvelu/migrations/0039_remove_reservationunitcancellationrule_needs_handling.py diff --git a/tilavarauspalvelu/migrations/0040_alter_reservationstatisticsreservationunit_unit_tprek_id.py b/backend/tilavarauspalvelu/migrations/0040_alter_reservationstatisticsreservationunit_unit_tprek_id.py similarity index 100% rename from tilavarauspalvelu/migrations/0040_alter_reservationstatisticsreservationunit_unit_tprek_id.py rename to backend/tilavarauspalvelu/migrations/0040_alter_reservationstatisticsreservationunit_unit_tprek_id.py diff --git a/tilavarauspalvelu/migrations/0041_rename_recurring_reservation_uuid_to_ext_uuid.py b/backend/tilavarauspalvelu/migrations/0041_rename_recurring_reservation_uuid_to_ext_uuid.py similarity index 100% rename from tilavarauspalvelu/migrations/0041_rename_recurring_reservation_uuid_to_ext_uuid.py rename to backend/tilavarauspalvelu/migrations/0041_rename_recurring_reservation_uuid_to_ext_uuid.py diff --git a/tilavarauspalvelu/migrations/0042_add_reservation_uuids.py b/backend/tilavarauspalvelu/migrations/0042_add_reservation_uuids.py similarity index 100% rename from tilavarauspalvelu/migrations/0042_add_reservation_uuids.py rename to backend/tilavarauspalvelu/migrations/0042_add_reservation_uuids.py diff --git a/tilavarauspalvelu/migrations/0043_populate_uuid_values.py b/backend/tilavarauspalvelu/migrations/0043_populate_uuid_values.py similarity index 100% rename from tilavarauspalvelu/migrations/0043_populate_uuid_values.py rename to backend/tilavarauspalvelu/migrations/0043_populate_uuid_values.py diff --git a/tilavarauspalvelu/migrations/0044_change_uuid_to_unique.py b/backend/tilavarauspalvelu/migrations/0044_change_uuid_to_unique.py similarity index 100% rename from tilavarauspalvelu/migrations/0044_change_uuid_to_unique.py rename to backend/tilavarauspalvelu/migrations/0044_change_uuid_to_unique.py diff --git a/tilavarauspalvelu/migrations/0045_reservationstatistic_reservation_uuid.py b/backend/tilavarauspalvelu/migrations/0045_reservationstatistic_reservation_uuid.py similarity index 100% rename from tilavarauspalvelu/migrations/0045_reservationstatistic_reservation_uuid.py rename to backend/tilavarauspalvelu/migrations/0045_reservationstatistic_reservation_uuid.py diff --git a/tilavarauspalvelu/migrations/0046_alter_reservationunit_managers.py b/backend/tilavarauspalvelu/migrations/0046_alter_reservationunit_managers.py similarity index 100% rename from tilavarauspalvelu/migrations/0046_alter_reservationunit_managers.py rename to backend/tilavarauspalvelu/migrations/0046_alter_reservationunit_managers.py diff --git a/tilavarauspalvelu/migrations/0047_add_reservation_unit_search_vectors.py b/backend/tilavarauspalvelu/migrations/0047_add_reservation_unit_search_vectors.py similarity index 100% rename from tilavarauspalvelu/migrations/0047_add_reservation_unit_search_vectors.py rename to backend/tilavarauspalvelu/migrations/0047_add_reservation_unit_search_vectors.py diff --git a/tilavarauspalvelu/migrations/0048_reservationunit_search_terms.py b/backend/tilavarauspalvelu/migrations/0048_reservationunit_search_terms.py similarity index 100% rename from tilavarauspalvelu/migrations/0048_reservationunit_search_terms.py rename to backend/tilavarauspalvelu/migrations/0048_reservationunit_search_terms.py diff --git a/tilavarauspalvelu/migrations/0049_populate_reservation_unit_vectors.py b/backend/tilavarauspalvelu/migrations/0049_populate_reservation_unit_vectors.py similarity index 100% rename from tilavarauspalvelu/migrations/0049_populate_reservation_unit_vectors.py rename to backend/tilavarauspalvelu/migrations/0049_populate_reservation_unit_vectors.py diff --git a/tilavarauspalvelu/migrations/0050_change_reservation_unit_vectors_to_non_null.py b/backend/tilavarauspalvelu/migrations/0050_change_reservation_unit_vectors_to_non_null.py similarity index 100% rename from tilavarauspalvelu/migrations/0050_change_reservation_unit_vectors_to_non_null.py rename to backend/tilavarauspalvelu/migrations/0050_change_reservation_unit_vectors_to_non_null.py diff --git a/tilavarauspalvelu/migrations/0051_add_application_section_ext_uuid.py b/backend/tilavarauspalvelu/migrations/0051_add_application_section_ext_uuid.py similarity index 100% rename from tilavarauspalvelu/migrations/0051_add_application_section_ext_uuid.py rename to backend/tilavarauspalvelu/migrations/0051_add_application_section_ext_uuid.py diff --git a/tilavarauspalvelu/migrations/0052_populate_application_section_ext_uuid.py b/backend/tilavarauspalvelu/migrations/0052_populate_application_section_ext_uuid.py similarity index 100% rename from tilavarauspalvelu/migrations/0052_populate_application_section_ext_uuid.py rename to backend/tilavarauspalvelu/migrations/0052_populate_application_section_ext_uuid.py diff --git a/tilavarauspalvelu/migrations/0053_unique_application_section_ext_uuid.py b/backend/tilavarauspalvelu/migrations/0053_unique_application_section_ext_uuid.py similarity index 100% rename from tilavarauspalvelu/migrations/0053_unique_application_section_ext_uuid.py rename to backend/tilavarauspalvelu/migrations/0053_unique_application_section_ext_uuid.py diff --git a/tilavarauspalvelu/migrations/0054_bugreport.py b/backend/tilavarauspalvelu/migrations/0054_bugreport.py similarity index 100% rename from tilavarauspalvelu/migrations/0054_bugreport.py rename to backend/tilavarauspalvelu/migrations/0054_bugreport.py diff --git a/tilavarauspalvelu/migrations/0055_rename_phase_bugreport_found_in_phase.py b/backend/tilavarauspalvelu/migrations/0055_rename_phase_bugreport_found_in_phase.py similarity index 100% rename from tilavarauspalvelu/migrations/0055_rename_phase_bugreport_found_in_phase.py rename to backend/tilavarauspalvelu/migrations/0055_rename_phase_bugreport_found_in_phase.py diff --git a/tilavarauspalvelu/migrations/0056_bugreport_fix_strategy_bugreport_github_pr_url_and_more.py b/backend/tilavarauspalvelu/migrations/0056_bugreport_fix_strategy_bugreport_github_pr_url_and_more.py similarity index 100% rename from tilavarauspalvelu/migrations/0056_bugreport_fix_strategy_bugreport_github_pr_url_and_more.py rename to backend/tilavarauspalvelu/migrations/0056_bugreport_fix_strategy_bugreport_github_pr_url_and_more.py diff --git a/tilavarauspalvelu/migrations/0057_add_reservation_unit_require_adult_reservee.py b/backend/tilavarauspalvelu/migrations/0057_add_reservation_unit_require_adult_reservee.py similarity index 100% rename from tilavarauspalvelu/migrations/0057_add_reservation_unit_require_adult_reservee.py rename to backend/tilavarauspalvelu/migrations/0057_add_reservation_unit_require_adult_reservee.py diff --git a/tilavarauspalvelu/migrations/0058_unit_search_terms.py b/backend/tilavarauspalvelu/migrations/0058_unit_search_terms.py similarity index 100% rename from tilavarauspalvelu/migrations/0058_unit_search_terms.py rename to backend/tilavarauspalvelu/migrations/0058_unit_search_terms.py diff --git a/tilavarauspalvelu/migrations/0059_unit_allow_permissions_from_ad_groups_and_more.py b/backend/tilavarauspalvelu/migrations/0059_unit_allow_permissions_from_ad_groups_and_more.py similarity index 100% rename from tilavarauspalvelu/migrations/0059_unit_allow_permissions_from_ad_groups_and_more.py rename to backend/tilavarauspalvelu/migrations/0059_unit_allow_permissions_from_ad_groups_and_more.py diff --git a/tilavarauspalvelu/migrations/0060_unitrole_unique_role_user_for_ad_group.py b/backend/tilavarauspalvelu/migrations/0060_unitrole_unique_role_user_for_ad_group.py similarity index 100% rename from tilavarauspalvelu/migrations/0060_unitrole_unique_role_user_for_ad_group.py rename to backend/tilavarauspalvelu/migrations/0060_unitrole_unique_role_user_for_ad_group.py diff --git a/tilavarauspalvelu/migrations/0061_reservation_unit_access_type.py b/backend/tilavarauspalvelu/migrations/0061_reservation_unit_access_type.py similarity index 100% rename from tilavarauspalvelu/migrations/0061_reservation_unit_access_type.py rename to backend/tilavarauspalvelu/migrations/0061_reservation_unit_access_type.py diff --git a/tilavarauspalvelu/migrations/0062_migrate_instructions_to_html.py b/backend/tilavarauspalvelu/migrations/0062_migrate_instructions_to_html.py similarity index 100% rename from tilavarauspalvelu/migrations/0062_migrate_instructions_to_html.py rename to backend/tilavarauspalvelu/migrations/0062_migrate_instructions_to_html.py diff --git a/tilavarauspalvelu/migrations/0063_clean_newlines_from_rich_text_fields.py b/backend/tilavarauspalvelu/migrations/0063_clean_newlines_from_rich_text_fields.py similarity index 100% rename from tilavarauspalvelu/migrations/0063_clean_newlines_from_rich_text_fields.py rename to backend/tilavarauspalvelu/migrations/0063_clean_newlines_from_rich_text_fields.py diff --git a/tilavarauspalvelu/migrations/0064_remove_reservation_reservee_language.py b/backend/tilavarauspalvelu/migrations/0064_remove_reservation_reservee_language.py similarity index 100% rename from tilavarauspalvelu/migrations/0064_remove_reservation_reservee_language.py rename to backend/tilavarauspalvelu/migrations/0064_remove_reservation_reservee_language.py diff --git a/tilavarauspalvelu/migrations/0065_reservation_access_code_generated_at_and_more.py b/backend/tilavarauspalvelu/migrations/0065_reservation_access_code_generated_at_and_more.py similarity index 100% rename from tilavarauspalvelu/migrations/0065_reservation_access_code_generated_at_and_more.py rename to backend/tilavarauspalvelu/migrations/0065_reservation_access_code_generated_at_and_more.py diff --git a/tilavarauspalvelu/migrations/0066_remove_reservationunit_require_introduction.py b/backend/tilavarauspalvelu/migrations/0066_remove_reservationunit_require_introduction.py similarity index 100% rename from tilavarauspalvelu/migrations/0066_remove_reservationunit_require_introduction.py rename to backend/tilavarauspalvelu/migrations/0066_remove_reservationunit_require_introduction.py diff --git a/tilavarauspalvelu/migrations/__init__.py b/backend/tilavarauspalvelu/migrations/__init__.py similarity index 100% rename from tilavarauspalvelu/migrations/__init__.py rename to backend/tilavarauspalvelu/migrations/__init__.py diff --git a/tilavarauspalvelu/models/__init__.py b/backend/tilavarauspalvelu/models/__init__.py similarity index 100% rename from tilavarauspalvelu/models/__init__.py rename to backend/tilavarauspalvelu/models/__init__.py diff --git a/tilavarauspalvelu/models/ability_group/__init__.py b/backend/tilavarauspalvelu/models/ability_group/__init__.py similarity index 100% rename from tilavarauspalvelu/models/ability_group/__init__.py rename to backend/tilavarauspalvelu/models/ability_group/__init__.py diff --git a/tilavarauspalvelu/models/ability_group/actions.py b/backend/tilavarauspalvelu/models/ability_group/actions.py similarity index 100% rename from tilavarauspalvelu/models/ability_group/actions.py rename to backend/tilavarauspalvelu/models/ability_group/actions.py diff --git a/tilavarauspalvelu/models/ability_group/model.py b/backend/tilavarauspalvelu/models/ability_group/model.py similarity index 100% rename from tilavarauspalvelu/models/ability_group/model.py rename to backend/tilavarauspalvelu/models/ability_group/model.py diff --git a/tilavarauspalvelu/models/ability_group/queryset.py b/backend/tilavarauspalvelu/models/ability_group/queryset.py similarity index 100% rename from tilavarauspalvelu/models/ability_group/queryset.py rename to backend/tilavarauspalvelu/models/ability_group/queryset.py diff --git a/tilavarauspalvelu/models/address/__init__.py b/backend/tilavarauspalvelu/models/address/__init__.py similarity index 100% rename from tilavarauspalvelu/models/address/__init__.py rename to backend/tilavarauspalvelu/models/address/__init__.py diff --git a/tilavarauspalvelu/models/address/actions.py b/backend/tilavarauspalvelu/models/address/actions.py similarity index 100% rename from tilavarauspalvelu/models/address/actions.py rename to backend/tilavarauspalvelu/models/address/actions.py diff --git a/tilavarauspalvelu/models/address/model.py b/backend/tilavarauspalvelu/models/address/model.py similarity index 100% rename from tilavarauspalvelu/models/address/model.py rename to backend/tilavarauspalvelu/models/address/model.py diff --git a/tilavarauspalvelu/models/address/queryset.py b/backend/tilavarauspalvelu/models/address/queryset.py similarity index 100% rename from tilavarauspalvelu/models/address/queryset.py rename to backend/tilavarauspalvelu/models/address/queryset.py diff --git a/tilavarauspalvelu/models/affecting_time_span/__init__.py b/backend/tilavarauspalvelu/models/affecting_time_span/__init__.py similarity index 100% rename from tilavarauspalvelu/models/affecting_time_span/__init__.py rename to backend/tilavarauspalvelu/models/affecting_time_span/__init__.py diff --git a/tilavarauspalvelu/models/affecting_time_span/actions.py b/backend/tilavarauspalvelu/models/affecting_time_span/actions.py similarity index 100% rename from tilavarauspalvelu/models/affecting_time_span/actions.py rename to backend/tilavarauspalvelu/models/affecting_time_span/actions.py diff --git a/tilavarauspalvelu/models/affecting_time_span/model.py b/backend/tilavarauspalvelu/models/affecting_time_span/model.py similarity index 100% rename from tilavarauspalvelu/models/affecting_time_span/model.py rename to backend/tilavarauspalvelu/models/affecting_time_span/model.py diff --git a/tilavarauspalvelu/models/affecting_time_span/queryset.py b/backend/tilavarauspalvelu/models/affecting_time_span/queryset.py similarity index 100% rename from tilavarauspalvelu/models/affecting_time_span/queryset.py rename to backend/tilavarauspalvelu/models/affecting_time_span/queryset.py diff --git a/tilavarauspalvelu/models/age_group/__init__.py b/backend/tilavarauspalvelu/models/age_group/__init__.py similarity index 100% rename from tilavarauspalvelu/models/age_group/__init__.py rename to backend/tilavarauspalvelu/models/age_group/__init__.py diff --git a/tilavarauspalvelu/models/age_group/actions.py b/backend/tilavarauspalvelu/models/age_group/actions.py similarity index 100% rename from tilavarauspalvelu/models/age_group/actions.py rename to backend/tilavarauspalvelu/models/age_group/actions.py diff --git a/tilavarauspalvelu/models/age_group/model.py b/backend/tilavarauspalvelu/models/age_group/model.py similarity index 100% rename from tilavarauspalvelu/models/age_group/model.py rename to backend/tilavarauspalvelu/models/age_group/model.py diff --git a/tilavarauspalvelu/models/age_group/queryset.py b/backend/tilavarauspalvelu/models/age_group/queryset.py similarity index 100% rename from tilavarauspalvelu/models/age_group/queryset.py rename to backend/tilavarauspalvelu/models/age_group/queryset.py diff --git a/tilavarauspalvelu/models/allocated_timeslot/__init__.py b/backend/tilavarauspalvelu/models/allocated_timeslot/__init__.py similarity index 100% rename from tilavarauspalvelu/models/allocated_timeslot/__init__.py rename to backend/tilavarauspalvelu/models/allocated_timeslot/__init__.py diff --git a/tilavarauspalvelu/models/allocated_timeslot/actions.py b/backend/tilavarauspalvelu/models/allocated_timeslot/actions.py similarity index 100% rename from tilavarauspalvelu/models/allocated_timeslot/actions.py rename to backend/tilavarauspalvelu/models/allocated_timeslot/actions.py diff --git a/tilavarauspalvelu/models/allocated_timeslot/model.py b/backend/tilavarauspalvelu/models/allocated_timeslot/model.py similarity index 100% rename from tilavarauspalvelu/models/allocated_timeslot/model.py rename to backend/tilavarauspalvelu/models/allocated_timeslot/model.py diff --git a/tilavarauspalvelu/models/allocated_timeslot/queryset.py b/backend/tilavarauspalvelu/models/allocated_timeslot/queryset.py similarity index 100% rename from tilavarauspalvelu/models/allocated_timeslot/queryset.py rename to backend/tilavarauspalvelu/models/allocated_timeslot/queryset.py diff --git a/tilavarauspalvelu/models/application/__init__.py b/backend/tilavarauspalvelu/models/application/__init__.py similarity index 100% rename from tilavarauspalvelu/models/application/__init__.py rename to backend/tilavarauspalvelu/models/application/__init__.py diff --git a/tilavarauspalvelu/models/application/actions.py b/backend/tilavarauspalvelu/models/application/actions.py similarity index 100% rename from tilavarauspalvelu/models/application/actions.py rename to backend/tilavarauspalvelu/models/application/actions.py diff --git a/tilavarauspalvelu/models/application/model.py b/backend/tilavarauspalvelu/models/application/model.py similarity index 100% rename from tilavarauspalvelu/models/application/model.py rename to backend/tilavarauspalvelu/models/application/model.py diff --git a/tilavarauspalvelu/models/application/queryset.py b/backend/tilavarauspalvelu/models/application/queryset.py similarity index 100% rename from tilavarauspalvelu/models/application/queryset.py rename to backend/tilavarauspalvelu/models/application/queryset.py diff --git a/tilavarauspalvelu/models/application_round/__init__.py b/backend/tilavarauspalvelu/models/application_round/__init__.py similarity index 100% rename from tilavarauspalvelu/models/application_round/__init__.py rename to backend/tilavarauspalvelu/models/application_round/__init__.py diff --git a/tilavarauspalvelu/models/application_round/actions.py b/backend/tilavarauspalvelu/models/application_round/actions.py similarity index 100% rename from tilavarauspalvelu/models/application_round/actions.py rename to backend/tilavarauspalvelu/models/application_round/actions.py diff --git a/tilavarauspalvelu/models/application_round/model.py b/backend/tilavarauspalvelu/models/application_round/model.py similarity index 100% rename from tilavarauspalvelu/models/application_round/model.py rename to backend/tilavarauspalvelu/models/application_round/model.py diff --git a/tilavarauspalvelu/models/application_round/queryset.py b/backend/tilavarauspalvelu/models/application_round/queryset.py similarity index 100% rename from tilavarauspalvelu/models/application_round/queryset.py rename to backend/tilavarauspalvelu/models/application_round/queryset.py diff --git a/tilavarauspalvelu/models/application_round_time_slot/__init__.py b/backend/tilavarauspalvelu/models/application_round_time_slot/__init__.py similarity index 100% rename from tilavarauspalvelu/models/application_round_time_slot/__init__.py rename to backend/tilavarauspalvelu/models/application_round_time_slot/__init__.py diff --git a/tilavarauspalvelu/models/application_round_time_slot/actions.py b/backend/tilavarauspalvelu/models/application_round_time_slot/actions.py similarity index 100% rename from tilavarauspalvelu/models/application_round_time_slot/actions.py rename to backend/tilavarauspalvelu/models/application_round_time_slot/actions.py diff --git a/tilavarauspalvelu/models/application_round_time_slot/model.py b/backend/tilavarauspalvelu/models/application_round_time_slot/model.py similarity index 100% rename from tilavarauspalvelu/models/application_round_time_slot/model.py rename to backend/tilavarauspalvelu/models/application_round_time_slot/model.py diff --git a/tilavarauspalvelu/models/application_round_time_slot/queryset.py b/backend/tilavarauspalvelu/models/application_round_time_slot/queryset.py similarity index 100% rename from tilavarauspalvelu/models/application_round_time_slot/queryset.py rename to backend/tilavarauspalvelu/models/application_round_time_slot/queryset.py diff --git a/tilavarauspalvelu/models/application_section/__init__.py b/backend/tilavarauspalvelu/models/application_section/__init__.py similarity index 100% rename from tilavarauspalvelu/models/application_section/__init__.py rename to backend/tilavarauspalvelu/models/application_section/__init__.py diff --git a/tilavarauspalvelu/models/application_section/actions.py b/backend/tilavarauspalvelu/models/application_section/actions.py similarity index 100% rename from tilavarauspalvelu/models/application_section/actions.py rename to backend/tilavarauspalvelu/models/application_section/actions.py diff --git a/tilavarauspalvelu/models/application_section/model.py b/backend/tilavarauspalvelu/models/application_section/model.py similarity index 100% rename from tilavarauspalvelu/models/application_section/model.py rename to backend/tilavarauspalvelu/models/application_section/model.py diff --git a/tilavarauspalvelu/models/application_section/queryset.py b/backend/tilavarauspalvelu/models/application_section/queryset.py similarity index 100% rename from tilavarauspalvelu/models/application_section/queryset.py rename to backend/tilavarauspalvelu/models/application_section/queryset.py diff --git a/tilavarauspalvelu/models/banner_notification/__init__.py b/backend/tilavarauspalvelu/models/banner_notification/__init__.py similarity index 100% rename from tilavarauspalvelu/models/banner_notification/__init__.py rename to backend/tilavarauspalvelu/models/banner_notification/__init__.py diff --git a/tilavarauspalvelu/models/banner_notification/actions.py b/backend/tilavarauspalvelu/models/banner_notification/actions.py similarity index 100% rename from tilavarauspalvelu/models/banner_notification/actions.py rename to backend/tilavarauspalvelu/models/banner_notification/actions.py diff --git a/tilavarauspalvelu/models/banner_notification/model.py b/backend/tilavarauspalvelu/models/banner_notification/model.py similarity index 100% rename from tilavarauspalvelu/models/banner_notification/model.py rename to backend/tilavarauspalvelu/models/banner_notification/model.py diff --git a/tilavarauspalvelu/models/banner_notification/queryset.py b/backend/tilavarauspalvelu/models/banner_notification/queryset.py similarity index 100% rename from tilavarauspalvelu/models/banner_notification/queryset.py rename to backend/tilavarauspalvelu/models/banner_notification/queryset.py diff --git a/tilavarauspalvelu/models/bug_report/__init__.py b/backend/tilavarauspalvelu/models/bug_report/__init__.py similarity index 100% rename from tilavarauspalvelu/models/bug_report/__init__.py rename to backend/tilavarauspalvelu/models/bug_report/__init__.py diff --git a/tilavarauspalvelu/models/bug_report/actions.py b/backend/tilavarauspalvelu/models/bug_report/actions.py similarity index 100% rename from tilavarauspalvelu/models/bug_report/actions.py rename to backend/tilavarauspalvelu/models/bug_report/actions.py diff --git a/tilavarauspalvelu/models/bug_report/model.py b/backend/tilavarauspalvelu/models/bug_report/model.py similarity index 100% rename from tilavarauspalvelu/models/bug_report/model.py rename to backend/tilavarauspalvelu/models/bug_report/model.py diff --git a/tilavarauspalvelu/models/bug_report/queryset.py b/backend/tilavarauspalvelu/models/bug_report/queryset.py similarity index 100% rename from tilavarauspalvelu/models/bug_report/queryset.py rename to backend/tilavarauspalvelu/models/bug_report/queryset.py diff --git a/tilavarauspalvelu/models/city/__init__.py b/backend/tilavarauspalvelu/models/city/__init__.py similarity index 100% rename from tilavarauspalvelu/models/city/__init__.py rename to backend/tilavarauspalvelu/models/city/__init__.py diff --git a/tilavarauspalvelu/models/city/actions.py b/backend/tilavarauspalvelu/models/city/actions.py similarity index 100% rename from tilavarauspalvelu/models/city/actions.py rename to backend/tilavarauspalvelu/models/city/actions.py diff --git a/tilavarauspalvelu/models/city/model.py b/backend/tilavarauspalvelu/models/city/model.py similarity index 100% rename from tilavarauspalvelu/models/city/model.py rename to backend/tilavarauspalvelu/models/city/model.py diff --git a/tilavarauspalvelu/models/city/queryset.py b/backend/tilavarauspalvelu/models/city/queryset.py similarity index 100% rename from tilavarauspalvelu/models/city/queryset.py rename to backend/tilavarauspalvelu/models/city/queryset.py diff --git a/tilavarauspalvelu/models/equipment/__init__.py b/backend/tilavarauspalvelu/models/equipment/__init__.py similarity index 100% rename from tilavarauspalvelu/models/equipment/__init__.py rename to backend/tilavarauspalvelu/models/equipment/__init__.py diff --git a/tilavarauspalvelu/models/equipment/actions.py b/backend/tilavarauspalvelu/models/equipment/actions.py similarity index 100% rename from tilavarauspalvelu/models/equipment/actions.py rename to backend/tilavarauspalvelu/models/equipment/actions.py diff --git a/tilavarauspalvelu/models/equipment/model.py b/backend/tilavarauspalvelu/models/equipment/model.py similarity index 100% rename from tilavarauspalvelu/models/equipment/model.py rename to backend/tilavarauspalvelu/models/equipment/model.py diff --git a/tilavarauspalvelu/models/equipment/queryset.py b/backend/tilavarauspalvelu/models/equipment/queryset.py similarity index 100% rename from tilavarauspalvelu/models/equipment/queryset.py rename to backend/tilavarauspalvelu/models/equipment/queryset.py diff --git a/tilavarauspalvelu/models/equipment_category/__init__.py b/backend/tilavarauspalvelu/models/equipment_category/__init__.py similarity index 100% rename from tilavarauspalvelu/models/equipment_category/__init__.py rename to backend/tilavarauspalvelu/models/equipment_category/__init__.py diff --git a/tilavarauspalvelu/models/equipment_category/actions.py b/backend/tilavarauspalvelu/models/equipment_category/actions.py similarity index 100% rename from tilavarauspalvelu/models/equipment_category/actions.py rename to backend/tilavarauspalvelu/models/equipment_category/actions.py diff --git a/tilavarauspalvelu/models/equipment_category/model.py b/backend/tilavarauspalvelu/models/equipment_category/model.py similarity index 100% rename from tilavarauspalvelu/models/equipment_category/model.py rename to backend/tilavarauspalvelu/models/equipment_category/model.py diff --git a/tilavarauspalvelu/models/equipment_category/queryset.py b/backend/tilavarauspalvelu/models/equipment_category/queryset.py similarity index 100% rename from tilavarauspalvelu/models/equipment_category/queryset.py rename to backend/tilavarauspalvelu/models/equipment_category/queryset.py diff --git a/tilavarauspalvelu/models/general_role/__init__.py b/backend/tilavarauspalvelu/models/general_role/__init__.py similarity index 100% rename from tilavarauspalvelu/models/general_role/__init__.py rename to backend/tilavarauspalvelu/models/general_role/__init__.py diff --git a/tilavarauspalvelu/models/general_role/actions.py b/backend/tilavarauspalvelu/models/general_role/actions.py similarity index 100% rename from tilavarauspalvelu/models/general_role/actions.py rename to backend/tilavarauspalvelu/models/general_role/actions.py diff --git a/tilavarauspalvelu/models/general_role/model.py b/backend/tilavarauspalvelu/models/general_role/model.py similarity index 100% rename from tilavarauspalvelu/models/general_role/model.py rename to backend/tilavarauspalvelu/models/general_role/model.py diff --git a/tilavarauspalvelu/models/general_role/queryset.py b/backend/tilavarauspalvelu/models/general_role/queryset.py similarity index 100% rename from tilavarauspalvelu/models/general_role/queryset.py rename to backend/tilavarauspalvelu/models/general_role/queryset.py diff --git a/tilavarauspalvelu/models/location/__init__.py b/backend/tilavarauspalvelu/models/location/__init__.py similarity index 100% rename from tilavarauspalvelu/models/location/__init__.py rename to backend/tilavarauspalvelu/models/location/__init__.py diff --git a/tilavarauspalvelu/models/location/actions.py b/backend/tilavarauspalvelu/models/location/actions.py similarity index 100% rename from tilavarauspalvelu/models/location/actions.py rename to backend/tilavarauspalvelu/models/location/actions.py diff --git a/tilavarauspalvelu/models/location/model.py b/backend/tilavarauspalvelu/models/location/model.py similarity index 100% rename from tilavarauspalvelu/models/location/model.py rename to backend/tilavarauspalvelu/models/location/model.py diff --git a/tilavarauspalvelu/models/location/queryset.py b/backend/tilavarauspalvelu/models/location/queryset.py similarity index 100% rename from tilavarauspalvelu/models/location/queryset.py rename to backend/tilavarauspalvelu/models/location/queryset.py diff --git a/tilavarauspalvelu/models/organisation/__init__.py b/backend/tilavarauspalvelu/models/organisation/__init__.py similarity index 100% rename from tilavarauspalvelu/models/organisation/__init__.py rename to backend/tilavarauspalvelu/models/organisation/__init__.py diff --git a/tilavarauspalvelu/models/organisation/actions.py b/backend/tilavarauspalvelu/models/organisation/actions.py similarity index 100% rename from tilavarauspalvelu/models/organisation/actions.py rename to backend/tilavarauspalvelu/models/organisation/actions.py diff --git a/tilavarauspalvelu/models/organisation/model.py b/backend/tilavarauspalvelu/models/organisation/model.py similarity index 100% rename from tilavarauspalvelu/models/organisation/model.py rename to backend/tilavarauspalvelu/models/organisation/model.py diff --git a/tilavarauspalvelu/models/organisation/queryset.py b/backend/tilavarauspalvelu/models/organisation/queryset.py similarity index 100% rename from tilavarauspalvelu/models/organisation/queryset.py rename to backend/tilavarauspalvelu/models/organisation/queryset.py diff --git a/tilavarauspalvelu/models/origin_hauki_resource/__init__.py b/backend/tilavarauspalvelu/models/origin_hauki_resource/__init__.py similarity index 100% rename from tilavarauspalvelu/models/origin_hauki_resource/__init__.py rename to backend/tilavarauspalvelu/models/origin_hauki_resource/__init__.py diff --git a/tilavarauspalvelu/models/origin_hauki_resource/actions.py b/backend/tilavarauspalvelu/models/origin_hauki_resource/actions.py similarity index 100% rename from tilavarauspalvelu/models/origin_hauki_resource/actions.py rename to backend/tilavarauspalvelu/models/origin_hauki_resource/actions.py diff --git a/tilavarauspalvelu/models/origin_hauki_resource/model.py b/backend/tilavarauspalvelu/models/origin_hauki_resource/model.py similarity index 100% rename from tilavarauspalvelu/models/origin_hauki_resource/model.py rename to backend/tilavarauspalvelu/models/origin_hauki_resource/model.py diff --git a/tilavarauspalvelu/models/origin_hauki_resource/queryset.py b/backend/tilavarauspalvelu/models/origin_hauki_resource/queryset.py similarity index 100% rename from tilavarauspalvelu/models/origin_hauki_resource/queryset.py rename to backend/tilavarauspalvelu/models/origin_hauki_resource/queryset.py diff --git a/tilavarauspalvelu/models/payment_accounting/__init__.py b/backend/tilavarauspalvelu/models/payment_accounting/__init__.py similarity index 100% rename from tilavarauspalvelu/models/payment_accounting/__init__.py rename to backend/tilavarauspalvelu/models/payment_accounting/__init__.py diff --git a/tilavarauspalvelu/models/payment_accounting/actions.py b/backend/tilavarauspalvelu/models/payment_accounting/actions.py similarity index 100% rename from tilavarauspalvelu/models/payment_accounting/actions.py rename to backend/tilavarauspalvelu/models/payment_accounting/actions.py diff --git a/tilavarauspalvelu/models/payment_accounting/model.py b/backend/tilavarauspalvelu/models/payment_accounting/model.py similarity index 100% rename from tilavarauspalvelu/models/payment_accounting/model.py rename to backend/tilavarauspalvelu/models/payment_accounting/model.py diff --git a/tilavarauspalvelu/models/payment_accounting/queryset.py b/backend/tilavarauspalvelu/models/payment_accounting/queryset.py similarity index 100% rename from tilavarauspalvelu/models/payment_accounting/queryset.py rename to backend/tilavarauspalvelu/models/payment_accounting/queryset.py diff --git a/tilavarauspalvelu/models/payment_merchant/__init__.py b/backend/tilavarauspalvelu/models/payment_merchant/__init__.py similarity index 100% rename from tilavarauspalvelu/models/payment_merchant/__init__.py rename to backend/tilavarauspalvelu/models/payment_merchant/__init__.py diff --git a/tilavarauspalvelu/models/payment_merchant/actions.py b/backend/tilavarauspalvelu/models/payment_merchant/actions.py similarity index 100% rename from tilavarauspalvelu/models/payment_merchant/actions.py rename to backend/tilavarauspalvelu/models/payment_merchant/actions.py diff --git a/tilavarauspalvelu/models/payment_merchant/model.py b/backend/tilavarauspalvelu/models/payment_merchant/model.py similarity index 100% rename from tilavarauspalvelu/models/payment_merchant/model.py rename to backend/tilavarauspalvelu/models/payment_merchant/model.py diff --git a/tilavarauspalvelu/models/payment_merchant/queryset.py b/backend/tilavarauspalvelu/models/payment_merchant/queryset.py similarity index 100% rename from tilavarauspalvelu/models/payment_merchant/queryset.py rename to backend/tilavarauspalvelu/models/payment_merchant/queryset.py diff --git a/tilavarauspalvelu/models/payment_order/__init__.py b/backend/tilavarauspalvelu/models/payment_order/__init__.py similarity index 100% rename from tilavarauspalvelu/models/payment_order/__init__.py rename to backend/tilavarauspalvelu/models/payment_order/__init__.py diff --git a/tilavarauspalvelu/models/payment_order/actions.py b/backend/tilavarauspalvelu/models/payment_order/actions.py similarity index 100% rename from tilavarauspalvelu/models/payment_order/actions.py rename to backend/tilavarauspalvelu/models/payment_order/actions.py diff --git a/tilavarauspalvelu/models/payment_order/model.py b/backend/tilavarauspalvelu/models/payment_order/model.py similarity index 100% rename from tilavarauspalvelu/models/payment_order/model.py rename to backend/tilavarauspalvelu/models/payment_order/model.py diff --git a/tilavarauspalvelu/models/payment_order/queryset.py b/backend/tilavarauspalvelu/models/payment_order/queryset.py similarity index 100% rename from tilavarauspalvelu/models/payment_order/queryset.py rename to backend/tilavarauspalvelu/models/payment_order/queryset.py diff --git a/tilavarauspalvelu/models/payment_product/__init__.py b/backend/tilavarauspalvelu/models/payment_product/__init__.py similarity index 100% rename from tilavarauspalvelu/models/payment_product/__init__.py rename to backend/tilavarauspalvelu/models/payment_product/__init__.py diff --git a/tilavarauspalvelu/models/payment_product/actions.py b/backend/tilavarauspalvelu/models/payment_product/actions.py similarity index 100% rename from tilavarauspalvelu/models/payment_product/actions.py rename to backend/tilavarauspalvelu/models/payment_product/actions.py diff --git a/tilavarauspalvelu/models/payment_product/model.py b/backend/tilavarauspalvelu/models/payment_product/model.py similarity index 100% rename from tilavarauspalvelu/models/payment_product/model.py rename to backend/tilavarauspalvelu/models/payment_product/model.py diff --git a/tilavarauspalvelu/models/payment_product/queryset.py b/backend/tilavarauspalvelu/models/payment_product/queryset.py similarity index 100% rename from tilavarauspalvelu/models/payment_product/queryset.py rename to backend/tilavarauspalvelu/models/payment_product/queryset.py diff --git a/tilavarauspalvelu/models/person/__init__.py b/backend/tilavarauspalvelu/models/person/__init__.py similarity index 100% rename from tilavarauspalvelu/models/person/__init__.py rename to backend/tilavarauspalvelu/models/person/__init__.py diff --git a/tilavarauspalvelu/models/person/actions.py b/backend/tilavarauspalvelu/models/person/actions.py similarity index 100% rename from tilavarauspalvelu/models/person/actions.py rename to backend/tilavarauspalvelu/models/person/actions.py diff --git a/tilavarauspalvelu/models/person/model.py b/backend/tilavarauspalvelu/models/person/model.py similarity index 100% rename from tilavarauspalvelu/models/person/model.py rename to backend/tilavarauspalvelu/models/person/model.py diff --git a/tilavarauspalvelu/models/person/queryset.py b/backend/tilavarauspalvelu/models/person/queryset.py similarity index 100% rename from tilavarauspalvelu/models/person/queryset.py rename to backend/tilavarauspalvelu/models/person/queryset.py diff --git a/tilavarauspalvelu/models/personal_info_view_log/__init__.py b/backend/tilavarauspalvelu/models/personal_info_view_log/__init__.py similarity index 100% rename from tilavarauspalvelu/models/personal_info_view_log/__init__.py rename to backend/tilavarauspalvelu/models/personal_info_view_log/__init__.py diff --git a/tilavarauspalvelu/models/personal_info_view_log/actions.py b/backend/tilavarauspalvelu/models/personal_info_view_log/actions.py similarity index 100% rename from tilavarauspalvelu/models/personal_info_view_log/actions.py rename to backend/tilavarauspalvelu/models/personal_info_view_log/actions.py diff --git a/tilavarauspalvelu/models/personal_info_view_log/model.py b/backend/tilavarauspalvelu/models/personal_info_view_log/model.py similarity index 100% rename from tilavarauspalvelu/models/personal_info_view_log/model.py rename to backend/tilavarauspalvelu/models/personal_info_view_log/model.py diff --git a/tilavarauspalvelu/models/personal_info_view_log/queryset.py b/backend/tilavarauspalvelu/models/personal_info_view_log/queryset.py similarity index 100% rename from tilavarauspalvelu/models/personal_info_view_log/queryset.py rename to backend/tilavarauspalvelu/models/personal_info_view_log/queryset.py diff --git a/tilavarauspalvelu/models/purpose/__init__.py b/backend/tilavarauspalvelu/models/purpose/__init__.py similarity index 100% rename from tilavarauspalvelu/models/purpose/__init__.py rename to backend/tilavarauspalvelu/models/purpose/__init__.py diff --git a/tilavarauspalvelu/models/purpose/actions.py b/backend/tilavarauspalvelu/models/purpose/actions.py similarity index 100% rename from tilavarauspalvelu/models/purpose/actions.py rename to backend/tilavarauspalvelu/models/purpose/actions.py diff --git a/tilavarauspalvelu/models/purpose/model.py b/backend/tilavarauspalvelu/models/purpose/model.py similarity index 100% rename from tilavarauspalvelu/models/purpose/model.py rename to backend/tilavarauspalvelu/models/purpose/model.py diff --git a/tilavarauspalvelu/models/purpose/queryset.py b/backend/tilavarauspalvelu/models/purpose/queryset.py similarity index 100% rename from tilavarauspalvelu/models/purpose/queryset.py rename to backend/tilavarauspalvelu/models/purpose/queryset.py diff --git a/tilavarauspalvelu/models/qualifier/__init__.py b/backend/tilavarauspalvelu/models/qualifier/__init__.py similarity index 100% rename from tilavarauspalvelu/models/qualifier/__init__.py rename to backend/tilavarauspalvelu/models/qualifier/__init__.py diff --git a/tilavarauspalvelu/models/qualifier/actions.py b/backend/tilavarauspalvelu/models/qualifier/actions.py similarity index 100% rename from tilavarauspalvelu/models/qualifier/actions.py rename to backend/tilavarauspalvelu/models/qualifier/actions.py diff --git a/tilavarauspalvelu/models/qualifier/model.py b/backend/tilavarauspalvelu/models/qualifier/model.py similarity index 100% rename from tilavarauspalvelu/models/qualifier/model.py rename to backend/tilavarauspalvelu/models/qualifier/model.py diff --git a/tilavarauspalvelu/models/qualifier/queryset.py b/backend/tilavarauspalvelu/models/qualifier/queryset.py similarity index 100% rename from tilavarauspalvelu/models/qualifier/queryset.py rename to backend/tilavarauspalvelu/models/qualifier/queryset.py diff --git a/tilavarauspalvelu/models/recurring_reservation/__init__.py b/backend/tilavarauspalvelu/models/recurring_reservation/__init__.py similarity index 100% rename from tilavarauspalvelu/models/recurring_reservation/__init__.py rename to backend/tilavarauspalvelu/models/recurring_reservation/__init__.py diff --git a/tilavarauspalvelu/models/recurring_reservation/actions.py b/backend/tilavarauspalvelu/models/recurring_reservation/actions.py similarity index 100% rename from tilavarauspalvelu/models/recurring_reservation/actions.py rename to backend/tilavarauspalvelu/models/recurring_reservation/actions.py diff --git a/tilavarauspalvelu/models/recurring_reservation/model.py b/backend/tilavarauspalvelu/models/recurring_reservation/model.py similarity index 100% rename from tilavarauspalvelu/models/recurring_reservation/model.py rename to backend/tilavarauspalvelu/models/recurring_reservation/model.py diff --git a/tilavarauspalvelu/models/recurring_reservation/queryset.py b/backend/tilavarauspalvelu/models/recurring_reservation/queryset.py similarity index 100% rename from tilavarauspalvelu/models/recurring_reservation/queryset.py rename to backend/tilavarauspalvelu/models/recurring_reservation/queryset.py diff --git a/tilavarauspalvelu/models/recurring_reservation/validators.py b/backend/tilavarauspalvelu/models/recurring_reservation/validators.py similarity index 100% rename from tilavarauspalvelu/models/recurring_reservation/validators.py rename to backend/tilavarauspalvelu/models/recurring_reservation/validators.py diff --git a/tilavarauspalvelu/models/rejected_occurrence/__init__.py b/backend/tilavarauspalvelu/models/rejected_occurrence/__init__.py similarity index 100% rename from tilavarauspalvelu/models/rejected_occurrence/__init__.py rename to backend/tilavarauspalvelu/models/rejected_occurrence/__init__.py diff --git a/tilavarauspalvelu/models/rejected_occurrence/actions.py b/backend/tilavarauspalvelu/models/rejected_occurrence/actions.py similarity index 100% rename from tilavarauspalvelu/models/rejected_occurrence/actions.py rename to backend/tilavarauspalvelu/models/rejected_occurrence/actions.py diff --git a/tilavarauspalvelu/models/rejected_occurrence/model.py b/backend/tilavarauspalvelu/models/rejected_occurrence/model.py similarity index 100% rename from tilavarauspalvelu/models/rejected_occurrence/model.py rename to backend/tilavarauspalvelu/models/rejected_occurrence/model.py diff --git a/tilavarauspalvelu/models/rejected_occurrence/queryset.py b/backend/tilavarauspalvelu/models/rejected_occurrence/queryset.py similarity index 100% rename from tilavarauspalvelu/models/rejected_occurrence/queryset.py rename to backend/tilavarauspalvelu/models/rejected_occurrence/queryset.py diff --git a/tilavarauspalvelu/models/request_log/__init__.py b/backend/tilavarauspalvelu/models/request_log/__init__.py similarity index 100% rename from tilavarauspalvelu/models/request_log/__init__.py rename to backend/tilavarauspalvelu/models/request_log/__init__.py diff --git a/tilavarauspalvelu/models/request_log/actions.py b/backend/tilavarauspalvelu/models/request_log/actions.py similarity index 100% rename from tilavarauspalvelu/models/request_log/actions.py rename to backend/tilavarauspalvelu/models/request_log/actions.py diff --git a/tilavarauspalvelu/models/request_log/model.py b/backend/tilavarauspalvelu/models/request_log/model.py similarity index 100% rename from tilavarauspalvelu/models/request_log/model.py rename to backend/tilavarauspalvelu/models/request_log/model.py diff --git a/tilavarauspalvelu/models/request_log/queryset.py b/backend/tilavarauspalvelu/models/request_log/queryset.py similarity index 100% rename from tilavarauspalvelu/models/request_log/queryset.py rename to backend/tilavarauspalvelu/models/request_log/queryset.py diff --git a/tilavarauspalvelu/models/reservable_time_span/__init__.py b/backend/tilavarauspalvelu/models/reservable_time_span/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservable_time_span/__init__.py rename to backend/tilavarauspalvelu/models/reservable_time_span/__init__.py diff --git a/tilavarauspalvelu/models/reservable_time_span/actions.py b/backend/tilavarauspalvelu/models/reservable_time_span/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservable_time_span/actions.py rename to backend/tilavarauspalvelu/models/reservable_time_span/actions.py diff --git a/tilavarauspalvelu/models/reservable_time_span/model.py b/backend/tilavarauspalvelu/models/reservable_time_span/model.py similarity index 100% rename from tilavarauspalvelu/models/reservable_time_span/model.py rename to backend/tilavarauspalvelu/models/reservable_time_span/model.py diff --git a/tilavarauspalvelu/models/reservable_time_span/queryset.py b/backend/tilavarauspalvelu/models/reservable_time_span/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservable_time_span/queryset.py rename to backend/tilavarauspalvelu/models/reservable_time_span/queryset.py diff --git a/tilavarauspalvelu/models/reservation/__init__.py b/backend/tilavarauspalvelu/models/reservation/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation/__init__.py rename to backend/tilavarauspalvelu/models/reservation/__init__.py diff --git a/tilavarauspalvelu/models/reservation/actions.py b/backend/tilavarauspalvelu/models/reservation/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation/actions.py rename to backend/tilavarauspalvelu/models/reservation/actions.py diff --git a/tilavarauspalvelu/models/reservation/model.py b/backend/tilavarauspalvelu/models/reservation/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation/model.py rename to backend/tilavarauspalvelu/models/reservation/model.py diff --git a/tilavarauspalvelu/models/reservation/queryset.py b/backend/tilavarauspalvelu/models/reservation/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation/queryset.py rename to backend/tilavarauspalvelu/models/reservation/queryset.py diff --git a/tilavarauspalvelu/models/reservation/validators.py b/backend/tilavarauspalvelu/models/reservation/validators.py similarity index 100% rename from tilavarauspalvelu/models/reservation/validators.py rename to backend/tilavarauspalvelu/models/reservation/validators.py diff --git a/tilavarauspalvelu/models/reservation_cancel_reason/__init__.py b/backend/tilavarauspalvelu/models/reservation_cancel_reason/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_cancel_reason/__init__.py rename to backend/tilavarauspalvelu/models/reservation_cancel_reason/__init__.py diff --git a/tilavarauspalvelu/models/reservation_cancel_reason/actions.py b/backend/tilavarauspalvelu/models/reservation_cancel_reason/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_cancel_reason/actions.py rename to backend/tilavarauspalvelu/models/reservation_cancel_reason/actions.py diff --git a/tilavarauspalvelu/models/reservation_cancel_reason/model.py b/backend/tilavarauspalvelu/models/reservation_cancel_reason/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_cancel_reason/model.py rename to backend/tilavarauspalvelu/models/reservation_cancel_reason/model.py diff --git a/tilavarauspalvelu/models/reservation_cancel_reason/queryset.py b/backend/tilavarauspalvelu/models/reservation_cancel_reason/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_cancel_reason/queryset.py rename to backend/tilavarauspalvelu/models/reservation_cancel_reason/queryset.py diff --git a/tilavarauspalvelu/models/reservation_deny_reason/__init__.py b/backend/tilavarauspalvelu/models/reservation_deny_reason/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_deny_reason/__init__.py rename to backend/tilavarauspalvelu/models/reservation_deny_reason/__init__.py diff --git a/tilavarauspalvelu/models/reservation_deny_reason/actions.py b/backend/tilavarauspalvelu/models/reservation_deny_reason/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_deny_reason/actions.py rename to backend/tilavarauspalvelu/models/reservation_deny_reason/actions.py diff --git a/tilavarauspalvelu/models/reservation_deny_reason/model.py b/backend/tilavarauspalvelu/models/reservation_deny_reason/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_deny_reason/model.py rename to backend/tilavarauspalvelu/models/reservation_deny_reason/model.py diff --git a/tilavarauspalvelu/models/reservation_deny_reason/queryset.py b/backend/tilavarauspalvelu/models/reservation_deny_reason/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_deny_reason/queryset.py rename to backend/tilavarauspalvelu/models/reservation_deny_reason/queryset.py diff --git a/tilavarauspalvelu/models/reservation_metadata_field/__init__.py b/backend/tilavarauspalvelu/models/reservation_metadata_field/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_field/__init__.py rename to backend/tilavarauspalvelu/models/reservation_metadata_field/__init__.py diff --git a/tilavarauspalvelu/models/reservation_metadata_field/actions.py b/backend/tilavarauspalvelu/models/reservation_metadata_field/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_field/actions.py rename to backend/tilavarauspalvelu/models/reservation_metadata_field/actions.py diff --git a/tilavarauspalvelu/models/reservation_metadata_field/model.py b/backend/tilavarauspalvelu/models/reservation_metadata_field/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_field/model.py rename to backend/tilavarauspalvelu/models/reservation_metadata_field/model.py diff --git a/tilavarauspalvelu/models/reservation_metadata_field/queryset.py b/backend/tilavarauspalvelu/models/reservation_metadata_field/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_field/queryset.py rename to backend/tilavarauspalvelu/models/reservation_metadata_field/queryset.py diff --git a/tilavarauspalvelu/models/reservation_metadata_set/__init__.py b/backend/tilavarauspalvelu/models/reservation_metadata_set/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_set/__init__.py rename to backend/tilavarauspalvelu/models/reservation_metadata_set/__init__.py diff --git a/tilavarauspalvelu/models/reservation_metadata_set/actions.py b/backend/tilavarauspalvelu/models/reservation_metadata_set/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_set/actions.py rename to backend/tilavarauspalvelu/models/reservation_metadata_set/actions.py diff --git a/tilavarauspalvelu/models/reservation_metadata_set/model.py b/backend/tilavarauspalvelu/models/reservation_metadata_set/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_set/model.py rename to backend/tilavarauspalvelu/models/reservation_metadata_set/model.py diff --git a/tilavarauspalvelu/models/reservation_metadata_set/queryset.py b/backend/tilavarauspalvelu/models/reservation_metadata_set/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_metadata_set/queryset.py rename to backend/tilavarauspalvelu/models/reservation_metadata_set/queryset.py diff --git a/tilavarauspalvelu/models/reservation_purpose/__init__.py b/backend/tilavarauspalvelu/models/reservation_purpose/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_purpose/__init__.py rename to backend/tilavarauspalvelu/models/reservation_purpose/__init__.py diff --git a/tilavarauspalvelu/models/reservation_purpose/actions.py b/backend/tilavarauspalvelu/models/reservation_purpose/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_purpose/actions.py rename to backend/tilavarauspalvelu/models/reservation_purpose/actions.py diff --git a/tilavarauspalvelu/models/reservation_purpose/model.py b/backend/tilavarauspalvelu/models/reservation_purpose/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_purpose/model.py rename to backend/tilavarauspalvelu/models/reservation_purpose/model.py diff --git a/tilavarauspalvelu/models/reservation_purpose/queryset.py b/backend/tilavarauspalvelu/models/reservation_purpose/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_purpose/queryset.py rename to backend/tilavarauspalvelu/models/reservation_purpose/queryset.py diff --git a/tilavarauspalvelu/models/reservation_statistic/__init__.py b/backend/tilavarauspalvelu/models/reservation_statistic/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic/__init__.py rename to backend/tilavarauspalvelu/models/reservation_statistic/__init__.py diff --git a/tilavarauspalvelu/models/reservation_statistic/actions.py b/backend/tilavarauspalvelu/models/reservation_statistic/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic/actions.py rename to backend/tilavarauspalvelu/models/reservation_statistic/actions.py diff --git a/tilavarauspalvelu/models/reservation_statistic/model.py b/backend/tilavarauspalvelu/models/reservation_statistic/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic/model.py rename to backend/tilavarauspalvelu/models/reservation_statistic/model.py diff --git a/tilavarauspalvelu/models/reservation_statistic/queryset.py b/backend/tilavarauspalvelu/models/reservation_statistic/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic/queryset.py rename to backend/tilavarauspalvelu/models/reservation_statistic/queryset.py diff --git a/tilavarauspalvelu/models/reservation_statistic_unit/__init__.py b/backend/tilavarauspalvelu/models/reservation_statistic_unit/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic_unit/__init__.py rename to backend/tilavarauspalvelu/models/reservation_statistic_unit/__init__.py diff --git a/tilavarauspalvelu/models/reservation_statistic_unit/actions.py b/backend/tilavarauspalvelu/models/reservation_statistic_unit/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic_unit/actions.py rename to backend/tilavarauspalvelu/models/reservation_statistic_unit/actions.py diff --git a/tilavarauspalvelu/models/reservation_statistic_unit/model.py b/backend/tilavarauspalvelu/models/reservation_statistic_unit/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic_unit/model.py rename to backend/tilavarauspalvelu/models/reservation_statistic_unit/model.py diff --git a/tilavarauspalvelu/models/reservation_statistic_unit/queryset.py b/backend/tilavarauspalvelu/models/reservation_statistic_unit/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_statistic_unit/queryset.py rename to backend/tilavarauspalvelu/models/reservation_statistic_unit/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit/actions.py b/backend/tilavarauspalvelu/models/reservation_unit/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit/model.py b/backend/tilavarauspalvelu/models/reservation_unit/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit/model.py rename to backend/tilavarauspalvelu/models/reservation_unit/model.py diff --git a/tilavarauspalvelu/models/reservation_unit/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit/validators.py b/backend/tilavarauspalvelu/models/reservation_unit/validators.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit/validators.py rename to backend/tilavarauspalvelu/models/reservation_unit/validators.py diff --git a/tilavarauspalvelu/models/reservation_unit_cancellation_rule/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_cancellation_rule/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_cancellation_rule/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_cancellation_rule/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_cancellation_rule/model.py b/backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_cancellation_rule/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_cancellation_rule/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_cancellation_rule/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_cancellation_rule/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit_hierarchy/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_hierarchy/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_hierarchy/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_hierarchy/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_hierarchy/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_hierarchy/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_hierarchy/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_hierarchy/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_hierarchy/model.py b/backend/tilavarauspalvelu/models/reservation_unit_hierarchy/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_hierarchy/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_hierarchy/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_hierarchy/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_hierarchy/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_hierarchy/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_hierarchy/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit_image/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_image/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_image/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_image/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_image/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_image/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_image/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_image/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_image/model.py b/backend/tilavarauspalvelu/models/reservation_unit_image/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_image/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_image/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_image/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_image/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_image/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_image/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit_option/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_option/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_option/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_option/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_option/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_option/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_option/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_option/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_option/model.py b/backend/tilavarauspalvelu/models/reservation_unit_option/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_option/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_option/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_option/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_option/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_option/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_option/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit_payment_type/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_payment_type/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_payment_type/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_payment_type/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_payment_type/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_payment_type/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_payment_type/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_payment_type/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_payment_type/model.py b/backend/tilavarauspalvelu/models/reservation_unit_payment_type/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_payment_type/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_payment_type/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_payment_type/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_payment_type/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_payment_type/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_payment_type/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit_pricing/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_pricing/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_pricing/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_pricing/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_pricing/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_pricing/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_pricing/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_pricing/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_pricing/model.py b/backend/tilavarauspalvelu/models/reservation_unit_pricing/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_pricing/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_pricing/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_pricing/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_pricing/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_pricing/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_pricing/queryset.py diff --git a/tilavarauspalvelu/models/reservation_unit_type/__init__.py b/backend/tilavarauspalvelu/models/reservation_unit_type/__init__.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_type/__init__.py rename to backend/tilavarauspalvelu/models/reservation_unit_type/__init__.py diff --git a/tilavarauspalvelu/models/reservation_unit_type/actions.py b/backend/tilavarauspalvelu/models/reservation_unit_type/actions.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_type/actions.py rename to backend/tilavarauspalvelu/models/reservation_unit_type/actions.py diff --git a/tilavarauspalvelu/models/reservation_unit_type/model.py b/backend/tilavarauspalvelu/models/reservation_unit_type/model.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_type/model.py rename to backend/tilavarauspalvelu/models/reservation_unit_type/model.py diff --git a/tilavarauspalvelu/models/reservation_unit_type/queryset.py b/backend/tilavarauspalvelu/models/reservation_unit_type/queryset.py similarity index 100% rename from tilavarauspalvelu/models/reservation_unit_type/queryset.py rename to backend/tilavarauspalvelu/models/reservation_unit_type/queryset.py diff --git a/tilavarauspalvelu/models/resource/__init__.py b/backend/tilavarauspalvelu/models/resource/__init__.py similarity index 100% rename from tilavarauspalvelu/models/resource/__init__.py rename to backend/tilavarauspalvelu/models/resource/__init__.py diff --git a/tilavarauspalvelu/models/resource/actions.py b/backend/tilavarauspalvelu/models/resource/actions.py similarity index 100% rename from tilavarauspalvelu/models/resource/actions.py rename to backend/tilavarauspalvelu/models/resource/actions.py diff --git a/tilavarauspalvelu/models/resource/model.py b/backend/tilavarauspalvelu/models/resource/model.py similarity index 100% rename from tilavarauspalvelu/models/resource/model.py rename to backend/tilavarauspalvelu/models/resource/model.py diff --git a/tilavarauspalvelu/models/resource/queryset.py b/backend/tilavarauspalvelu/models/resource/queryset.py similarity index 100% rename from tilavarauspalvelu/models/resource/queryset.py rename to backend/tilavarauspalvelu/models/resource/queryset.py diff --git a/tilavarauspalvelu/models/space/__init__.py b/backend/tilavarauspalvelu/models/space/__init__.py similarity index 100% rename from tilavarauspalvelu/models/space/__init__.py rename to backend/tilavarauspalvelu/models/space/__init__.py diff --git a/tilavarauspalvelu/models/space/actions.py b/backend/tilavarauspalvelu/models/space/actions.py similarity index 100% rename from tilavarauspalvelu/models/space/actions.py rename to backend/tilavarauspalvelu/models/space/actions.py diff --git a/tilavarauspalvelu/models/space/model.py b/backend/tilavarauspalvelu/models/space/model.py similarity index 100% rename from tilavarauspalvelu/models/space/model.py rename to backend/tilavarauspalvelu/models/space/model.py diff --git a/tilavarauspalvelu/models/space/queryset.py b/backend/tilavarauspalvelu/models/space/queryset.py similarity index 100% rename from tilavarauspalvelu/models/space/queryset.py rename to backend/tilavarauspalvelu/models/space/queryset.py diff --git a/tilavarauspalvelu/models/sql_log/__init__.py b/backend/tilavarauspalvelu/models/sql_log/__init__.py similarity index 100% rename from tilavarauspalvelu/models/sql_log/__init__.py rename to backend/tilavarauspalvelu/models/sql_log/__init__.py diff --git a/tilavarauspalvelu/models/sql_log/actions.py b/backend/tilavarauspalvelu/models/sql_log/actions.py similarity index 100% rename from tilavarauspalvelu/models/sql_log/actions.py rename to backend/tilavarauspalvelu/models/sql_log/actions.py diff --git a/tilavarauspalvelu/models/sql_log/model.py b/backend/tilavarauspalvelu/models/sql_log/model.py similarity index 100% rename from tilavarauspalvelu/models/sql_log/model.py rename to backend/tilavarauspalvelu/models/sql_log/model.py diff --git a/tilavarauspalvelu/models/sql_log/queryset.py b/backend/tilavarauspalvelu/models/sql_log/queryset.py similarity index 100% rename from tilavarauspalvelu/models/sql_log/queryset.py rename to backend/tilavarauspalvelu/models/sql_log/queryset.py diff --git a/tilavarauspalvelu/models/suitable_time_range/__init__.py b/backend/tilavarauspalvelu/models/suitable_time_range/__init__.py similarity index 100% rename from tilavarauspalvelu/models/suitable_time_range/__init__.py rename to backend/tilavarauspalvelu/models/suitable_time_range/__init__.py diff --git a/tilavarauspalvelu/models/suitable_time_range/actions.py b/backend/tilavarauspalvelu/models/suitable_time_range/actions.py similarity index 100% rename from tilavarauspalvelu/models/suitable_time_range/actions.py rename to backend/tilavarauspalvelu/models/suitable_time_range/actions.py diff --git a/tilavarauspalvelu/models/suitable_time_range/model.py b/backend/tilavarauspalvelu/models/suitable_time_range/model.py similarity index 100% rename from tilavarauspalvelu/models/suitable_time_range/model.py rename to backend/tilavarauspalvelu/models/suitable_time_range/model.py diff --git a/tilavarauspalvelu/models/suitable_time_range/queryset.py b/backend/tilavarauspalvelu/models/suitable_time_range/queryset.py similarity index 100% rename from tilavarauspalvelu/models/suitable_time_range/queryset.py rename to backend/tilavarauspalvelu/models/suitable_time_range/queryset.py diff --git a/tilavarauspalvelu/models/tax_percentage/__init__.py b/backend/tilavarauspalvelu/models/tax_percentage/__init__.py similarity index 100% rename from tilavarauspalvelu/models/tax_percentage/__init__.py rename to backend/tilavarauspalvelu/models/tax_percentage/__init__.py diff --git a/tilavarauspalvelu/models/tax_percentage/actions.py b/backend/tilavarauspalvelu/models/tax_percentage/actions.py similarity index 100% rename from tilavarauspalvelu/models/tax_percentage/actions.py rename to backend/tilavarauspalvelu/models/tax_percentage/actions.py diff --git a/tilavarauspalvelu/models/tax_percentage/model.py b/backend/tilavarauspalvelu/models/tax_percentage/model.py similarity index 100% rename from tilavarauspalvelu/models/tax_percentage/model.py rename to backend/tilavarauspalvelu/models/tax_percentage/model.py diff --git a/tilavarauspalvelu/models/tax_percentage/queryset.py b/backend/tilavarauspalvelu/models/tax_percentage/queryset.py similarity index 100% rename from tilavarauspalvelu/models/tax_percentage/queryset.py rename to backend/tilavarauspalvelu/models/tax_percentage/queryset.py diff --git a/tilavarauspalvelu/models/terms_of_use/__init__.py b/backend/tilavarauspalvelu/models/terms_of_use/__init__.py similarity index 100% rename from tilavarauspalvelu/models/terms_of_use/__init__.py rename to backend/tilavarauspalvelu/models/terms_of_use/__init__.py diff --git a/tilavarauspalvelu/models/terms_of_use/actions.py b/backend/tilavarauspalvelu/models/terms_of_use/actions.py similarity index 100% rename from tilavarauspalvelu/models/terms_of_use/actions.py rename to backend/tilavarauspalvelu/models/terms_of_use/actions.py diff --git a/tilavarauspalvelu/models/terms_of_use/model.py b/backend/tilavarauspalvelu/models/terms_of_use/model.py similarity index 100% rename from tilavarauspalvelu/models/terms_of_use/model.py rename to backend/tilavarauspalvelu/models/terms_of_use/model.py diff --git a/tilavarauspalvelu/models/terms_of_use/queryset.py b/backend/tilavarauspalvelu/models/terms_of_use/queryset.py similarity index 100% rename from tilavarauspalvelu/models/terms_of_use/queryset.py rename to backend/tilavarauspalvelu/models/terms_of_use/queryset.py diff --git a/tilavarauspalvelu/models/unit/__init__.py b/backend/tilavarauspalvelu/models/unit/__init__.py similarity index 100% rename from tilavarauspalvelu/models/unit/__init__.py rename to backend/tilavarauspalvelu/models/unit/__init__.py diff --git a/tilavarauspalvelu/models/unit/actions.py b/backend/tilavarauspalvelu/models/unit/actions.py similarity index 100% rename from tilavarauspalvelu/models/unit/actions.py rename to backend/tilavarauspalvelu/models/unit/actions.py diff --git a/tilavarauspalvelu/models/unit/model.py b/backend/tilavarauspalvelu/models/unit/model.py similarity index 100% rename from tilavarauspalvelu/models/unit/model.py rename to backend/tilavarauspalvelu/models/unit/model.py diff --git a/tilavarauspalvelu/models/unit/queryset.py b/backend/tilavarauspalvelu/models/unit/queryset.py similarity index 100% rename from tilavarauspalvelu/models/unit/queryset.py rename to backend/tilavarauspalvelu/models/unit/queryset.py diff --git a/tilavarauspalvelu/models/unit_group/__init__.py b/backend/tilavarauspalvelu/models/unit_group/__init__.py similarity index 100% rename from tilavarauspalvelu/models/unit_group/__init__.py rename to backend/tilavarauspalvelu/models/unit_group/__init__.py diff --git a/tilavarauspalvelu/models/unit_group/actions.py b/backend/tilavarauspalvelu/models/unit_group/actions.py similarity index 100% rename from tilavarauspalvelu/models/unit_group/actions.py rename to backend/tilavarauspalvelu/models/unit_group/actions.py diff --git a/tilavarauspalvelu/models/unit_group/model.py b/backend/tilavarauspalvelu/models/unit_group/model.py similarity index 100% rename from tilavarauspalvelu/models/unit_group/model.py rename to backend/tilavarauspalvelu/models/unit_group/model.py diff --git a/tilavarauspalvelu/models/unit_group/queryset.py b/backend/tilavarauspalvelu/models/unit_group/queryset.py similarity index 100% rename from tilavarauspalvelu/models/unit_group/queryset.py rename to backend/tilavarauspalvelu/models/unit_group/queryset.py diff --git a/tilavarauspalvelu/models/unit_role/__init__.py b/backend/tilavarauspalvelu/models/unit_role/__init__.py similarity index 100% rename from tilavarauspalvelu/models/unit_role/__init__.py rename to backend/tilavarauspalvelu/models/unit_role/__init__.py diff --git a/tilavarauspalvelu/models/unit_role/actions.py b/backend/tilavarauspalvelu/models/unit_role/actions.py similarity index 100% rename from tilavarauspalvelu/models/unit_role/actions.py rename to backend/tilavarauspalvelu/models/unit_role/actions.py diff --git a/tilavarauspalvelu/models/unit_role/model.py b/backend/tilavarauspalvelu/models/unit_role/model.py similarity index 100% rename from tilavarauspalvelu/models/unit_role/model.py rename to backend/tilavarauspalvelu/models/unit_role/model.py diff --git a/tilavarauspalvelu/models/unit_role/queryset.py b/backend/tilavarauspalvelu/models/unit_role/queryset.py similarity index 100% rename from tilavarauspalvelu/models/unit_role/queryset.py rename to backend/tilavarauspalvelu/models/unit_role/queryset.py diff --git a/tilavarauspalvelu/models/user/__init__.py b/backend/tilavarauspalvelu/models/user/__init__.py similarity index 100% rename from tilavarauspalvelu/models/user/__init__.py rename to backend/tilavarauspalvelu/models/user/__init__.py diff --git a/tilavarauspalvelu/models/user/actions.py b/backend/tilavarauspalvelu/models/user/actions.py similarity index 100% rename from tilavarauspalvelu/models/user/actions.py rename to backend/tilavarauspalvelu/models/user/actions.py diff --git a/tilavarauspalvelu/models/user/model.py b/backend/tilavarauspalvelu/models/user/model.py similarity index 100% rename from tilavarauspalvelu/models/user/model.py rename to backend/tilavarauspalvelu/models/user/model.py diff --git a/tilavarauspalvelu/models/user/queryset.py b/backend/tilavarauspalvelu/models/user/queryset.py similarity index 100% rename from tilavarauspalvelu/models/user/queryset.py rename to backend/tilavarauspalvelu/models/user/queryset.py diff --git a/tilavarauspalvelu/services/__init__.py b/backend/tilavarauspalvelu/services/__init__.py similarity index 100% rename from tilavarauspalvelu/services/__init__.py rename to backend/tilavarauspalvelu/services/__init__.py diff --git a/tilavarauspalvelu/services/csv_export/__init__.py b/backend/tilavarauspalvelu/services/csv_export/__init__.py similarity index 100% rename from tilavarauspalvelu/services/csv_export/__init__.py rename to backend/tilavarauspalvelu/services/csv_export/__init__.py diff --git a/tilavarauspalvelu/services/csv_export/_base_exporter.py b/backend/tilavarauspalvelu/services/csv_export/_base_exporter.py similarity index 100% rename from tilavarauspalvelu/services/csv_export/_base_exporter.py rename to backend/tilavarauspalvelu/services/csv_export/_base_exporter.py diff --git a/tilavarauspalvelu/services/csv_export/application_round_applications_exporter.py b/backend/tilavarauspalvelu/services/csv_export/application_round_applications_exporter.py similarity index 100% rename from tilavarauspalvelu/services/csv_export/application_round_applications_exporter.py rename to backend/tilavarauspalvelu/services/csv_export/application_round_applications_exporter.py diff --git a/tilavarauspalvelu/services/csv_export/application_round_result_exporter.py b/backend/tilavarauspalvelu/services/csv_export/application_round_result_exporter.py similarity index 100% rename from tilavarauspalvelu/services/csv_export/application_round_result_exporter.py rename to backend/tilavarauspalvelu/services/csv_export/application_round_result_exporter.py diff --git a/tilavarauspalvelu/services/csv_export/reservation_unit_exporter.py b/backend/tilavarauspalvelu/services/csv_export/reservation_unit_exporter.py similarity index 100% rename from tilavarauspalvelu/services/csv_export/reservation_unit_exporter.py rename to backend/tilavarauspalvelu/services/csv_export/reservation_unit_exporter.py diff --git a/tilavarauspalvelu/services/csv_export/sql_log_exporter.py b/backend/tilavarauspalvelu/services/csv_export/sql_log_exporter.py similarity index 100% rename from tilavarauspalvelu/services/csv_export/sql_log_exporter.py rename to backend/tilavarauspalvelu/services/csv_export/sql_log_exporter.py diff --git a/tilavarauspalvelu/services/first_reservable_time/__init__.py b/backend/tilavarauspalvelu/services/first_reservable_time/__init__.py similarity index 100% rename from tilavarauspalvelu/services/first_reservable_time/__init__.py rename to backend/tilavarauspalvelu/services/first_reservable_time/__init__.py diff --git a/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_helper.py b/backend/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_helper.py similarity index 100% rename from tilavarauspalvelu/services/first_reservable_time/first_reservable_time_helper.py rename to backend/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_helper.py diff --git a/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservable_time_span_helper.py b/backend/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservable_time_span_helper.py similarity index 100% rename from tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservable_time_span_helper.py rename to backend/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservable_time_span_helper.py diff --git a/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservation_unit_helper.py b/backend/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservation_unit_helper.py similarity index 100% rename from tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservation_unit_helper.py rename to backend/tilavarauspalvelu/services/first_reservable_time/first_reservable_time_reservation_unit_helper.py diff --git a/tilavarauspalvelu/services/first_reservable_time/utils.py b/backend/tilavarauspalvelu/services/first_reservable_time/utils.py similarity index 100% rename from tilavarauspalvelu/services/first_reservable_time/utils.py rename to backend/tilavarauspalvelu/services/first_reservable_time/utils.py diff --git a/tilavarauspalvelu/services/pdf.py b/backend/tilavarauspalvelu/services/pdf.py similarity index 100% rename from tilavarauspalvelu/services/pdf.py rename to backend/tilavarauspalvelu/services/pdf.py diff --git a/tilavarauspalvelu/services/permission_resolver.py b/backend/tilavarauspalvelu/services/permission_resolver.py similarity index 100% rename from tilavarauspalvelu/services/permission_resolver.py rename to backend/tilavarauspalvelu/services/permission_resolver.py diff --git a/tilavarauspalvelu/services/permission_service.py b/backend/tilavarauspalvelu/services/permission_service.py similarity index 100% rename from tilavarauspalvelu/services/permission_service.py rename to backend/tilavarauspalvelu/services/permission_service.py diff --git a/tilavarauspalvelu/services/pruning.py b/backend/tilavarauspalvelu/services/pruning.py similarity index 100% rename from tilavarauspalvelu/services/pruning.py rename to backend/tilavarauspalvelu/services/pruning.py diff --git a/tilavarauspalvelu/signals.py b/backend/tilavarauspalvelu/signals.py similarity index 100% rename from tilavarauspalvelu/signals.py rename to backend/tilavarauspalvelu/signals.py diff --git a/tilavarauspalvelu/tasks.py b/backend/tilavarauspalvelu/tasks.py similarity index 100% rename from tilavarauspalvelu/tasks.py rename to backend/tilavarauspalvelu/tasks.py diff --git a/tilavarauspalvelu/templatetags/__init__.py b/backend/tilavarauspalvelu/templatetags/__init__.py similarity index 100% rename from tilavarauspalvelu/templatetags/__init__.py rename to backend/tilavarauspalvelu/templatetags/__init__.py diff --git a/tilavarauspalvelu/templatetags/tilavarauspalvelu.py b/backend/tilavarauspalvelu/templatetags/tilavarauspalvelu.py similarity index 100% rename from tilavarauspalvelu/templatetags/tilavarauspalvelu.py rename to backend/tilavarauspalvelu/templatetags/tilavarauspalvelu.py diff --git a/tilavarauspalvelu/translation.py b/backend/tilavarauspalvelu/translation.py similarity index 100% rename from tilavarauspalvelu/translation.py rename to backend/tilavarauspalvelu/translation.py diff --git a/tilavarauspalvelu/typing.py b/backend/tilavarauspalvelu/typing.py similarity index 100% rename from tilavarauspalvelu/typing.py rename to backend/tilavarauspalvelu/typing.py diff --git a/tilavarauspalvelu/validators.py b/backend/tilavarauspalvelu/validators.py similarity index 100% rename from tilavarauspalvelu/validators.py rename to backend/tilavarauspalvelu/validators.py diff --git a/utils/__init__.py b/backend/utils/__init__.py similarity index 100% rename from utils/__init__.py rename to backend/utils/__init__.py diff --git a/utils/date_utils.py b/backend/utils/date_utils.py similarity index 100% rename from utils/date_utils.py rename to backend/utils/date_utils.py diff --git a/utils/db.py b/backend/utils/db.py similarity index 100% rename from utils/db.py rename to backend/utils/db.py diff --git a/utils/decimal_utils.py b/backend/utils/decimal_utils.py similarity index 100% rename from utils/decimal_utils.py rename to backend/utils/decimal_utils.py diff --git a/utils/external_service/__init__.py b/backend/utils/external_service/__init__.py similarity index 100% rename from utils/external_service/__init__.py rename to backend/utils/external_service/__init__.py diff --git a/utils/external_service/base_external_service_client.py b/backend/utils/external_service/base_external_service_client.py similarity index 100% rename from utils/external_service/base_external_service_client.py rename to backend/utils/external_service/base_external_service_client.py diff --git a/utils/external_service/errors.py b/backend/utils/external_service/errors.py similarity index 100% rename from utils/external_service/errors.py rename to backend/utils/external_service/errors.py diff --git a/utils/fields/__init__.py b/backend/utils/fields/__init__.py similarity index 100% rename from utils/fields/__init__.py rename to backend/utils/fields/__init__.py diff --git a/utils/fields/forms.py b/backend/utils/fields/forms.py similarity index 100% rename from utils/fields/forms.py rename to backend/utils/fields/forms.py diff --git a/utils/fields/model.py b/backend/utils/fields/model.py similarity index 100% rename from utils/fields/model.py rename to backend/utils/fields/model.py diff --git a/utils/fields/serializer.py b/backend/utils/fields/serializer.py similarity index 100% rename from utils/fields/serializer.py rename to backend/utils/fields/serializer.py diff --git a/utils/utils.py b/backend/utils/utils.py similarity index 100% rename from utils/utils.py rename to backend/utils/utils.py diff --git a/docker-compose.yml b/docker-compose.yml index d51ab62992..83e184dd56 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -32,7 +32,7 @@ services: container_name: tvp-core image: tvp-core build: - context: . + context: backend/ dockerfile: docker/Dockerfile args: DEPS: main,admin,celery,test,lint @@ -42,7 +42,7 @@ services: redis: condition: service_healthy env_file: - - .env + - backend/.env environment: DJANGO_SETTINGS_ENVIRONMENT: Docker ports: @@ -60,12 +60,12 @@ services: redis: condition: service_healthy build: - context: . + context: backend/ dockerfile: docker/Dockerfile args: DEPS: main,admin,celery,test,lint env_file: - - .env + - backend/.env environment: DJANGO_SETTINGS_ENVIRONMENT: Docker entrypoint: /tvp/docker/worker.sh