diff --git a/.gitignore b/.gitignore
index 0678d7501d36e550432444c0ce3421c9f48113ea..6668ffa9626fc3fb8f6c6a8bbb8b1ec1c07ac1f6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,5 @@
 # Auto-generated by VScode
-./vs
+.vs/
 
 # Auto-generated by Android Studio
-./idea
\ No newline at end of file
+.idea/
\ No newline at end of file
diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index 26d33521af10bcc7fd8cea344038eaaeb78d0ef5..0000000000000000000000000000000000000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
diff --git a/.idea/libraries/Dart_Packages.xml b/.idea/libraries/Dart_Packages.xml
deleted file mode 100644
index 3c2e5fe04b6e61181b96374f1c17cf35be4c81a5..0000000000000000000000000000000000000000
--- a/.idea/libraries/Dart_Packages.xml
+++ /dev/null
@@ -1,220 +0,0 @@
-<component name="libraryTable">
-  <library name="Dart Packages" type="DartPackagesLibraryType">
-    <properties>
-      <option name="packageNameToDirsMap">
-        <entry key="async">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/async-2.11.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="boolean_selector">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/boolean_selector-2.1.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="characters">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/characters-1.3.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="clock">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/clock-1.1.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="collection">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/collection-1.18.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="fake_async">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/fake_async-1.3.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="flutter">
-          <value>
-            <list>
-              <option value="$USER_HOME$/flutter/packages/flutter/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="flutter_lints">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_lints-2.0.3/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="flutter_test">
-          <value>
-            <list>
-              <option value="$USER_HOME$/flutter/packages/flutter_test/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="http">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/http-0.13.6/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="http_parser">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/http_parser-4.0.2/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="lints">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/lints-2.1.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="matcher">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/matcher-0.12.16/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="material_color_utilities">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/material_color_utilities-0.5.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="meta">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/meta-1.10.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="path">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/path-1.8.3/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="sky_engine">
-          <value>
-            <list>
-              <option value="$USER_HOME$/flutter/bin/cache/pkg/sky_engine/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="source_span">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/source_span-1.10.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="stack_trace">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/stack_trace-1.11.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="stream_channel">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/stream_channel-2.1.2/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="string_scanner">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/string_scanner-1.2.0/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="term_glyph">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/term_glyph-1.2.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="test_api">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/test_api-0.6.1/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="typed_data">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/typed_data-1.3.2/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="vector_math">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/vector_math-2.1.4/lib" />
-            </list>
-          </value>
-        </entry>
-        <entry key="web">
-          <value>
-            <list>
-              <option value="$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/web-0.3.0/lib" />
-            </list>
-          </value>
-        </entry>
-      </option>
-    </properties>
-    <CLASSES>
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/async-2.11.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/boolean_selector-2.1.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/characters-1.3.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/clock-1.1.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/collection-1.18.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/fake_async-1.3.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_lints-2.0.3/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/http-0.13.6/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/http_parser-4.0.2/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/lints-2.1.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/matcher-0.12.16/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/material_color_utilities-0.5.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/meta-1.10.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/path-1.8.3/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/source_span-1.10.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/stack_trace-1.11.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/stream_channel-2.1.2/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/string_scanner-1.2.0/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/term_glyph-1.2.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/test_api-0.6.1/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/typed_data-1.3.2/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/vector_math-2.1.4/lib" />
-      <root url="file://$USER_HOME$/AppData/Local/Pub/Cache/hosted/pub.dev/web-0.3.0/lib" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/pkg/sky_engine/lib" />
-      <root url="file://$USER_HOME$/flutter/packages/flutter/lib" />
-      <root url="file://$USER_HOME$/flutter/packages/flutter_test/lib" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/libraries/Dart_SDK.xml b/.idea/libraries/Dart_SDK.xml
deleted file mode 100644
index 3b3c0ad641e79359469a9679eaa9fbbe9e634ee2..0000000000000000000000000000000000000000
--- a/.idea/libraries/Dart_SDK.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<component name="libraryTable">
-  <library name="Dart SDK">
-    <CLASSES>
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/async" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/cli" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/collection" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/convert" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/core" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/developer" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/ffi" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/html" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/indexed_db" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/io" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/isolate" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/js" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/js_interop" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/js_interop_unsafe" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/js_util" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/math" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/mirrors" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/svg" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/typed_data" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/web_audio" />
-      <root url="file://$USER_HOME$/flutter/bin/cache/dart-sdk/lib/web_gl" />
-    </CLASSES>
-    <JAVADOC />
-    <SOURCES />
-  </library>
-</component>
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644
index b886f057893d266d5f636e82d3ba93f1f3604241..0000000000000000000000000000000000000000
--- a/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://$PROJECT_DIR$/.idea/repo2900.iml" filepath="$PROJECT_DIR$/.idea/repo2900.iml" />
-    </modules>
-  </component>
-</project>
\ No newline at end of file
diff --git a/.idea/repo2900.iml b/.idea/repo2900.iml
deleted file mode 100644
index e80ce9c810bdddd45204523bf8c258b28ad3adc0..0000000000000000000000000000000000000000
--- a/.idea/repo2900.iml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="JAVA_MODULE" version="4">
-  <component name="NewModuleRootManager" inherit-compiler-output="true">
-    <exclude-output />
-    <content url="file://$MODULE_DIR$">
-      <excludeFolder url="file://$MODULE_DIR$/app/.dart_tool" />
-      <excludeFolder url="file://$MODULE_DIR$/app/.pub" />
-      <excludeFolder url="file://$MODULE_DIR$/app/build" />
-    </content>
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntry type="library" name="Dart SDK" level="project" />
-    <orderEntry type="library" name="Dart Packages" level="project" />
-  </component>
-</module>
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 35eb1ddfbbc029bcab630581847471d7f238ec53..0000000000000000000000000000000000000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="VcsDirectoryMappings">
-    <mapping directory="" vcs="Git" />
-  </component>
-</project>
\ No newline at end of file
diff --git a/app/lib/consts.dart b/app/lib/consts.dart
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/app/lib/main.dart b/app/lib/main.dart
index d2d9e0c98242ce794729148d852ef1fb5a7f7774..bff144024437ae2f42b7df9fecce02ce0b1142c9 100644
--- a/app/lib/main.dart
+++ b/app/lib/main.dart
@@ -1,33 +1,19 @@
 import 'package:flutter/material.dart';
-import 'package:http/http.dart' as http;
-import 'dart:convert';
+import 'package:flutter_map/flutter_map.dart';
+import 'package:latlong2/latlong.dart'; // Import LatLng class from the latlong package
 import 'dart:async';
 import 'dart:io';
 
+
 const String port = "8443";
 const String serverURI = "https://127.0.0.1:$port/";
+const String mapEndpoint = "update_map";
+// NB: if http connection fails, run: adb reverse tcp:8443 tcp:8443
 const int fetchInterval = 5;
 
-Future<void> main() async {
-  // NB temporary test print
-  print(serverURI);
-
-  try {
-    // Create a custom HTTP client with disabled SSL certificate validation
-    HttpClient client = HttpClient()
-      ..badCertificateCallback =
-          (X509Certificate cert, String host, int port) => true;
-
-    // Use the custom HTTP client for requests
-    var request =  await client.getUrl(Uri.parse(serverURI));
-    var response = await request.close();
-
-    // Handle response
-    print('Response status: ${response.statusCode}');
-  } catch (e) {
-    // Handle connection error
-    print('Failed to connect to the server: $e');
-  }
+// main is the entry point for the application, and starts the App() function
+void main() {
+  runApp(const App());
 }
 
 class App extends StatelessWidget {
@@ -43,17 +29,18 @@ class App extends StatelessWidget {
 
 // fetchData requests data from the update_map endpoint
 Future<void> fetchData() async {
-  final response = await http.get(Uri.parse(serverURI));
-
-  if (response.statusCode == 200) {
-    // Parse the JSON response
-    Map<String, dynamic> data = jsonDecode(response.body);
-    
-    // NB temporary test print
-    print(data);
-    print("Test print, fetchData triggered");
-  } else { // Handle the error case
-    print('Failed to fetch data. Status code: ${response.statusCode}');
+  try {
+    // Custom HTTP client
+    HttpClient client = HttpClient()
+      ..badCertificateCallback = // NB: temporary disable SSL certificate validation
+          (X509Certificate cert, String host, int port) => true;
+
+    var request =  await client.getUrl(Uri.parse(serverURI+mapEndpoint));
+    var response = await request.close();
+
+    print('Response status: ${response.statusCode}');
+  } catch (e) {
+    print('Failed to connect to the server: $e');
   }
 }
 
@@ -64,9 +51,24 @@ class DefaultPage extends StatefulWidget {
   _DefaultPageState createState() => _DefaultPageState();
 }
 
+class MarkerData {
+  final LatLng location;
+  final double size;
+  final Color color;
+
+  MarkerData({required this.location, required this.size, required this.color});
+}
+
 class _DefaultPageState extends State<DefaultPage> {
   late Timer _timer;
 
+  final List<MarkerData> markerList = [
+    MarkerData(location: LatLng(60.7266, 10.9771), size: 50.0, color: Colors.blue),
+    MarkerData(location: LatLng(60.8366, 10.8171), size: 70.0, color: Colors.red),
+    MarkerData(location: LatLng(60.7366, 10.8471),  size: 60.0, color: Colors.green),
+  ];
+
+  // Timer initializer
   @override
   void initState() {
     super.initState();
@@ -80,6 +82,7 @@ class _DefaultPageState extends State<DefaultPage> {
     });
   }
 
+  // Fetch timer
   @override
   void dispose() {
     // Cancel timer on widget termination
@@ -87,22 +90,77 @@ class _DefaultPageState extends State<DefaultPage> {
     super.dispose();
   }
 
+  // Main widget
   @override
   Widget build(BuildContext context) {
+    double screenWidth = MediaQuery.of(context).size.width;
+    double boxWidth = 0.9;
+    double boxHeight = 1.5;
+    const double markerSize = 40;
+
     return Scaffold(
       appBar: AppBar(
         title: const Text('IceMap'),
       ),
-      body: const Center(
-        child: Column(
-          mainAxisAlignment: MainAxisAlignment.center,
-          children: <Widget>[
-            Text(
-              'Default page',
-              style: TextStyle(fontSize: 24),
-            ),
-            SizedBox(height: 20),
-          ],
+      body: Center(
+        child: SingleChildScrollView(
+          child: Column(
+            mainAxisAlignment: MainAxisAlignment.center,
+            children: <Widget>[
+              Container( // Map container
+                width: screenWidth * boxWidth,
+                height: screenWidth * boxHeight,
+                color: Colors.blue,
+                child: FlutterMap(
+                  options: MapOptions(
+                    center: LatLng(60.7666, 10.8471),
+                    zoom: 9.0,
+                  ),
+                  children: [
+                    TileLayer(
+                        urlTemplate: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
+                        subdomains: ['a', 'b', 'c'],
+                      ),
+                    MarkerLayer( // Dynamically allocate markers based on a list
+                      markers: markerList
+                          .map(
+                            (MarkerData markerData) => Marker(
+                          width: markerData.size,
+                          height: markerData.size,
+                          point: markerData.location,
+                          builder: (ctx) => Container(
+                            child: Icon(
+                              Icons.location_on,
+                              color: markerData.color,
+                              size: markerData.size,
+                            ),
+                          ),
+                        ),
+                      )
+                          .toList(),
+                    ),
+                  ],
+                ),
+              ),
+              SizedBox(height: 20),
+              Container( // Detailed info container
+                width: screenWidth * boxWidth,
+                height: screenWidth * boxHeight,
+                color: Colors.blue,
+                child: const Align(
+                  alignment: Alignment.topLeft,
+                  child: Padding(
+                    padding: EdgeInsets.only(top: 10, left: 10), // Edge padding, text
+                    child: Text(
+                      'Placeholder text',
+                      style: TextStyle(fontSize: 20, color: Colors.black),
+                    ),
+                  ),
+                ),
+              ),
+              SizedBox(height: 20),
+            ],
+          ),
         ),
       ),
     );
diff --git a/app/pubspec.lock b/app/pubspec.lock
index 399063b499604d182c12d45fdff6536548b85f9f..29ec17a46d8598260b9d81c6ec4ef924f60898a6 100644
--- a/app/pubspec.lock
+++ b/app/pubspec.lock
@@ -62,6 +62,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "2.0.3"
+  flutter_map:
+    dependency: "direct main"
+    description:
+      name: flutter_map
+      sha256: "52c65a977daae42f9aae6748418dd1535eaf27186e9bac9bf431843082bc75a3"
+      url: "https://pub.dev"
+    source: hosted
+    version: "4.0.0"
   flutter_test:
     dependency: "direct dev"
     description: flutter
@@ -83,6 +91,22 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "4.0.2"
+  intl:
+    dependency: transitive
+    description:
+      name: intl
+      sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf
+      url: "https://pub.dev"
+    source: hosted
+    version: "0.19.0"
+  latlong2:
+    dependency: "direct main"
+    description:
+      name: latlong2
+      sha256: "08ef7282ba9f76e8495e49e2dc4d653015ac929dce5f92b375a415d30b407ea0"
+      url: "https://pub.dev"
+    source: hosted
+    version: "0.8.2"
   lints:
     dependency: transitive
     description:
@@ -91,6 +115,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "2.1.1"
+  lists:
+    dependency: transitive
+    description:
+      name: lists
+      sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27"
+      url: "https://pub.dev"
+    source: hosted
+    version: "1.0.1"
   matcher:
     dependency: transitive
     description:
@@ -115,6 +147,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "1.10.0"
+  mgrs_dart:
+    dependency: transitive
+    description:
+      name: mgrs_dart
+      sha256: fb89ae62f05fa0bb90f70c31fc870bcbcfd516c843fb554452ab3396f78586f7
+      url: "https://pub.dev"
+    source: hosted
+    version: "2.0.0"
   path:
     dependency: transitive
     description:
@@ -123,6 +163,22 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "1.8.3"
+  polylabel:
+    dependency: transitive
+    description:
+      name: polylabel
+      sha256: "41b9099afb2aa6c1730bdd8a0fab1400d287694ec7615dd8516935fa3144214b"
+      url: "https://pub.dev"
+    source: hosted
+    version: "1.0.1"
+  proj4dart:
+    dependency: transitive
+    description:
+      name: proj4dart
+      sha256: c8a659ac9b6864aa47c171e78d41bbe6f5e1d7bd790a5814249e6b68bc44324e
+      url: "https://pub.dev"
+    source: hosted
+    version: "2.1.0"
   sky_engine:
     dependency: transitive
     description: flutter
@@ -176,6 +232,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "0.6.1"
+  tuple:
+    dependency: transitive
+    description:
+      name: tuple
+      sha256: a97ce2013f240b2f3807bcbaf218765b6f301c3eff91092bcfa23a039e7dd151
+      url: "https://pub.dev"
+    source: hosted
+    version: "2.0.2"
   typed_data:
     dependency: transitive
     description:
@@ -184,6 +248,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "1.3.2"
+  unicode:
+    dependency: transitive
+    description:
+      name: unicode
+      sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1"
+      url: "https://pub.dev"
+    source: hosted
+    version: "0.3.1"
   vector_math:
     dependency: transitive
     description:
@@ -200,5 +272,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "0.3.0"
+  wkt_parser:
+    dependency: transitive
+    description:
+      name: wkt_parser
+      sha256: "8a555fc60de3116c00aad67891bcab20f81a958e4219cc106e3c037aa3937f13"
+      url: "https://pub.dev"
+    source: hosted
+    version: "2.0.0"
 sdks:
-  dart: ">=3.2.6 <4.0.0"
+  dart: ">=3.2.0-194.0.dev <4.0.0"
+  flutter: ">=3.3.0"
diff --git a/app/pubspec.yaml b/app/pubspec.yaml
index ad954a096aa49565c0bc9bd7fac7ed3a5425e1fb..7d385a53bf526fef8a336ccb16d1bc9e5726088b 100644
--- a/app/pubspec.yaml
+++ b/app/pubspec.yaml
@@ -4,12 +4,15 @@ publish_to: 'none'
 version: 0.1.0
 
 environment:
-  sdk: '>=3.2.6 <4.0.0'
+  sdk: '>=2.17.0 <4.0.0'
 
 dependencies:
   flutter:
     sdk: flutter
+  flutter_map: ^4.0.0
   http: ^0.13.3
+  latlong2: ^0.8.2
+
 
 
 dev_dependencies: