PageSourceSearch

https://universeexplorer.de/observatory/

html universeexplorer.de collected 2026-10-09 17:11:05 UTC 15,059 bytes, 308 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en" dir="ltr">
3<head>
4  <meta charset="utf-8">
5  <meta name="viewport" content="width=device-width, initial-scale=1">
6  <title>Observatory Guide — Universe Explorer Observatory Guide</title>
7  <meta name="description" content="Directory of astronomical observatories worldwide — Search by country, coordinates, wavelength range">
8  <meta name="author" content="Dr. Wolfgang Grond">
9  <link rel="alternate" hreflang="de" href="?lang=de">
10  <link rel="alternate" hreflang="en" href="?lang=en">
11  <link rel="icon" href="/images/favicon.ico" sizes="any">
12  <link rel="stylesheet" href="/css/milkyweb.css">
13  <link rel="stylesheet" href="/observatory/css/observatory.css">
14  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css">
15  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/MarkerCluster.css">
16  <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/MarkerCluster.Default.css">
17  
17<script src="https://unpkg.com/[email protected]/dist/leaflet.js" defer></script>
17
18  
18<script src="https://unpkg.com/[email protected]/dist/leaflet.markercluster.js" defer></script>
18
19</head>
20<body class="page-observatory">
21
22  <div class="site-bg" id="site-bg"></div>
23
24  <div class="site-wrapper">
25    <nav class="site-nav" role="navigation" aria-label="Main navigation">
26      <div class="site-nav__inner">
27        <a href="/" class="site-nav__logo">
28          <img src="/images/milkyweb-logo.svg" alt="Universe Explorer" width="28" height="28">
29          <span>Universe Explorer</span>
30        </a>
31        <div class="site-nav__links">
32          <a href="/" class="site-nav__link">HOME</a>
33          <a href="/astro_links/" class="site-nav__link">ASTRO LINKS</a>
34          <a href="/spacehistory/" class="site-nav__link">SPACE HISTORY</a>
35          <a href="/observatory/" class="site-nav__link site-nav__link--active">OBSERVATORY GUIDE</a>
36          <a href="/sky_survey/" class="site-nav__link">SKY SURVEY</a>
37          <a href="/organisations/" class="site-nav__link">ORGANISATIONS</a>
38        </div>
39        <div class="site-nav__right">
40          <div class="lang-switch">
41            <a href="?lang=de" class="lang-switch__option" hreflang="de" aria-label="Deutsch">DE</a>
42            <span class="lang-switch__sep">|</span>
43            <a href="?lang=en" class="lang-switch__option lang-switch__option--active" hreflang="en" aria-label="English">EN</a>
44          </div>
45          <button class="site-nav__toggle" aria-label="Menu" aria-expanded="false"
46                  onclick="document.querySelector('.site-nav__mobile').classList.toggle('is-open')">
47            <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
48              <path d="M3 6h18M3 12h18M3 18h18"/>
49            </svg>
50          </button>
51        </div>
52      </div>
53      <div class="site-nav__mobile" role="menu">
54        <a href="/" class="site-nav__link" role="menuitem">HOME</a>
55        <a href="/astro_links/" class="site-nav__link" role="menuitem">ASTRO LINKS</a>
56        <a href="/spacehistory/" class="site-nav__link" role="menuitem">SPACE HISTORY</a>
57        <a href="/observatory/" class="site-nav__link" role="menuitem">OBSERVATORY GUIDE</a>
58        <a href="/sky_survey/" class="site-nav__link" role="menuitem">SKY SURVEY</a>
59        <a href="/organisations/" class="site-nav__link" role="menuitem">ORGANISATIONS</a>
60      </div>
61    </nav>
62
63    <main class="site-main">
64
65      <h1>Observatory Guide</h1>
66
67      <p class="obs-subtitle">
68        3,301 observatories in 88 countries      </p>
69
70      <!-- Search bar -->
71      <form class="obs-search" action="/observatory/list.php" method="get">
72        <input type="hidden" name="lang" value="en">
73        <div class="obs-search__row">
74          <input type="text" name="q" class="obs-search__input"
75                 placeholder="Search observatories..."
76                 aria-label="Search">
77          <select name="band" class="obs-search__select">
78            <option value="">All wavelengths</option>
79            <option value="gamma">Gamma</option>
80            <option value="xray">X-ray</option>
81            <option value="uv">UV</option>
82            <option value="optical">Optical</option>
83            <option value="nir">NIR</option>
84            <option value="mir">MIR</option>
85            <option value="fir">FIR</option>
86            <option value="submm">Sub-mm</option>
87            <option value="radio">Radio</option>
88            <option value="neutrino">Neutrino</option>
89            <option value="gw">Gravitational Waves</option>
90            <option value="cosmic_rays">Cosmic Rays</option>
91          </select>
92          <button type="submit" class="obs-search__btn">Search</button>
93        </div>
94      </form>
95
96      <!-- Map -->
97      <div class="obs-card">
98        <div id="obs-map" style="height: 450px; border-radius: var(--radius-lg);"></div>
99      </div>
100
101      <!-- Continent grid -->
102      <h2>By Continent</h2>
103      <div class="obs-grid obs-grid--3">
104        <a href="list.php?continent=europe&lang=en" class="obs-card obs-card--link">
105          <h4>Europe</h4>
106          <p class="obs-card__meta">930 observatories            &middot; 33 countries</p>
107        </a>
108        <a href="list.php?continent=asia&lang=en" class="obs-card obs-card--link">
109          <h4>Asia</h4>
110          <p class="obs-card__meta">226 observatories            &middot; 18 countries</p>
111        </a>
112        <a href="list.php?continent=north_america&lang=en" class="obs-card obs-card--link">
113          <h4>North America</h4>
114          <p class="obs-card__meta">648 observatories            &middot; 5 countries</p>
115        </a>
116        <a href="list.php?continent=south_america&lang=en" class="obs-card obs-card--link">
117          <h4>South America</h4>
118          <p class="obs-card__meta">67 observatories            &middot; 9 countries</p>
119        </a>
120        <a href="list.php?continent=africa&lang=en" class="obs-card obs-card--link">
121          <h4>Africa</h4>
122          <p class="obs-card__meta">43 observatories            &middot; 6 countries</p>
123        </a>
124        <a href="list.php?continent=oceania&lang=en" class="obs-card obs-card--link">
125          <h4>Oceania</h4>
126          <p class="obs-card__meta">88 observatories            &middot; 2 countries</p>
127        </a>
128        <a href="list.php?continent=antarctica&lang=en" class="obs-card obs-card--link">
129          <h4>Antarctica</h4>
130          <p class="obs-card__meta">7 observatories            &middot; 1 countries</p>
131        </a>
132      </div>
133
134      <!-- Quick links -->
135      <h2>By Spectral Band</h2>
136      <div class="obs-grid obs-grid--4">
137        <a href="list.php?band=optical&lang=en" class="obs-card obs-card--link">
138          <h4>Optical</h4>
139          <p class="obs-card__meta">2,985</p>
140        </a>
141        <a href="list.php?band=radio&lang=en" class="obs-card obs-card--link">
142          <h4>Radio</h4>
143          <p class="obs-card__meta">216</p>
144        </a>
145        <a href="list.php?band=neutrino&lang=en" class="obs-card obs-card--link">
146          <h4>Neutrino</h4>
147          <p class="obs-card__meta">29</p>
148        </a>
149        <a href="list.php?band=gw&lang=en" class="obs-card obs-card--link">
150          <h4>Gravitational Waves</h4>
151          <p class="obs-card__meta">6</p>
152        </a>
153      </div>
154
155      <!-- Latitude bands -->
156      <h2>By Latitude</h2>
157      <div class="obs-card">
158        <div class="obs-lat-grid">
159          <div class="obs-lat-section">
160            <h4>Northern Hemisphere</h4>
161            <a href="list.php?lat_min=70&lat_max=90&lang=en" class="obs-lat-link">70°–90° N</a>
162            <a href="list.php?lat_min=60&lat_max=70&lang=en" class="obs-lat-link">60°–70° N</a>
163            <a href="list.php?lat_min=54&lat_max=60&lang=en" class="obs-lat-link">54°–60° N</a>
164            <a href="list.php?lat_min=50&lat_max=54&lang=en" class="obs-lat-link">50°–54° N</a>
165            <a href="list.php?lat_min=48&lat_max=50&lang=en" class="obs-lat-link">48°–50° N</a>
166            <a href="list.php?lat_min=46&lat_max=48&lang=en" class="obs-lat-link">46°–48° N</a>
167            <a href="list.php?lat_min=44&lat_max=46&lang=en" class="obs-lat-link">44°–46° N</a>
168            <a href="list.php?lat_min=42&lat_max=44&lang=en" class="obs-lat-link">42°–44° N</a>
169            <a href="list.php?lat_min=40&lat_max=42&lang=en" class="obs-lat-link">40°–42° N</a>
170            <a href="list.php?lat_min=30&lat_max=40&lang=en" class="obs-lat-link">30°–40° N</a>
171            <a href="list.php?lat_min=20&lat_max=30&lang=en" class="obs-lat-link">20°–30° N</a>
172            <a href="list.php?lat_min=0&lat_max=20&lang=en" class="obs-lat-link">0°–20° N</a>
173          </div>
174          <div class="obs-lat-section">
175            <h4>Southern Hemisphere</h4>
176            <a href="list.php?lat_min=-20&lat_max=0&lang=en" class="obs-lat-link">0°–20° S</a>
177            <a href="list.php?lat_min=-30&lat_max=-20&lang=en" class="obs-lat-link">20°–30° S</a>
178            <a href="list.php?lat_min=-40&lat_max=-30&lang=en" class="obs-lat-link">30°–40° S</a>
179            <a href="list.php?lat_min=-50&lat_max=-40&lang=en" class="obs-lat-link">40°–50° S</a>
180            <a href="list.php?lat_min=-60&lat_max=-50&lang=en" class="obs-lat-link">50°–60° S</a>
181            <a href="list.php?lat_min=-90&lat_max=-60&lang=en" class="obs-lat-link">60°–90° S</a>
182          </div>
183        </div>
184      </div>
185
186      <!-- Timezone links -->
187      <h2>By Timezone</h2>
188      <div class="obs-card">
189        <div class="obs-tz-grid">
190          <a href="list.php?tz=-12&lang=en" class="obs-tz-link">UTC -12</a>
191          <a href="list.php?tz=-11&lang=en" class="obs-tz-link">UTC -11</a>
192          <a href="list.php?tz=-10&lang=en" class="obs-tz-link">UTC -10</a>
193          <a href="list.php?tz=-9&lang=en" class="obs-tz-link">UTC -9</a>
194          <a href="list.php?tz=-8&lang=en" class="obs-tz-link">UTC -8</a>
195          <a href="list.php?tz=-7&lang=en" class="obs-tz-link">UTC -7</a>
196          <a href="list.php?tz=-6&lang=en" class="obs-tz-link">UTC -6</a>
197          <a href="list.php?tz=-5&lang=en" class="obs-tz-link">UTC -5</a>
198          <a href="list.php?tz=-4&lang=en" class="obs-tz-link">UTC -4</a>
199          <a href="list.php?tz=-3&lang=en" class="obs-tz-link">UTC -3</a>
200          <a href="list.php?tz=-2&lang=en" class="obs-tz-link">UTC -2</a>
201          <a href="list.php?tz=-1&lang=en" class="obs-tz-link">UTC -1</a>
202          <a href="list.php?tz=%2B00&lang=en" class="obs-tz-link">UTC +00</a>
203          <a href="list.php?tz=%2B01&lang=en" class="obs-tz-link">UTC +01</a>
204          <a href="list.php?tz=%2B02&lang=en" class="obs-tz-link">UTC +02</a>
205          <a href="list.php?tz=%2B03&lang=en" class="obs-tz-link">UTC +03</a>
206          <a href="list.php?tz=%2B04&lang=en" class="obs-tz-link">UTC +04</a>
207          <a href="list.php?tz=%2B05&lang=en" class="obs-tz-link">UTC +05</a>
208          <a href="list.php?tz=%2B06&lang=en" class="obs-tz-link">UTC +06</a>
209          <a href="list.php?tz=%2B07&lang=en" class="obs-tz-link">UTC +07</a>
210          <a href="list.php?tz=%2B08&lang=en" class="obs-tz-link">UTC +08</a>
211          <a href="list.php?tz=%2B09&lang=en" class="obs-tz-link">
211UTC +09</a>
212          <a href="list.php?tz=%2B10&lang=en" class="obs-tz-link">UTC +10</a>
213          <a href="list.php?tz=%2B11&lang=en" class="obs-tz-link">UTC +11</a>
214          <a href="list.php?tz=%2B12&lang=en" class="obs-tz-link">UTC +12</a>
215        </div>
216      </div>
217
218      <p style="text-align: center; margin-top: var(--space-8);">
219        <a href="submit.php?lang=en" class="obs-btn">
220          Submit an observatory        </a>
221      </p>
222
223
224    </main>
225
226    
226<script>
227    document.addEventListener('DOMContentLoaded', function() {
228      var map = L.map('obs-map').setView([30, 0], 2);
229      L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
230        attribution: '&copy; OpenStreetMap',
231        maxZoom: 18
232      }).addTo(map);
233
234      var markers = L.markerClusterGroup({
235        maxClusterRadius: 40,
236        spiderfyOnMaxZoom: true,
237        showCoverageOnHover: false,
238        iconCreateFunction: function(cluster) {
239          var count = cluster.getChildCount();
240          var size = count < 10 ? 'small' : count < 50 ? 'medium' : 'large';
241          return L.divIcon({
242            html: '<div><span>' + count + '</span></div>',
243            className: 'obs-cluster obs-cluster--' + size,
244            iconSize: L.point(40, 40)
245          });
246        }
247      });
248
249      fetch('/observatory/api/observatories.php?format=geojson&lang=en')
250        .then(function(r) { return r.json(); })
251        .then(function(data) {
252          var geoLayer = L.geoJSON(data, {
253            pointToLayer: function(feature, latlng) {
254              return L.circleMarker(latlng, {
255                radius: 5,
256                fillColor: feature.properties.color || '#6592ff',
257                color: '#fff',
258                weight: 1,
259                fillOpacity: 0.85
260              });
261            },
262            onEachFeature: function(feature, layer) {
263              var p = feature.properties;
264              layer.bindPopup(
265                '<b>' + p.name + '</b>' +
266                (p.country ? '<br>' + p.country : '') +
267                (p.iau ? '<br>IAU ' + p.iau : '') +
268                (p.bands ? '<br><small>' + p.bands + '</small>' : '') +
269                '<br><a href="detail.php?id=' + p.id + '&lang=en">Details &raquo;</a>'
270              );
271            }
272          });
273          markers.addLayer(geoLayer);
274          map.addLayer(markers);
275        });
276    });
277    </script>
277
278
279    <footer class="site-footer">
280      <div class="site-footer__inner">
281        <div class="site-footer__copy">
282          &copy; 2026 universeexplorer.de &mdash; Astronomy links since 2001        </div>
283        <div class="site-footer__links">
284          <a href="/en/impressum.php" class="site-footer__link">Legal Notice</a>
285          <a href="/en/privacy.php" class="site-footer__link">Privacy</a>
286          <a href="/en/disclaimer.php" class="site-footer__link">Disclaimer</a>
287          <a href="mailto:[email protected]" class="site-footer__link">Contact</a>
288        </div>
289      </div>
290    </footer>
291
292  </div><!-- .site-wrapper -->
293
294  
294<script>
295    (function() {
296      var bgs = ["milkyway.webp","carina_nebula.webp","deepfield.webp","omega_centauri.webp",
297        "ring_nebula.webp","pillars_of_creation.webp","andromeda.webp","pleiades.webp",
298        "orion_nebula.webp","lagoon_nebula.webp","eagle_nebula.webp",
299        "neptune.webp","solar_flare.webp","saturn_rings.webp","pluto.webp",
300        "milkyway_paranal.webp","galactic_center.webp","sagittarius_starfield.webp",
301        "ngc3603_starfield.webp","ngc6752_starfield.webp","deep_galaxy_field.webp"];
302      var bg = bgs[Math.floor(Math.random() * bgs.length)];
303      document.getElementById('site-bg').style.backgroundImage = 'url(/images/backgrounds/' + bg + ')';
304    })();
305  </script>
305
306
307</body>
308</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.