diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000..a44058c
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1,3 @@
+.DS_Store
+node_modules
+dist
\ No newline at end of file
diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml
new file mode 100644
index 0000000..fb4572c
--- /dev/null
+++ b/.github/workflows/docker-image.yml
@@ -0,0 +1,51 @@
+name: Docker Image CI
+
+on:
+ push:
+ branches: [ "main", "feature/website-2.0" ]
+ pull_request:
+ branches: [ "main" ]
+
+env:
+ REGISTRY: ghcr.io
+ IMAGE_NAME: ${{ github.repository }}
+
+jobs:
+
+ build:
+
+ runs-on: ubuntu-latest
+
+ permissions:
+ contents: read
+ packages: write
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Node install and build
+ uses: actions/setup-node@v3
+ with:
+ node-version: '20.x'
+ - run: npm i
+ - run: npm run build --if-present
+ - name: Log in to the Container registry
+ uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
+ with:
+ registry: ${{ env.REGISTRY }}
+ username: ${{ github.actor }}
+ password: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Extract metadata (tags, labels) for Docker
+ id: meta
+ uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
+ with:
+ images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Build and push Docker image
+ uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc
+ with:
+ context: .
+ push: true
+ tags: ${{ steps.meta.outputs.tags }}
+ labels: ${{ steps.meta.outputs.labels }}
\ No newline at end of file
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
deleted file mode 100644
index d7fe848..0000000
--- a/.github/workflows/pages.yml
+++ /dev/null
@@ -1,30 +0,0 @@
-name: Deploy to GitHub Pages
-
-on:
- push:
- branches: [main]
-
-permissions:
- contents: read
- pages: write
- id-token: write
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout Repository
- uses: actions/checkout@v3
- - name: Install, Build, and Upload
- uses: withastro/action@v0
-
- deploy:
- needs: build
- runs-on: ubuntu-latest
- environment:
- name: github-pages
- url: ${{ steps.deployment.outputs.page_url }}
- steps:
- - name: Deploy to GitHub Pages
- id: deployment
- uses: actions/deploy-pages@v1
diff --git a/.gitignore b/.gitignore
index 7329a85..02c0d6e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@ pnpm-debug.log*
# macOS-specific files
.DS_Store
+.next
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..6f97d5c
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,7 @@
+FROM nginx:alpine
+
+RUN rm /etc/nginx/conf.d/default.conf
+COPY ./nginx/nginx.conf /etc/nginx/conf.d
+
+COPY ./out /usr/share/nginx/html/
+EXPOSE 80
diff --git a/astro.config.mjs b/astro.config.mjs
deleted file mode 100644
index 17aafa3..0000000
--- a/astro.config.mjs
+++ /dev/null
@@ -1,7 +0,0 @@
-import { defineConfig } from 'astro/config';
-import tailwind from '@astrojs/tailwind';
-
-export default defineConfig({
- integrations: [tailwind()],
- site: 'https://hackhpi.org/',
-});
diff --git a/next-env.d.ts b/next-env.d.ts
new file mode 100644
index 0000000..4f11a03
--- /dev/null
+++ b/next-env.d.ts
@@ -0,0 +1,5 @@
+///
- What to expect at HackHPI 2024 -
-- In the era of rapid urbanization and advancing technologies, the concept - of smart cities has emerged as a solution to address the evolving needs - of our society. To meet these demands of an increasingly digitized - society, government agencies and companies alike must adapt their - infrastructure and embrace state-of-the-art technologies. -
-- Furthermore, the increasing awareness about climate change urges us to - take steps towards a more sustainable future. Whether it be our way of - transportation or our general lifestyle, clever designs and coding - solutions can motivate us to do better. -
-- However, much work still needs to be done in making our cities work - seamlessly and environmentally friendly. Therefore, this year focuses on - developing solutions for tomorrow's urban society and solving problems - we already face. -
-- For two consecutive days, we will bring motivated students from - different backgrounds together at HPI near Berlin. By providing - world-class sponsors, including workshops and access to their data and - APIs, a great location and plenty of caffeine to fuel your brain, we - will create a space for creativity, inspiring ideas and a passion for - trying out new things. -
-- Can't find the answer you're looking for? You can always send us an email with your enquiry. Furthermore, you can find the MLH's code of - conduct - here. -
-{it.answer}
-Get to know the organizers
-- about://building-trust-in-digital-state -
-Diese Webseite wird betrieben vom
-
- HackHPI Klub
- am Hasso-Plattner-Institut
- Prof.-Dr.-Helmert-Str. 2-3
- 14482 Potsdam
- E-Mail: team@hackhpi.org
-
Inhaltlich verantwortlich gemäß § 5 TMG, § 55 RStV: Klubsprecher Theo Klinke und Mathilda Heise
-- Trotz größtmöglicher Sorgfalt kann nicht ausgeschlossen werden, dass - einzelne Informationen auf dieser Seite veraltet oder nicht zutreffend - sind. Es wird keine Haftung für Aktualität, Genauigkeit und - Vollständigkeit der publizierten Informationen übernommen. Für den Inhalt - verlinkter externer Webseiten sind lediglich deren Betreiber - verantwortlich. -
-
- HPI Hauptgebäude: HPI/K. Herschelmann
- HPI School of Design Thinking: Nico Böckhoff
- Partner-Logos: Der jeweilige Partner
-
- Verantwortliche Stelle im Sinne der Datenschutzgesetze, insbesondere der - EU-Datenschutzgrundverordnung (DSGVO), ist der -
-
- HackHPI Klub
- am Hasso-Plattner-Institut
- Prof.-Dr.-Helmert-Str. 2-3
- 14482 Potsdam
-
- Unter den angegebenen Kontaktdaten unseres Datenschutzbeauftragten können - Sie jederzeit folgende Rechte ausüben: -
-- Sofern Sie uns eine Einwilligung erteilt haben, können Sie diese jederzeit - mit Wirkung für die Zukunft widerrufen. -
-- Sie können sich jederzeit mit einer Beschwerde an eine Aufsichtsbehörde - wenden, z. B. an die zuständige Aufsichtsbehörde des Bundeslands Ihres - Wohnsitzes oder an die für uns als verantwortliche Stelle zuständige - Behörde. -
-- Eine Liste der Aufsichtsbehörden (für den nichtöffentlichen Bereich) mit - Anschrift finden Sie unter: https://www.bfdi.bund.de/DE/Infothek/Anschriften_Links/anschriften_links-node.html. -
-- Wenn Sie auf unsere Website zugreifen, d.h., wenn Sie sich nicht - registrieren oder anderweitig Informationen übermitteln, werden - automatisch Informationen allgemeiner Natur erfasst. Diese Informationen - (Server-Logfiles) beinhalten etwa die Art des Webbrowsers, das verwendete - Betriebssystem, den Domainnamen Ihres Internet-Service-Providers, Ihre - IP-Adresse und ähnliches. -
-Sie werden insbesondere zu folgenden Zwecken verarbeitet:
-- Wir verwenden Ihre Daten nicht, um Rückschlüsse auf Ihre Person zu ziehen. - Informationen dieser Art werden von uns ggfs. statistisch ausgewertet, um - unseren Internetauftritt und die dahinterstehende Technik zu optimieren. -
-- Die Verarbeitung erfolgt gemäß Art. 6 Abs. 1 lit. f DSGVO auf Basis - unseres berechtigten Interesses an der Verbesserung der Stabilität und - Funktionalität unserer Website. -
-- Empfänger der Daten sind ggf. technische Dienstleister, die für den - Betrieb und die Wartung unserer Webseite als Auftragsverarbeiter tätig - werden. -
-- Die Daten werden gelöscht, sobald diese für den Zweck der Erhebung nicht - mehr erforderlich sind. Dies ist für die Daten, die der Bereitstellung der - Webseite dienen, grundsätzlich der Fall, wenn die jeweilige Sitzung - beendet ist. -
-- Die Bereitstellung der vorgenannten personenbezogenen Daten ist weder - gesetzlich noch vertraglich vorgeschrieben. Ohne die IP-Adresse ist jedoch - der Dienst und die Funktionsfähigkeit unserer Website nicht gewährleistet. - Zudem können einzelne Dienste und Services nicht verfügbar oder - eingeschränkt sein. Aus diesem Grund ist ein Widerspruch ausgeschlossen. -
-- Ihre Daten werden ausschließlich dazu verwendet, Ihnen den abonnierten - Newsletter per E-Mail zuzustellen. Die Angabe Ihres Namens erfolgt, um Sie - im Newsletter persönlich ansprechen zu können und ggf. zu identifizieren, - falls Sie von Ihren Rechten als Betroffener Gebrauch machen wollen. -
-- Für den Empfang des Newsletters ist die Angabe Ihrer E-Mail-Adresse - ausreichend. Bei der Anmeldung zum Bezug unseres Newsletters werden die - von Ihnen angegebenen Daten ausschließlich für diesen Zweck verwendet. - Abonnenten können auch über Umstände per E-Mail informiert werden, die für - den Dienst oder die Registrierung relevant sind (bspw. Änderungen des - Newsletterangebots oder technische Gegebenheiten). -
-- Für eine wirksame Registrierung benötigen wir eine valide E-Mail-Adresse. - Um zu überprüfen, dass eine Anmeldung tatsächlich durch den Inhaber einer - E-Mail-Adresse erfolgt, setzen wir das „Double-opt-in“-Verfahren ein. - Hierzu protokollieren wir die Bestellung des Newsletters, den Versand - einer Bestätigungsmail und den Eingang der hiermit angeforderten Antwort. - Weitere Daten werden nicht erhoben. Die Daten werden ausschließlich für - den Newsletterversand verwendet und nicht an Dritte weitergegeben. -
-- Auf Grundlage Ihrer ausdrücklich erteilten Einwilligung (Art. 6 Abs. 1 - lit. a DSGVO), übersenden wir Ihnen regelmäßig unseren Newsletter bzw. - vergleichbare Informationen per E-Mail an Ihre angegebene E-Mail-Adresse. -
-- Die Einwilligung zur Speicherung Ihrer persönlichen Daten und ihrer - Nutzung für den Newsletterversand können Sie jederzeit mit Wirkung für die - Zukunft widerrufen. In jedem Newsletter findet sich dazu ein - entsprechender Link. Außerdem können Sie sich jederzeit auch direkt auf - dieser Website abmelden oder uns Ihren Widerruf über die am Ende dieser - Datenschutzhinweise angegebene Kontaktmöglichkeit mitteilen. -
-Empfänger der Daten sind ggf. Auftragsverarbeiter.
-- Die Daten werden in diesem Zusammenhang nur verarbeitet, solange die - entsprechende Einwilligung vorliegt. Danach werden sie gelöscht. -
-- Die Bereitstellung Ihrer personenbezogenen Daten erfolgt freiwillig, - allein auf Basis Ihrer Einwilligung. Ohne bestehende Einwilligung können - wir Ihnen unseren Newsletter leider nicht zusenden. -
-- Die von Ihnen eingegebenen Daten werden zum Zweck der individuellen - Kommunikation mit Ihnen gespeichert. Hierfür ist die Angabe einer validen - E-Mail-Adresse sowie Ihres Namens erforderlich. Diese dient der Zuordnung - der Anfrage und der anschließenden Beantwortung derselben. Die Angabe - weiterer Daten ist optional. -
-- Die Verarbeitung der in das Kontaktformular eingegebenen Daten erfolgt auf - der Grundlage eines berechtigten Interesses (Art. 6 Abs. 1 lit. f DSGVO). -
-- Durch Bereitstellung des Kontaktformulars möchten wir Ihnen eine - unkomplizierte Kontaktaufnahme ermöglichen. Ihre gemachten Angaben werden - zum Zwecke der Bearbeitung der Anfrage sowie für mögliche Anschlussfragen - gespeichert. -
-- Sofern Sie mit uns Kontakt aufnehmen, um ein Angebot zu erfragen, erfolgt - die Verarbeitung der in das Kontaktformular eingegebenen Daten zur - Durchführung vorvertraglicher Maßnahmen (Art. 6 Abs. 1 lit. b DSGVO). -
-Empfänger der Daten sind ggf. Auftragsverarbeiter.
-- Daten werden spätestens 6 Monate nach Bearbeitung der Anfrage gelöscht. -
-- Sofern es zu einem Vertragsverhältnis kommt, unterliegen wir den - gesetzlichen Aufbewahrungsfristen nach HGB und löschen Ihre Daten nach - Ablauf dieser Fristen. -
-- Die Bereitstellung Ihrer personenbezogenen Daten erfolgt freiwillig. Wir - können Ihre Anfrage jedoch nur bearbeiten, sofern Sie uns Ihren Namen, - Ihre E-Mail-Adresse und den Grund der Anfrage mitteilen. -
-- Um die Sicherheit Ihrer Daten bei der Übertragung zu schützen, verwenden - wir dem aktuellen Stand der Technik entsprechende - Verschlüsselungsverfahren (z. B. SSL) über HTTPS. -
-- Wir behalten uns vor, diese Datenschutzerklärung anzupassen, damit sie - stets den aktuellen rechtlichen Anforderungen entspricht oder um - Änderungen unserer Leistungen in der Datenschutzerklärung umzusetzen, z.B. - bei der Einführung neuer Services. Für Ihren erneuten Besuch gilt dann die - neue Datenschutzerklärung. -
-- Wenn Sie Fragen zum Datenschutz haben, schreiben Sie uns bitte eine E-Mail - oder wenden Sie sich direkt an die für den Datenschutz verantwortliche - Person in unserer Organisation: -
- -- We follow MLH's code of conduct, which all attendees, partners, - volunteers, and staff are required to agree to. We expect all of our - attendees to be respectful and considerate of others. -
-The Hackathon will take place on 5th to 6th of April 2024
-- Participants must apply for HackHPI 2024 via hackhpi.org If accepted, - Participants will get a confirmation via email prior to the event when the - application period has ended. -
-- Due to a limited number of spots available, not all registered - participants may be able to participate. We will do our best to - accommodate as many participants as possible and we will notify you if you - have been selected to participate. -
-- HackHPI 2024 welcomes participants of all backgrounds and experience - levels, regardless of prior knowledge or experience in security, legal and - government technology. Prior programming experience is not required. The - main eligibility is motivation to solve challenges and willingness to - learn and grow in the field. -
-- Registration for HackHPI 2024 constitutes acceptance of these terms and - conditions (and any amendments to them), which are final and binding in - all respects. -
-- All individuals and teams that apply to HackHPI 2024 must be accepted by - the Organizers in order to be eligible to participate. -
-- The Organizers reserve the right to disqualify any participant and/or team - from HackHPI 2024 if, in their sole discretion, the participant and/or - team has not complied with these terms and conditions, has tampered with - the operation of HackHPI 2024, or has engaged in any conduct that is - detrimental or unfair to the Organizers, HackHPI 2024, or any other - participant and/or team. This determination is at the sole discretion of - the Organizers. -
-- Project ideas for HackHPI 2024 may be preconceived or spontaneously - created at the event. -
-- Each participating team may submit only one project for final - consideration by judges. -
-- Submissions must be submitted prior to the scheduled presentation time in - order to be eligible to win prizes. -
-- Additional prizes may be available solely at the discretion of the - Organizers. Full details about all additional awards will be made known at - the beginning of HackHPI 2024. The Organizers have the right to add or - remove Award categories at their discretion. -
-The following are the judging criteria:
-During the event photos and videos may be taken from the participants
-