diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..a48d1b4 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,23 @@ +{ + "workbench.colorTheme": ".NET Purple theme dark", + "workbench.colorCustomizations": { + "activityBar.activeBackground": "#ce0c36", + "activityBar.background": "#ce0c36", + "activityBar.foreground": "#e7e7e7", + "activityBar.inactiveForeground": "#e7e7e799", + "activityBarBadge.background": "#2fb50b", + "activityBarBadge.foreground": "#e7e7e7", + "commandCenter.border": "#e7e7e799", + "sash.hoverBorder": "#ce0c36", + "statusBar.background": "#9e0929", + "statusBar.foreground": "#e7e7e7", + "statusBarItem.hoverBackground": "#ce0c36", + "statusBarItem.remoteBackground": "#9e0929", + "statusBarItem.remoteForeground": "#e7e7e7", + "titleBar.activeBackground": "#9e0929", + "titleBar.activeForeground": "#e7e7e7", + "titleBar.inactiveBackground": "#9e092999", + "titleBar.inactiveForeground": "#e7e7e799" + }, + "peacock.color": "#9e0929" +} \ No newline at end of file diff --git a/bun.lockb b/bun.lockb index c620a90..5110204 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 5e4927a..74bb56d 100644 --- a/package.json +++ b/package.json @@ -9,15 +9,18 @@ "lint": "next lint" }, "dependencies": { + "leaflet": "^1.9.4", + "next": "13.5.4", "react": "^18", "react-dom": "^18", - "next": "13.5.4" + "react-leaflet": "^4.2.1" }, "devDependencies": { "typescript": "^5", "@types/node": "^20", "@types/react": "^18", "@types/react-dom": "^18", + "@types/leaflet": "^1.9.6", "autoprefixer": "^10", "postcss": "^8", "tailwindcss": "^3", diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000..cbd81c1 Binary files /dev/null and b/public/android-chrome-192x192.png differ diff --git a/public/android-chrome-512x512.png b/public/android-chrome-512x512.png new file mode 100644 index 0000000..8d144a0 Binary files /dev/null and b/public/android-chrome-512x512.png differ diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png new file mode 100644 index 0000000..a033189 Binary files /dev/null and b/public/apple-touch-icon.png differ diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000..c31bb38 Binary files /dev/null and b/public/favicon-16x16.png differ diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000..dc9110b Binary files /dev/null and b/public/favicon-32x32.png differ diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..efb824e Binary files /dev/null and b/public/favicon.ico differ diff --git a/public/next.svg b/public/next.svg deleted file mode 100644 index 5174b28..0000000 --- a/public/next.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 0000000..5e2a42a --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "Parent Grin", + "short_name": "parentgrin", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} diff --git a/public/vercel.svg b/public/vercel.svg deleted file mode 100644 index d2f8422..0000000 --- a/public/vercel.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/app/favicon.ico b/src/app/favicon.ico deleted file mode 100644 index 718d6fe..0000000 Binary files a/src/app/favicon.ico and /dev/null differ diff --git a/src/app/layout.tsx b/src/app/layout.tsx index ae84562..a27c0df 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,22 +1,28 @@ -import './globals.css' -import type { Metadata } from 'next' -import { Inter } from 'next/font/google' +import "./globals.css"; +import type { Metadata } from "next"; +import { Inter } from "next/font/google"; -const inter = Inter({ subsets: ['latin'] }) +const inter = Inter({ subsets: ["latin"] }); export const metadata: Metadata = { - title: 'Create Next App', - description: 'Generated by create next app', -} + title: "ParentGrin Falcon", + description: "Laser focused on your kids", + manifest: "/site.webmanifest", + icons: { + icon: "/favicon.ico", + }, +}; export default function RootLayout({ children, }: { - children: React.ReactNode + children: React.ReactNode; }) { return ( - {children} + +
{children}
+ - ) + ); } diff --git a/src/app/map/page.tsx b/src/app/map/page.tsx new file mode 100644 index 0000000..a1a4e03 --- /dev/null +++ b/src/app/map/page.tsx @@ -0,0 +1,15 @@ +import React from "react"; +import MainMap from "@/components/maps/main-map"; + +const MapPage = async () => { + return ( +
+

Map Page

+
+ +
+
+ ); +}; + +export default MapPage; diff --git a/src/app/page.tsx b/src/app/page.tsx index e38c626..5390197 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,113 +1,9 @@ -import Image from 'next/image' +import Image from "next/image"; export default function Home() { return (
-
-

- Get started by editing  - src/app/page.tsx -

-
- - By{' '} - Vercel Logo - -
-
- -
- Next.js Logo -
- -
- -

- Docs{' '} - - -> - -

-

- Find in-depth information about Next.js features and API. -

-
- - -

- Learn{' '} - - -> - -

-

- Learn about Next.js in an interactive course with quizzes! -

-
- - -

- Templates{' '} - - -> - -

-

- Explore the Next.js 13 playground. -

-
- - -

- Deploy{' '} - - -> - -

-

- Instantly deploy your Next.js site to a shareable URL with Vercel. -

-
-
+

I am home

- ) + ); } diff --git a/src/components/maps/main-map.tsx b/src/components/maps/main-map.tsx new file mode 100644 index 0000000..1c0b83d --- /dev/null +++ b/src/components/maps/main-map.tsx @@ -0,0 +1,27 @@ +"use client"; +import React from "react"; +import { Marker, Popup } from "react-leaflet"; +import { MapContainer } from "react-leaflet/MapContainer"; +import { TileLayer } from "react-leaflet/TileLayer"; +import { useMap } from "react-leaflet/hooks"; +import 'leaflet/dist/leaflet.css'; + + +type MainMapProps = { + initialLocation?: string; +}; + +const MainMap: React.FC = ({ initialLocation }) => { + return ( +
+ + + +
+ ); +}; + +export default MainMap;