From b51b43c7a1ffcf7615780fbd568936480195d700 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Fri, 14 Jul 2023 00:36:02 +0300 Subject: [PATCH] Reformated project structure --- .github/workflows/lint.yml | 23 ------------ .github/workflows/ruff.yml | 8 +++++ .github/workflows/test.yml | 18 ++++++++++ .gitignore | 7 ++-- config.json.example | 5 +++ kristofersxyz/apps/main/admin.py | 3 -- kristofersxyz/apps/main/models.py | 3 -- kristofersxyz/apps/main/tests.py | 3 -- kristofersxyz/apps/main/views.py | 18 ---------- kristofersxyz/apps/projects/admin.py | 3 -- kristofersxyz/apps/projects/models.py | 3 -- kristofersxyz/apps/projects/tests.py | 3 -- kristofersxyz/apps/projects/views.py | 17 --------- pyproject.toml | 27 +++++++++++--- requirements.txt | 5 +-- requirements_dev.txt | 7 ++-- setup.cfg | 33 ------------------ setup.py | 4 --- {kristofersxyz => src/apps/main}/__init__.py | 0 .../__init__.py => src/apps/main/admin.py | 0 {kristofersxyz => src}/apps/main/apps.py | 0 .../apps/main/migrations/__init__.py | 0 .../__init__.py => src/apps/main/models.py | 0 .../apps/main/templates}/index.html | 0 .../apps/main/templates}/lightsaber.html | 0 .../__init__.py => src/apps/main/tests.py | 0 {kristofersxyz => src}/apps/main/urls.py | 0 src/apps/main/views.py | 17 +++++++++ src/apps/projects/__init__.py | 0 src/apps/projects/admin.py | 0 {kristofersxyz => src}/apps/projects/apps.py | 0 src/apps/projects/migrations/__init__.py | 0 src/apps/projects/models.py | 0 .../templates}/karbs/instructions.html | 0 .../apps/projects/templates}/projects.html | 0 .../traffic_light_detector.html | 0 src/apps/projects/tests.py | 0 {kristofersxyz => src}/apps/projects/urls.py | 0 src/apps/projects/views.py | 17 +++++++++ src/kristofersxyz/__init__.py | 0 {kristofersxyz => src/kristofersxyz}/asgi.py | 0 .../kristofersxyz}/settings.py | 30 ++++++++++------ {kristofersxyz => src/kristofersxyz}/urls.py | 9 ++--- {kristofersxyz => src/kristofersxyz}/wsgi.py | 0 manage.py => src/manage.py | 0 .../csgo-throwing-flashbang-sound-effect.m4a | Bin {static => src/static}/main/css/button.css | 0 {static => src/static}/main/css/colors.css | 0 {static => src/static}/main/css/index.css | 0 {static => src/static}/main/css/layout.css | 0 .../static}/main/css/lightsaber.css | 0 {static => src/static}/main/css/markdown.css | 0 .../static}/main/css/navigation_button.css | 0 {static => src/static}/main/css/reset.css | 0 .../static}/main/img/hello-there.mp4 | Bin .../static}/main/img/icons/logo.svg | 0 {static => src/static}/main/js/lightmode.js | 0 {static => src/static}/main/js/lightsaber.js | 0 {static => src/static}/main/js/navigation.js | 0 {static => src/static}/main/js/text_swap.js | 0 {static => src/static}/main/js/typewriter.js | 0 .../static}/projects/css/projects.css | 0 .../static}/projects/js/projects.js | 0 {templates => src/templates}/layout.html | 0 templates/projects/karbs/karbs | 1 - tox.ini | 25 ------------- 66 files changed, 122 insertions(+), 167 deletions(-) delete mode 100644 .github/workflows/lint.yml create mode 100644 .github/workflows/ruff.yml create mode 100644 .github/workflows/test.yml create mode 100644 config.json.example delete mode 100644 kristofersxyz/apps/main/admin.py delete mode 100644 kristofersxyz/apps/main/models.py delete mode 100644 kristofersxyz/apps/main/tests.py delete mode 100644 kristofersxyz/apps/main/views.py delete mode 100644 kristofersxyz/apps/projects/admin.py delete mode 100644 kristofersxyz/apps/projects/models.py delete mode 100644 kristofersxyz/apps/projects/tests.py delete mode 100644 kristofersxyz/apps/projects/views.py delete mode 100644 setup.cfg delete mode 100644 setup.py rename {kristofersxyz => src/apps/main}/__init__.py (100%) rename kristofersxyz/apps/main/__init__.py => src/apps/main/admin.py (100%) rename {kristofersxyz => src}/apps/main/apps.py (100%) rename {kristofersxyz => src}/apps/main/migrations/__init__.py (100%) rename kristofersxyz/apps/projects/__init__.py => src/apps/main/models.py (100%) rename {templates/main => src/apps/main/templates}/index.html (100%) rename {templates/main => src/apps/main/templates}/lightsaber.html (100%) rename kristofersxyz/apps/projects/migrations/__init__.py => src/apps/main/tests.py (100%) rename {kristofersxyz => src}/apps/main/urls.py (100%) create mode 100644 src/apps/main/views.py create mode 100644 src/apps/projects/__init__.py create mode 100644 src/apps/projects/admin.py rename {kristofersxyz => src}/apps/projects/apps.py (100%) create mode 100644 src/apps/projects/migrations/__init__.py create mode 100644 src/apps/projects/models.py rename {templates/projects => src/apps/projects/templates}/karbs/instructions.html (100%) rename {templates/projects => src/apps/projects/templates}/projects.html (100%) rename {templates/projects => src/apps/projects/templates}/traffic_light_detector/traffic_light_detector.html (100%) create mode 100644 src/apps/projects/tests.py rename {kristofersxyz => src}/apps/projects/urls.py (100%) create mode 100644 src/apps/projects/views.py create mode 100644 src/kristofersxyz/__init__.py rename {kristofersxyz => src/kristofersxyz}/asgi.py (100%) rename {kristofersxyz => src/kristofersxyz}/settings.py (83%) rename {kristofersxyz => src/kristofersxyz}/urls.py (77%) rename {kristofersxyz => src/kristofersxyz}/wsgi.py (100%) rename manage.py => src/manage.py (100%) rename {static => src/static}/main/audio/csgo-throwing-flashbang-sound-effect.m4a (100%) rename {static => src/static}/main/css/button.css (100%) rename {static => src/static}/main/css/colors.css (100%) rename {static => src/static}/main/css/index.css (100%) rename {static => src/static}/main/css/layout.css (100%) rename {static => src/static}/main/css/lightsaber.css (100%) rename {static => src/static}/main/css/markdown.css (100%) rename {static => src/static}/main/css/navigation_button.css (100%) rename {static => src/static}/main/css/reset.css (100%) rename {static => src/static}/main/img/hello-there.mp4 (100%) rename {static => src/static}/main/img/icons/logo.svg (100%) rename {static => src/static}/main/js/lightmode.js (100%) rename {static => src/static}/main/js/lightsaber.js (100%) rename {static => src/static}/main/js/navigation.js (100%) rename {static => src/static}/main/js/text_swap.js (100%) rename {static => src/static}/main/js/typewriter.js (100%) rename {static => src/static}/projects/css/projects.css (100%) rename {static => src/static}/projects/js/projects.js (100%) rename {templates => src/templates}/layout.html (100%) delete mode 160000 templates/projects/karbs/karbs delete mode 100644 tox.ini diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index 776c8ea..0000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: Lint -on: - - push - - pull_request -jobs: - test: - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, windows-latest] - python-version: ["3.10"] - steps: - - uses: actions/checkout@v2 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install tox tox-gh-actions - - name: Lint with tox - run: tox diff --git a/.github/workflows/ruff.yml b/.github/workflows/ruff.yml new file mode 100644 index 0000000..563b87d --- /dev/null +++ b/.github/workflows/ruff.yml @@ -0,0 +1,8 @@ +name: Ruff +on: [push, pull_request] +jobs: + ruff: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: chartboost/ruff-action@v1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..299b649 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,18 @@ +name: Django Test +on: [push, pull_request] +jobs: + test: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + - name: Set up Python + uses: actions/setup-python@v3 + with: + python-version: "3.10" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + - name: Run tests + run: python src/manage.py test diff --git a/.gitignore b/.gitignore index 1c223fa..96d6df9 100644 --- a/.gitignore +++ b/.gitignore @@ -129,8 +129,9 @@ dmypy.json .pyre/ +local-cdn/ config.json -debug +node_modules/ +package-lock.json -/static/admin/ -/static/fontawesomefree/ +db.sqlite3 diff --git a/config.json.example b/config.json.example new file mode 100644 index 0000000..7863aba --- /dev/null +++ b/config.json.example @@ -0,0 +1,5 @@ +{ + "DEBUG": false, + "SECRET_KEY": "", + "ALLOWED_HOSTS": [""], +} diff --git a/kristofersxyz/apps/main/admin.py b/kristofersxyz/apps/main/admin.py deleted file mode 100644 index 4185d36..0000000 --- a/kristofersxyz/apps/main/admin.py +++ /dev/null @@ -1,3 +0,0 @@ -# from django.contrib import admin - -# Register your models here. diff --git a/kristofersxyz/apps/main/models.py b/kristofersxyz/apps/main/models.py deleted file mode 100644 index 0b4331b..0000000 --- a/kristofersxyz/apps/main/models.py +++ /dev/null @@ -1,3 +0,0 @@ -# from django.db import models - -# Create your models here. diff --git a/kristofersxyz/apps/main/tests.py b/kristofersxyz/apps/main/tests.py deleted file mode 100644 index a79ca8b..0000000 --- a/kristofersxyz/apps/main/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -# from django.test import TestCase - -# Create your tests here. diff --git a/kristofersxyz/apps/main/views.py b/kristofersxyz/apps/main/views.py deleted file mode 100644 index 4b722ee..0000000 --- a/kristofersxyz/apps/main/views.py +++ /dev/null @@ -1,18 +0,0 @@ -from django.shortcuts import redirect, render - - -def index(request): - return render(request, "main/index.html", {"title": "Kristofers Solo Webpage"}) - - -def lightsaber(request): - return render(request, "main/lightsaber.html", {"title": "Lightsaber"}) - - -def projects(request): - return render(request, "main/projects.html", {"title": "Projects"}) - - -def karbs(request): - """Karbs install script""" - return redirect("/projects/karbs") diff --git a/kristofersxyz/apps/projects/admin.py b/kristofersxyz/apps/projects/admin.py deleted file mode 100644 index 4185d36..0000000 --- a/kristofersxyz/apps/projects/admin.py +++ /dev/null @@ -1,3 +0,0 @@ -# from django.contrib import admin - -# Register your models here. diff --git a/kristofersxyz/apps/projects/models.py b/kristofersxyz/apps/projects/models.py deleted file mode 100644 index 0b4331b..0000000 --- a/kristofersxyz/apps/projects/models.py +++ /dev/null @@ -1,3 +0,0 @@ -# from django.db import models - -# Create your models here. diff --git a/kristofersxyz/apps/projects/tests.py b/kristofersxyz/apps/projects/tests.py deleted file mode 100644 index a79ca8b..0000000 --- a/kristofersxyz/apps/projects/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -# from django.test import TestCase - -# Create your tests here. diff --git a/kristofersxyz/apps/projects/views.py b/kristofersxyz/apps/projects/views.py deleted file mode 100644 index 9d06403..0000000 --- a/kristofersxyz/apps/projects/views.py +++ /dev/null @@ -1,17 +0,0 @@ -from django.shortcuts import render - - -def projects(request): - return render(request, "projects/projects.html", {"title": "Projects"}) - - -def karbs(request): - return render(request, "projects/karbs/karbs/karbs", {"title": "KARBS"}) - - -def instructions(request): - return render(request, "projects/karbs/instructions.html", {"title": "Karbs Instructions"}) - - -def traffic_light_detector(request): - return render(request, "projects/traffic_light_detector/traffic_light_detector.html", {"title": "Traffic Light Detector"}) diff --git a/pyproject.toml b/pyproject.toml index 141eb3e..d24d060 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,3 @@ -[build-system] -requires = ["setuptools>=42.0", "wheel"] -build-backend = "setuptools.build_meta" - [tool.mypy] check_untyped_defs = true disallow_any_generics = true @@ -15,3 +11,26 @@ warn_redundant_casts = true warn_return_any = true warn_unreachable = true warn_unused_configs = true + +[tool.ruff] +line-length = 160 +exclude = ["**/**/migrations"] + +[tool.black] +line-length = 160 + +[tool.ruff.flake8-quotes] +docstring-quotes = "double" + +[tool.djlint] +close_void_tags = true +format_attribute_template_tags = true +format_css = true +format_js = true +max_line_length = 120 + +[tool.djlint.css] +indent_size = 4 + +[tool.djlint.js] +indent_size = 4 diff --git a/requirements.txt b/requirements.txt index 5f91e93..f577eef 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,3 @@ -Django==4.1 -fontawesomefree==6.2.1 +Django==4.2 +fontawesomefree==6.2 +gunicorn==20.1 diff --git a/requirements_dev.txt b/requirements_dev.txt index 14597cb..64c40bd 100644 --- a/requirements_dev.txt +++ b/requirements_dev.txt @@ -1,5 +1,2 @@ -flake8==6.0.0 -mypy==0.991 -pytest-cov==4.0.0 -pytest==7.2.0 -tox==3.27.1 +mypy==1.3.0 +ruff==0.0.272 diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 3f097e2..0000000 --- a/setup.cfg +++ /dev/null @@ -1,33 +0,0 @@ -[metadata] -name = kristofersxyz -description = Kristofers Solo website -author = Kristofers Solo -license = GPL3 -license_files = LICENSE -platforms = unix, linux, osx, cygwin, win32 -classifiers = - Programming Language :: Python :: 3.10 - -[options] -packages = kristofersxyz -install_requires = - Django>=4.1 - fontawesomefree>=6.2.1 - -python_requires = >=3.10 -package_dir = =. -zip_safe = no - -[options.extras_require] -testing = - flake8>=6.0.0 - mypy>=0.991 - pytest-cov>=4.0.0 - pytest>=7.2.0 - tox>=3.27.1 - -[options.package_data] -detector = py.typed - -[flake8] -max-line-length = 160 diff --git a/setup.py b/setup.py deleted file mode 100644 index 7f1a176..0000000 --- a/setup.py +++ /dev/null @@ -1,4 +0,0 @@ -from setuptools import setup - -if __name__ == "__main__": - setup() diff --git a/kristofersxyz/__init__.py b/src/apps/main/__init__.py similarity index 100% rename from kristofersxyz/__init__.py rename to src/apps/main/__init__.py diff --git a/kristofersxyz/apps/main/__init__.py b/src/apps/main/admin.py similarity index 100% rename from kristofersxyz/apps/main/__init__.py rename to src/apps/main/admin.py diff --git a/kristofersxyz/apps/main/apps.py b/src/apps/main/apps.py similarity index 100% rename from kristofersxyz/apps/main/apps.py rename to src/apps/main/apps.py diff --git a/kristofersxyz/apps/main/migrations/__init__.py b/src/apps/main/migrations/__init__.py similarity index 100% rename from kristofersxyz/apps/main/migrations/__init__.py rename to src/apps/main/migrations/__init__.py diff --git a/kristofersxyz/apps/projects/__init__.py b/src/apps/main/models.py similarity index 100% rename from kristofersxyz/apps/projects/__init__.py rename to src/apps/main/models.py diff --git a/templates/main/index.html b/src/apps/main/templates/index.html similarity index 100% rename from templates/main/index.html rename to src/apps/main/templates/index.html diff --git a/templates/main/lightsaber.html b/src/apps/main/templates/lightsaber.html similarity index 100% rename from templates/main/lightsaber.html rename to src/apps/main/templates/lightsaber.html diff --git a/kristofersxyz/apps/projects/migrations/__init__.py b/src/apps/main/tests.py similarity index 100% rename from kristofersxyz/apps/projects/migrations/__init__.py rename to src/apps/main/tests.py diff --git a/kristofersxyz/apps/main/urls.py b/src/apps/main/urls.py similarity index 100% rename from kristofersxyz/apps/main/urls.py rename to src/apps/main/urls.py diff --git a/src/apps/main/views.py b/src/apps/main/views.py new file mode 100644 index 0000000..2162759 --- /dev/null +++ b/src/apps/main/views.py @@ -0,0 +1,17 @@ +from django.shortcuts import redirect, render + + +def index(request): + return render(request, "index.html", {"title": "Kristofers Solo Webpage"}) + + +def lightsaber(request): + return render(request, "lightsaber.html", {"title": "Lightsaber"}) + + +def projects(request): + return render(request, "projects.html", {"title": "Projects"}) + + +def karbs(request): + return redirect("karbs") diff --git a/src/apps/projects/__init__.py b/src/apps/projects/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/apps/projects/admin.py b/src/apps/projects/admin.py new file mode 100644 index 0000000..e69de29 diff --git a/kristofersxyz/apps/projects/apps.py b/src/apps/projects/apps.py similarity index 100% rename from kristofersxyz/apps/projects/apps.py rename to src/apps/projects/apps.py diff --git a/src/apps/projects/migrations/__init__.py b/src/apps/projects/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/apps/projects/models.py b/src/apps/projects/models.py new file mode 100644 index 0000000..e69de29 diff --git a/templates/projects/karbs/instructions.html b/src/apps/projects/templates/karbs/instructions.html similarity index 100% rename from templates/projects/karbs/instructions.html rename to src/apps/projects/templates/karbs/instructions.html diff --git a/templates/projects/projects.html b/src/apps/projects/templates/projects.html similarity index 100% rename from templates/projects/projects.html rename to src/apps/projects/templates/projects.html diff --git a/templates/projects/traffic_light_detector/traffic_light_detector.html b/src/apps/projects/templates/traffic_light_detector/traffic_light_detector.html similarity index 100% rename from templates/projects/traffic_light_detector/traffic_light_detector.html rename to src/apps/projects/templates/traffic_light_detector/traffic_light_detector.html diff --git a/src/apps/projects/tests.py b/src/apps/projects/tests.py new file mode 100644 index 0000000..e69de29 diff --git a/kristofersxyz/apps/projects/urls.py b/src/apps/projects/urls.py similarity index 100% rename from kristofersxyz/apps/projects/urls.py rename to src/apps/projects/urls.py diff --git a/src/apps/projects/views.py b/src/apps/projects/views.py new file mode 100644 index 0000000..730898a --- /dev/null +++ b/src/apps/projects/views.py @@ -0,0 +1,17 @@ +from django.shortcuts import render + + +def projects(request): + return render(request, "projects.html", {"title": "Projects"}) + + +def karbs(request): + return render(request, "karbs/karbs/karbs", {"title": "KARBS"}) + + +def instructions(request): + return render(request, "karbs/instructions.html", {"title": "Karbs Instructions"}) + + +def traffic_light_detector(request): + return render(request, "traffic_light_detector/traffic_light_detector.html", {"title": "Traffic Light Detector"}) diff --git a/src/kristofersxyz/__init__.py b/src/kristofersxyz/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/kristofersxyz/asgi.py b/src/kristofersxyz/asgi.py similarity index 100% rename from kristofersxyz/asgi.py rename to src/kristofersxyz/asgi.py diff --git a/kristofersxyz/settings.py b/src/kristofersxyz/settings.py similarity index 83% rename from kristofersxyz/settings.py rename to src/kristofersxyz/settings.py index 0cddd02..ba3893e 100644 --- a/kristofersxyz/settings.py +++ b/src/kristofersxyz/settings.py @@ -15,14 +15,11 @@ import sys from pathlib import Path # Build paths inside the project like this: BASE_DIR / "subdir". -BASE_PATH = Path(__file__).resolve().parent.parent -sys.path.insert(0, str(BASE_PATH.joinpath("kristofersxyz", "apps"))) - -# SECURITY WARNING: don"t run with debug turned on in production! -DEBUG = BASE_PATH.joinpath("debug").is_file() +BASE_DIR = Path(__file__).resolve().parent.parent +sys.path.insert(0, str(BASE_DIR / "apps")) -with open(BASE_PATH.joinpath("config.json"), "r", encoding="UTF-8") as config_file: +with open(BASE_DIR.parent / "config.json", "r", encoding="UTF-8") as config_file: config = json.load(config_file) # Quick-start development settings - unsuitable for production @@ -34,6 +31,8 @@ SECRET_KEY = config["SECRET_KEY"] ALLOWED_HOSTS = config["ALLOWED_HOSTS"] +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = config["DEBUG"] # Application definition @@ -64,7 +63,10 @@ ROOT_URLCONF = "kristofersxyz.urls" TEMPLATES = [ { "BACKEND": "django.template.backends.django.DjangoTemplates", - "DIRS": [BASE_PATH.joinpath("templates")], + "DIRS": [ + BASE_DIR / "templates", + BASE_DIR / "**" / "templates", + ], "APP_DIRS": True, "OPTIONS": { "context_processors": [ @@ -86,7 +88,7 @@ WSGI_APPLICATION = "kristofersxyz.wsgi.application" DATABASES = { "default": { "ENGINE": "django.db.backends.sqlite3", - "NAME": BASE_PATH / "db.sqlite3", + "NAME": BASE_DIR / "db.sqlite3", } } @@ -126,8 +128,16 @@ USE_TZ = True # https://docs.djangoproject.com/en/4.0/howto/static-files/ STATIC_URL = "/static/" -STATIC_ROOT = BASE_PATH.joinpath("static") -MEDIA_ROOT = BASE_PATH.joinpath("media") +STATICFILES_DIRS = [ + BASE_DIR / "static", +] +STATIC_ROOT = BASE_DIR.parent / "local-cdn" / "static" + +MEDIA_URL = "media/" +MEDIAFILES_DIRS = [ + BASE_DIR / "media", +] +MEDIA_ROOT = BASE_DIR.parent / "local-cdn" / "media" # Default primary key field type diff --git a/kristofersxyz/urls.py b/src/kristofersxyz/urls.py similarity index 77% rename from kristofersxyz/urls.py rename to src/kristofersxyz/urls.py index 272abc0..acc8205 100644 --- a/kristofersxyz/urls.py +++ b/src/kristofersxyz/urls.py @@ -14,14 +14,15 @@ Including another URLconf 2. Add a URL to urlpatterns: path("blog/", include("blog.urls")) """ from django.conf import settings -from django.conf.urls.static import static -from django.contrib import admin from django.urls import include, path urlpatterns = [ - path("admin/", admin.site.urls), path("", include("main.urls")), path("projects/", include("projects.urls")), ] -urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) +if settings.DEBUG: + from django.conf.urls.static import static + + urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) + urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) diff --git a/kristofersxyz/wsgi.py b/src/kristofersxyz/wsgi.py similarity index 100% rename from kristofersxyz/wsgi.py rename to src/kristofersxyz/wsgi.py diff --git a/manage.py b/src/manage.py similarity index 100% rename from manage.py rename to src/manage.py diff --git a/static/main/audio/csgo-throwing-flashbang-sound-effect.m4a b/src/static/main/audio/csgo-throwing-flashbang-sound-effect.m4a similarity index 100% rename from static/main/audio/csgo-throwing-flashbang-sound-effect.m4a rename to src/static/main/audio/csgo-throwing-flashbang-sound-effect.m4a diff --git a/static/main/css/button.css b/src/static/main/css/button.css similarity index 100% rename from static/main/css/button.css rename to src/static/main/css/button.css diff --git a/static/main/css/colors.css b/src/static/main/css/colors.css similarity index 100% rename from static/main/css/colors.css rename to src/static/main/css/colors.css diff --git a/static/main/css/index.css b/src/static/main/css/index.css similarity index 100% rename from static/main/css/index.css rename to src/static/main/css/index.css diff --git a/static/main/css/layout.css b/src/static/main/css/layout.css similarity index 100% rename from static/main/css/layout.css rename to src/static/main/css/layout.css diff --git a/static/main/css/lightsaber.css b/src/static/main/css/lightsaber.css similarity index 100% rename from static/main/css/lightsaber.css rename to src/static/main/css/lightsaber.css diff --git a/static/main/css/markdown.css b/src/static/main/css/markdown.css similarity index 100% rename from static/main/css/markdown.css rename to src/static/main/css/markdown.css diff --git a/static/main/css/navigation_button.css b/src/static/main/css/navigation_button.css similarity index 100% rename from static/main/css/navigation_button.css rename to src/static/main/css/navigation_button.css diff --git a/static/main/css/reset.css b/src/static/main/css/reset.css similarity index 100% rename from static/main/css/reset.css rename to src/static/main/css/reset.css diff --git a/static/main/img/hello-there.mp4 b/src/static/main/img/hello-there.mp4 similarity index 100% rename from static/main/img/hello-there.mp4 rename to src/static/main/img/hello-there.mp4 diff --git a/static/main/img/icons/logo.svg b/src/static/main/img/icons/logo.svg similarity index 100% rename from static/main/img/icons/logo.svg rename to src/static/main/img/icons/logo.svg diff --git a/static/main/js/lightmode.js b/src/static/main/js/lightmode.js similarity index 100% rename from static/main/js/lightmode.js rename to src/static/main/js/lightmode.js diff --git a/static/main/js/lightsaber.js b/src/static/main/js/lightsaber.js similarity index 100% rename from static/main/js/lightsaber.js rename to src/static/main/js/lightsaber.js diff --git a/static/main/js/navigation.js b/src/static/main/js/navigation.js similarity index 100% rename from static/main/js/navigation.js rename to src/static/main/js/navigation.js diff --git a/static/main/js/text_swap.js b/src/static/main/js/text_swap.js similarity index 100% rename from static/main/js/text_swap.js rename to src/static/main/js/text_swap.js diff --git a/static/main/js/typewriter.js b/src/static/main/js/typewriter.js similarity index 100% rename from static/main/js/typewriter.js rename to src/static/main/js/typewriter.js diff --git a/static/projects/css/projects.css b/src/static/projects/css/projects.css similarity index 100% rename from static/projects/css/projects.css rename to src/static/projects/css/projects.css diff --git a/static/projects/js/projects.js b/src/static/projects/js/projects.js similarity index 100% rename from static/projects/js/projects.js rename to src/static/projects/js/projects.js diff --git a/templates/layout.html b/src/templates/layout.html similarity index 100% rename from templates/layout.html rename to src/templates/layout.html diff --git a/templates/projects/karbs/karbs b/templates/projects/karbs/karbs deleted file mode 160000 index 2b3859e..0000000 --- a/templates/projects/karbs/karbs +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2b3859eea3373df2f575ed5e8fc534bb118fb7c4 diff --git a/tox.ini b/tox.ini deleted file mode 100644 index c5b1b37..0000000 --- a/tox.ini +++ /dev/null @@ -1,25 +0,0 @@ -[tox] -minversion = 3.8.0 -envlist = py310, flake8, mypy -isolated_build = true - -[gh-actions] -python = - 3.10: py310, mypy, flake8 - -[testenv] -setenv = - PYTHONPATH = {toxinidir} -deps = - -r{toxinidir}/requirements_dev.txt - -[testenv:flake8] -basepython = python3.10 -deps = flake8 -commands = flake8 kristofersxyz - -[testenv:mypy] -basepython = python3.10 -deps = - -r{toxinidir}/requirements_dev.txt -commands = mypy kristofersxyz