diff --git a/.github/workflows/nextjs.yml b/.github/workflows/nextjs.yml
new file mode 100644
index 0000000..ed74736
--- /dev/null
+++ b/.github/workflows/nextjs.yml
@@ -0,0 +1,93 @@
+# Sample workflow for building and deploying a Next.js site to GitHub Pages
+#
+# To get started with Next.js see: https://nextjs.org/docs/getting-started
+#
+name: Deploy Next.js site to Pages
+
+on:
+ # Runs on pushes targeting the default branch
+ push:
+ branches: ["main"]
+
+ # Allows you to run this workflow manually from the Actions tab
+ workflow_dispatch:
+
+# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
+permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
+# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
+concurrency:
+ group: "pages"
+ cancel-in-progress: false
+
+jobs:
+ # Build job
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Detect package manager
+ id: detect-package-manager
+ run: |
+ if [ -f "${{ github.workspace }}/yarn.lock" ]; then
+ echo "manager=yarn" >> $GITHUB_OUTPUT
+ echo "command=install" >> $GITHUB_OUTPUT
+ echo "runner=yarn" >> $GITHUB_OUTPUT
+ exit 0
+ elif [ -f "${{ github.workspace }}/package.json" ]; then
+ echo "manager=npm" >> $GITHUB_OUTPUT
+ echo "command=ci" >> $GITHUB_OUTPUT
+ echo "runner=npx --no-install" >> $GITHUB_OUTPUT
+ exit 0
+ else
+ echo "Unable to determine package manager"
+ exit 1
+ fi
+ - name: Setup Node
+ uses: actions/setup-node@v4
+ with:
+ node-version: "20"
+ cache: ${{ steps.detect-package-manager.outputs.manager }}
+ - name: Setup Pages
+ uses: actions/configure-pages@v5
+ with:
+ # Automatically inject basePath in your Next.js configuration file and disable
+ # server side image optimization (https://nextjs.org/docs/api-reference/next/image#unoptimized).
+ #
+ # You may remove this line if you want to manage the configuration yourself.
+ static_site_generator: next
+ - name: Restore cache
+ uses: actions/cache@v4
+ with:
+ path: |
+ .next/cache
+ # Generate a new cache whenever packages or source files change.
+ key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }}
+ # If source files changed but packages didn't, rebuild from a prior cache.
+ restore-keys: |
+ ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-
+ - name: Install dependencies
+ run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }}
+ - name: Build with Next.js
+ run: ${{ steps.detect-package-manager.outputs.runner }} next build
+ - name: Upload artifact
+ uses: actions/upload-pages-artifact@v3
+ with:
+ path: ./out
+
+ # Deployment job
+ deploy:
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ runs-on: ubuntu-latest
+ needs: build
+ steps:
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v4
diff --git a/website/.gitignore b/.gitignore
similarity index 100%
rename from website/.gitignore
rename to .gitignore
diff --git a/README.md b/README.md
index d3dc51f..31b5184 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,39 @@
-# website
-New website using Next.JS
+Hosted at: https://paragonautonomous.github.io/website/
+
+
+This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
+
+## Getting Started
+
+First, run the development server:
+
+```bash
+npm run dev
+# or
+yarn dev
+# or
+pnpm dev
+# or
+bun dev
+```
+
+Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
+
+You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
+
+This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
+
+## Learn More
+
+To learn more about Next.js, take a look at the following resources:
+
+- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
+- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
+
+You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
+
+## Deploy on Vercel
+
+The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
+
+Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
diff --git a/website/app/components/AboutUs.tsx b/app/components/AboutUs.tsx
similarity index 91%
rename from website/app/components/AboutUs.tsx
rename to app/components/AboutUs.tsx
index d9eb34e..eb65100 100644
--- a/website/app/components/AboutUs.tsx
+++ b/app/components/AboutUs.tsx
@@ -1,14 +1,12 @@
-import Image from 'next/image';
-import hardware from '../../public/images/aboutusimg.jpeg'
-import ContactUs from './ContactUs';
+// import Image from 'next/image';
export default function AboutUs() {
return (
-
+
About Paragon
-
+
At Paragon Autonomous, we empower communities with cutting-edge drone technology designed to detect and suppress wildfires before they escalate. Our mission is to aid first responders by protecting lives, homes, and wildlife.
@@ -21,15 +19,17 @@ export default function AboutUs() {
-
-
+
+
+
+
-
+
OUR FLIGHT PATH
@@ -60,7 +60,7 @@ export default function AboutUs() {
-
What's Next?
+
What&aposs Next?
We are expanding partnerships with fire departments, environmental agencies, and emergency teams to scale autonomous wildfire prevention. With continued innovation, we aim to make AI-driven fire detection and suppression the industry standard, protecting more communities and ecosystems.
+ );
+}
\ No newline at end of file
diff --git a/website/app/components/EndPage.tsx b/app/components/EndPage.tsx
similarity index 100%
rename from website/app/components/EndPage.tsx
rename to app/components/EndPage.tsx
diff --git a/website/app/components/FlightPath.tsx b/app/components/FlightPath.tsx
similarity index 99%
rename from website/app/components/FlightPath.tsx
rename to app/components/FlightPath.tsx
index 7776bc6..66e0b4a 100644
--- a/website/app/components/FlightPath.tsx
+++ b/app/components/FlightPath.tsx
@@ -19,7 +19,7 @@ export default function FlightPath() {
-
What's next?
+
What&aposs next?
We are expanding partnerships with fire departments, environmental agencies, and emergency teams to scale autonomous wildfire prevention. With continued innovation, we aim to make AI-driven fire detection and suppression the industry standard, protecting more communities and ecosystems
diff --git a/website/app/components/Footer.tsx b/app/components/Footer.tsx
similarity index 100%
rename from website/app/components/Footer.tsx
rename to app/components/Footer.tsx
diff --git a/website/app/components/GlobalButton.tsx b/app/components/GlobalButton.tsx
similarity index 100%
rename from website/app/components/GlobalButton.tsx
rename to app/components/GlobalButton.tsx
diff --git a/app/components/Homepage.tsx b/app/components/Homepage.tsx
new file mode 100644
index 0000000..706264a
--- /dev/null
+++ b/app/components/Homepage.tsx
@@ -0,0 +1,43 @@
+// import Image from 'next/image';
+export default function Homepage() {
+ return (
+
+ {/* First Section - Full Screen Background */}
+
+
+
+
+ A Safer World, Powered By Paragon
+
+
+
+ {/* Second Section - Scroll Down with Image on the Left */}
+
+
+
+
+
+
+
+
+ Wildfires in the U.S. destroyed over 8 MILLION acres of land in 2024, costing billions in damages
+
+
+ We leverage cutting-edge drone technology to prevent wildfires before they start.
+
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/app/components/Navbar.tsx b/app/components/Navbar.tsx
new file mode 100644
index 0000000..ccd6d4b
--- /dev/null
+++ b/app/components/Navbar.tsx
@@ -0,0 +1,41 @@
+'use client';
+import { useState } from "react";
+import ContactUs from "./ContactUs"; // adjust the import path as needed
+
+export default function Navbar() {
+ const [showContact, setShowContact] = useState(false);
+
+ return (
+ <>
+
+
+ {showContact && (
+
+ {/* mt-16 pushes the modal below the navbar */}
+
+ )}
+ >
+ );
+}
\ No newline at end of file
diff --git a/website/app/components/Partnerships.tsx b/app/components/Partnerships.tsx
similarity index 89%
rename from website/app/components/Partnerships.tsx
rename to app/components/Partnerships.tsx
index 45ab39b..3df7811 100644
--- a/website/app/components/Partnerships.tsx
+++ b/app/components/Partnerships.tsx
@@ -21,7 +21,7 @@ export default function Partnerships() {
We Collaborate with fire safety leaders, AI developers, and research institutions to advance wildfire detection technology and optimize fire suppression methods
-
"Drone have given us an aerial perspective we never had before- allowing for early detection and smarter resource allocation." - Wildfire Conservation Specialist, Arizona
+
"Drone have given us an aerial perspective we never had before- allowing for early detection and smarter resource allocation." - Wildfire Conservation Specialist, Arizona
Partner with us button
);
diff --git a/website/app/components/Products.tsx b/app/components/Products.tsx
similarity index 80%
rename from website/app/components/Products.tsx
rename to app/components/Products.tsx
index 9a028ca..1b75300 100644
--- a/website/app/components/Products.tsx
+++ b/app/components/Products.tsx
@@ -1,10 +1,14 @@
import GlobalButton from "./GlobalButton";
+// import scouterimg from '../../public/images/scouter.png'
+// import payloadimg from '../../public/images/payload.png'
+import Image from 'next/image';
export default function Products() {
return (
-
+
OUR PRODUCTS
-
+ {/* Scouter drone image */}
+
SCOUTER PRO
Scouter Pro is an AI-powered aerial surveillance drone designed for early wildfire detection and real-time risk assessment. Equipped with thermal imaging, environmental sensors, and high-definition optical cameras, it continuously scans large areas for signs of fire before they spread. The drone operates autonomously, communicating through Paragon’s mesh network to relay critical fire data to the nearest Payload Drone and emergency responders.
@@ -13,7 +17,8 @@ export default function Products() {
-
+ {/* Payload drone image */}
+
PAYLOAD PRO
Payload Pro is an advanced fire suppression drone capable of carrying and deploying up to 15 lbs of fire retardant with GPS-guided precision. Designed to work alongside Scouter Pro, it responds to fire alerts by autonomously flying to the fire’s location and delivering targeted suppression, preventing small fires from becoming uncontrollable disasters.
diff --git a/website/app/components/Wildfireinfo.tsx b/app/components/Wildfireinfo.tsx
similarity index 100%
rename from website/app/components/Wildfireinfo.tsx
rename to app/components/Wildfireinfo.tsx
diff --git a/website/app/favicon.ico b/app/favicon.ico
similarity index 100%
rename from website/app/favicon.ico
rename to app/favicon.ico
diff --git a/website/app/globals.css b/app/globals.css
similarity index 100%
rename from website/app/globals.css
rename to app/globals.css
diff --git a/website/app/layout.tsx b/app/layout.tsx
similarity index 100%
rename from website/app/layout.tsx
rename to app/layout.tsx
diff --git a/website/app/page.tsx b/app/page.tsx
similarity index 78%
rename from website/app/page.tsx
rename to app/page.tsx
index 03d42e8..7e473ad 100644
--- a/website/app/page.tsx
+++ b/app/page.tsx
@@ -6,7 +6,7 @@ import Footer from "./components/Footer";
import Partnerships from "./components/Partnerships";
import Products from "./components/Products";
import EndPage from "./components/EndPage";
-import FlightPath from "./components/FlightPath";
+// import FlightPath from "./components/FlightPath";
export default function Home() {
return (
@@ -14,16 +14,16 @@ export default function Home() {
- {/* */}
+ {/* NEXTJS AUTOMATICALLY APPENDS /PUBLIC/ in front of all image paths, evidently*/}
= 20.0.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "15.3.0-canary.12",
- "@next/swc-darwin-x64": "15.3.0-canary.12",
- "@next/swc-linux-arm64-gnu": "15.3.0-canary.12",
- "@next/swc-linux-arm64-musl": "15.3.0-canary.12",
- "@next/swc-linux-x64-gnu": "15.3.0-canary.12",
- "@next/swc-linux-x64-musl": "15.3.0-canary.12",
- "@next/swc-win32-arm64-msvc": "15.3.0-canary.12",
- "@next/swc-win32-x64-msvc": "15.3.0-canary.12",
+ "@next/swc-darwin-arm64": "15.3.0-canary.26",
+ "@next/swc-darwin-x64": "15.3.0-canary.26",
+ "@next/swc-linux-arm64-gnu": "15.3.0-canary.26",
+ "@next/swc-linux-arm64-musl": "15.3.0-canary.26",
+ "@next/swc-linux-x64-gnu": "15.3.0-canary.26",
+ "@next/swc-linux-x64-musl": "15.3.0-canary.26",
+ "@next/swc-win32-arm64-msvc": "15.3.0-canary.26",
+ "@next/swc-win32-x64-msvc": "15.3.0-canary.26",
"sharp": "^0.33.5"
},
"peerDependencies": {
diff --git a/website/package.json b/package.json
similarity index 89%
rename from website/package.json
rename to package.json
index 9c878ca..165e538 100644
--- a/website/package.json
+++ b/package.json
@@ -6,6 +6,8 @@
"dev": "next dev --turbopack",
"build": "next build",
"start": "next start",
+ "export": "next export",
+ "deploy": "npm run build && next export",
"lint": "next lint"
},
"dependencies": {
diff --git a/website/postcss.config.mjs b/postcss.config.mjs
similarity index 100%
rename from website/postcss.config.mjs
rename to postcss.config.mjs
diff --git a/website/public/images/aboutusimg.jpeg b/public/images/aboutusimg.jpeg
similarity index 100%
rename from website/public/images/aboutusimg.jpeg
rename to public/images/aboutusimg.jpeg
diff --git a/website/public/images/firefighterimg.png b/public/images/firefighterimg.png
similarity index 100%
rename from website/public/images/firefighterimg.png
rename to public/images/firefighterimg.png
diff --git a/website/public/images/footerflag.png b/public/images/footerflag.png
similarity index 100%
rename from website/public/images/footerflag.png
rename to public/images/footerflag.png
diff --git a/website/public/img/front-image.jpeg b/public/images/front-image.jpeg
similarity index 100%
rename from website/public/img/front-image.jpeg
rename to public/images/front-image.jpeg
diff --git a/website/public/img/front-page-fire.png b/public/images/front-page-fire.png
similarity index 100%
rename from website/public/img/front-page-fire.png
rename to public/images/front-page-fire.png
diff --git a/public/images/payload.png b/public/images/payload.png
new file mode 100644
index 0000000..3545e14
Binary files /dev/null and b/public/images/payload.png differ
diff --git a/public/images/scouter.png b/public/images/scouter.png
new file mode 100644
index 0000000..510673e
Binary files /dev/null and b/public/images/scouter.png differ
diff --git a/website/public/images/wavedown.svg b/public/images/wavedown.svg
similarity index 100%
rename from website/public/images/wavedown.svg
rename to public/images/wavedown.svg
diff --git a/website/public/images/waveup.svg b/public/images/waveup.svg
similarity index 100%
rename from website/public/images/waveup.svg
rename to public/images/waveup.svg
diff --git a/website/tailwind.config.ts b/tailwind.config.ts
similarity index 100%
rename from website/tailwind.config.ts
rename to tailwind.config.ts
diff --git a/website/tsconfig.json b/tsconfig.json
similarity index 100%
rename from website/tsconfig.json
rename to tsconfig.json
diff --git a/website/README.md b/website/README.md
deleted file mode 100644
index e215bc4..0000000
--- a/website/README.md
+++ /dev/null
@@ -1,36 +0,0 @@
-This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
-
-## Getting Started
-
-First, run the development server:
-
-```bash
-npm run dev
-# or
-yarn dev
-# or
-pnpm dev
-# or
-bun dev
-```
-
-Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
-
-You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
-
-This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
-
-## Learn More
-
-To learn more about Next.js, take a look at the following resources:
-
-- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
-- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
-
-You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
-
-## Deploy on Vercel
-
-The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
-
-Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
diff --git a/website/app/components/ContactUs.tsx b/website/app/components/ContactUs.tsx
deleted file mode 100644
index 9dfce49..0000000
--- a/website/app/components/ContactUs.tsx
+++ /dev/null
@@ -1,91 +0,0 @@
-'use client';
-
-import { useState, ChangeEvent, FormEvent } from 'react';
-import emailjs from 'emailjs-com';
-
-type FormData = {
- email: string;
- message: string;
- category: string;
-};
-
-export default function ContactUs() {
- const [formData, setFormData] = useState({
- email: '',
- message: '',
- category: 'Website Error',
- });
-
- const handleChange = (
- e: ChangeEvent
- ) => {
- setFormData({ ...formData, [e.target.name]: e.target.value });
- };
-
- const handleSubmit = async (e: FormEvent) => {
- e.preventDefault();
- try {
- await emailjs.send(
- 'your_service_id',
- 'your_template_id',
- {
- to_email: 'example@paragonautonomous.com',
- from_email: formData.email,
- message: formData.message,
- category: formData.category,
- },
- 'your_public_key'
- );
- alert('Message sent successfully!');
- setFormData({ email: '', message: '', category: 'Website Error' });
- } catch (error) {
- console.error('Error sending email:', error);
- alert('Failed to send message.');
- }
- };
-
- return (
-
-
Contact Us
-
-
- );
-}
diff --git a/website/app/components/Homepage.tsx b/website/app/components/Homepage.tsx
deleted file mode 100644
index 115b217..0000000
--- a/website/app/components/Homepage.tsx
+++ /dev/null
@@ -1,37 +0,0 @@
-import Image from 'next/image';
-
-export default function Homepage() {
- return (
-
- {/* First Section - Full Screen Background */}
-
-
A Safer World, Powered By Paragon
-
-
- {/* Second Section - Scroll Down with Image on the Left */}
-
-
-
-
-
-
-
-
Wildfires in the U.S. destroyed over 8 MILLION acres of land in 2024, costing billions in damages
-
- We leverage cutting-edge drone technology prevent wildfires before they start.
-
-
-
-
- );
-}
\ No newline at end of file
diff --git a/website/app/components/Navbar.tsx b/website/app/components/Navbar.tsx
deleted file mode 100644
index e1d6157..0000000
--- a/website/app/components/Navbar.tsx
+++ /dev/null
@@ -1,21 +0,0 @@
-// this is where the navbar will be implemented
-// interactivity
-"use client";
-import { useState } from "react";
-import Link from 'next/link';
-// msin navbar function
-export default function Navbar() {
- return (
-
- );
- // get in touch button end of navbar
- }
diff --git a/website/public/file.svg b/website/public/file.svg
deleted file mode 100644
index 004145c..0000000
--- a/website/public/file.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/website/public/globe.svg b/website/public/globe.svg
deleted file mode 100644
index 567f17b..0000000
--- a/website/public/globe.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/website/public/next.svg b/website/public/next.svg
deleted file mode 100644
index 5174b28..0000000
--- a/website/public/next.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/website/public/vercel.svg b/website/public/vercel.svg
deleted file mode 100644
index 7705396..0000000
--- a/website/public/vercel.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/website/public/window.svg b/website/public/window.svg
deleted file mode 100644
index b2b2a44..0000000
--- a/website/public/window.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file