Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@ APP_SECRET=90f2d22c92712fa1cc32be3a26f4e599
DATABASE_URL="postgresql://symfony:ChangeMe@127.0.0.1:5432/app?serverVersion=13&charset=utf8"
###< doctrine/doctrine-bundle ###

GRAPH_CACHE_DIRECTORY='/var/www/luft/public/img/graph_cache'

OPENWEATHERMAP_APPID='asdf'

REDIS_HOST="localhost"
Expand Down
2 changes: 0 additions & 2 deletions .env.test
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ PANTHER_ERROR_SCREENSHOT_DIR=./var/error-screenshots
ADMIN_PASSWORD=123


GRAPH_CACHE_DIRECTORY='/var/www/luft/public/img/graph_cache'

OPENWEATHERMAP_APPID='asdf'

REDIS_HOST="localhost"
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,4 @@ npm-debug.log
###> symfony/phpunit-bridge ###
.phpunit
.phpunit.result.cache
/phpunit.xml
###< symfony/phpunit-bridge ###
6 changes: 3 additions & 3 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co

## Project Overview

Luft.jetzt is a Symfony 8.0 (PHP 8.5) web application that aggregates and displays air quality / pollution data from multiple sources (German Umweltbundesamt, Luftdaten, OpenWeatherMap). It uses PostgreSQL with PostGIS for geospatial queries, Elasticsearch for search, and Redis for caching.
Luft.jetzt is a Symfony 8.0 (PHP 8.5) web application that aggregates and displays air quality / pollution data from multiple sources (German Umweltbundesamt, Luftdaten, OpenWeatherMap). It uses PostgreSQL with PostGIS for geospatial queries and Redis for caching. Search/autocomplete is handled client-side by `@algolia/autocomplete-js` against prefetch endpoints plus Nominatim geocoding — there is no Elasticsearch integration in the application code.

## Common Commands

Expand Down Expand Up @@ -74,12 +74,12 @@ REST API under `/api` with Swagger docs at `/api/doc` and OpenAPI JSON at `/api/

### Frontend

Webpack Encore with two JS entry points (`app.js`, `datatables.js`) and SCSS. Uses Bootstrap 5, Leaflet for maps, Chart.js, Typeahead/Bloodhound for search, and Handlebars templates.
Webpack Encore with two JS entry points (`app.js`, `datatables.js`) and SCSS. Uses Bootstrap 5, Leaflet for maps, Chart.js, `@algolia/autocomplete-js` for search/autocomplete, and Handlebars templates.

## Infrastructure

- **Database**: PostgreSQL 15 + PostGIS 3.3 (port 25432 via Docker, DB: `gis`, user: `docker`)
- **Search**: Elasticsearch 7.17.2 (port 9200)
- **Search/autocomplete**: `@algolia/autocomplete-js` (frontend) against prefetch endpoints + Nominatim geocoding; no Elasticsearch integration in the app (the `elasticsearch` service in `docker-compose.yml` is a legacy remnant)
- **Cache**: Redis (port 6379)
- **Locale**: German (`de`), host: `luft.jetzt`

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Dazu werden unterschiedliche Datenquellen angezapft, etwa die öffentlich zugän

Luft.jetzt ist eine Symfony-4-Anwendung und benötigt den üblichen LAMP-Stack mit PHP 7.1.

Die Daten werden grundsätzlich in einer SQL-Datenbank gespeichert, werden aber zur Beschleunigung des Suchvorganges mit Elasticsearch indiziert; momentan ist mindestens Elasticsearch 6.3 notwendig.
Die Daten werden in einer PostgreSQL-Datenbank mit PostGIS-Erweiterung gespeichert; Redis dient als Cache. Die Suche/Autovervollständigung im Frontend läuft über `@algolia/autocomplete-js` gegen Prefetch-Endpunkte sowie Nominatim-Geocoding — eine Elasticsearch-Integration existiert im Anwendungscode nicht.

## Installation

Expand Down
16 changes: 0 additions & 16 deletions config/packages/dev/easy_log_handler.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion config/packages/sonata_seo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ sonata_seo:
default: sonata.seo.page.default
metas:
name:
keywords: Luft, Stickstoffdioxid, NO2, Schwefeldioxid, SO2, Kohlemnonooxid, CO, Ozon, O3, Feinstaub, PM10
keywords: Luft, Stickstoffdioxid, NO2, Schwefeldioxid, SO2, Kohlenmonoxid, CO, Ozon, O3, Feinstaub, PM10
description: Aktuelle Luftmesswerte aus deiner Umgebung
robots: index, follow
'twitter:site': '@calderacc'
Expand Down
3 changes: 0 additions & 3 deletions config/routing/4_frontend.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,3 @@ display:
_controller: App\Controller\DisplayController::indexAction
options:
expose: true

logout:
path: /logout
5 changes: 0 additions & 5 deletions config/services.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices.html#use-parameters-for-application-configuration
parameters:
locale: 'de'
router.request_context.host: 'luft.jetzt'
router.request_context.scheme: 'https'

Expand All @@ -14,7 +13,6 @@ services:
autowire: true
autoconfigure: true
bind:
$graphCacheDirectory: '%env(GRAPH_CACHE_DIRECTORY)%'
$redisHost: 'redis://%env(REDIS_HOST)%'

# makes classes in src/ available to be used as services
Expand All @@ -39,9 +37,6 @@ services:
arguments:
$sonataSeoPage: '@sonata.seo.page.default'

App\Air\Pollution\DataPersister\PersisterInterface:
alias: App\Air\Pollution\DataPersister\PostgisPersister

App\Air\Geocoding\Guesser\CityGuesser:
$provider: '@bazinga_geocoder.provider.nominatim'

Expand Down
1 change: 0 additions & 1 deletion src/Air/Geocoding/RequestConverter/RequestConverter.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
namespace App\Air\Geocoding\RequestConverter;

use App\Air\Geocoding\Geocoder\GeocoderInterface;
use App\Entity\Zip;
use App\Geo\Coordinate\Coordinate;
use App\Geo\Coordinate\CoordinateInterface;
use Doctrine\Persistence\ManagerRegistry;
Expand Down
54 changes: 0 additions & 54 deletions src/Air/ImportCache/ImportCache.php

This file was deleted.

14 changes: 0 additions & 14 deletions src/Air/ImportCache/ImportCacheInterface.php

This file was deleted.

26 changes: 0 additions & 26 deletions src/Air/Util/ClassUtil.php

This file was deleted.

17 changes: 0 additions & 17 deletions src/Air/Util/StringUtil.php

This file was deleted.

29 changes: 0 additions & 29 deletions src/Twig/Extension/CronTwigExtension.php

This file was deleted.

Loading