diff --git a/app/applications/_meta.ts b/app/applications/_meta.ts deleted file mode 100644 index e96958d..0000000 --- a/app/applications/_meta.ts +++ /dev/null @@ -1,8 +0,0 @@ -export default { - climate: "Climate Tool", - budget: "Budget Tool", - monitoring: "Monitoring Tool", - resources: "Resources Tool", - "map-tiles": "Map Tiles", - dashboard: "Dashboard", -}; diff --git a/app/applications/budget/page.mdx b/app/applications/budget/page.mdx deleted file mode 100644 index 7d70ade..0000000 --- a/app/applications/budget/page.mdx +++ /dev/null @@ -1 +0,0 @@ -# The Budget Tool \ No newline at end of file diff --git a/app/applications/climate/page.mdx b/app/applications/climate/page.mdx deleted file mode 100644 index 532ceab..0000000 --- a/app/applications/climate/page.mdx +++ /dev/null @@ -1,19 +0,0 @@ -# The Climate Tool - -## Adding Station - -0. Ensure the data is processed in a format to match the app data. - See examples in `apps\picsa-tools\climate-tool\src\assets\summaries` - -1. Create an entry for station in the file - `apps\picsa-tools\climate-tool\src\app\data\stations.ts` - -Use https://www.latlong.net/ to pick gps coordinates - -2. Populate a csv file matching the station id in - `apps\picsa-tools\climate-tool\src\assets\summaries` - -## Updating station - -1. Update the `_modified` timestamp in the `station.ts` file -2. Populate the updated csv \ No newline at end of file diff --git a/app/applications/dashboard/page.mdx b/app/applications/dashboard/page.mdx deleted file mode 100644 index 2cdf9e2..0000000 --- a/app/applications/dashboard/page.mdx +++ /dev/null @@ -1,24 +0,0 @@ -# Dashboard - -The Admin Dashboard is a standalone application for managing app content - -### Dashboard Frontend - -In order to use the dashboard ensure server running locally - -```sh -yarn start:server -``` - -See more information in [Server Setup](../advanced/server/setup) - -```sh -yarn start:dashboard -``` - -This will run the dashboard locally - -### Deployment - -This dashboard is configured to deploy using github actions -The project `vercel.json` is configured to expect the platform to be built locally and deployed from `dist` folder diff --git a/app/applications/map-tiles/map-tiles-basemap.png b/app/applications/map-tiles/map-tiles-basemap.png deleted file mode 100644 index c9e985c..0000000 Binary files a/app/applications/map-tiles/map-tiles-basemap.png and /dev/null differ diff --git a/app/applications/map-tiles/map-tiles-export.png b/app/applications/map-tiles/map-tiles-export.png deleted file mode 100644 index a154ed8..0000000 Binary files a/app/applications/map-tiles/map-tiles-export.png and /dev/null differ diff --git a/app/applications/map-tiles/map-tiles-filter.png b/app/applications/map-tiles/map-tiles-filter.png deleted file mode 100644 index a29253e..0000000 Binary files a/app/applications/map-tiles/map-tiles-filter.png and /dev/null differ diff --git a/app/applications/map-tiles/map-tiles-vector.png b/app/applications/map-tiles/map-tiles-vector.png deleted file mode 100644 index 143c1e1..0000000 Binary files a/app/applications/map-tiles/map-tiles-vector.png and /dev/null differ diff --git a/app/applications/map-tiles/page.mdx b/app/applications/map-tiles/page.mdx deleted file mode 100644 index 4220cfe..0000000 --- a/app/applications/map-tiles/page.mdx +++ /dev/null @@ -1,138 +0,0 @@ -# Map Tiles - -The PICSA Map has a base world outline and some specific country outlines. -There is also an optional online base layer of a full map from openstreetmap - -## About the Data - -The map data consists of base layer images and geojson overlay - -The geojson is downloaded from natural earth, and optimised by: - -1. Filter to only include countries used for PICSA app -2. Remove columns to only keep those use for PICSA app (currently just administrative name) -3. Converting to topojson - -This should result in drastic reduction, e.g. just retaining admin features and -restricting to africa world geoJson compresses 839KB -> 23KB (40x!) - -## Adding GeoJson Data - -Data can be downloaded from: https://www.naturalearthdata.com/downloads/ - -For example country boundaries can be exported from -https://www.naturalearthdata.com/downloads/10m-cultural-vectors/ - -Once downloaded it should be processed using QGIS (or similar) to remove features. -For example, see the screenshot below to filter to only include a small number of countries -![](./map-tiles-filter.png) - -**NOTE** - if using countries that do not border it is best to separate as multiple layers - -## Frontend integration - -The frontend is map is built with leaflet JS. CSS will need to be included either via a scss import statement or bundled into the build, e.g. - -```json copy - "styles": [ - "styles.css", - "./node_modules/leaflet/dist/leaflet.css" - ], -``` - -## Adding offline basemap - -Basemap tiles should be exported as raster images (e.g. PNG) from QGIS. -The easiest way to load basemap tiles is via the `QuickMapServices` plugin to load an OSM layer - -This layer can be exported and clipped to the geojson layer using the `QMetaTiles` plugin\ - -An example of a basemap with geojson layer can be seen below -![](./map-tiles-basemap.png) - -When exporting the basemap can be clipped to the geojson layer extent -![](./map-tiles-export.png) - -Typically zoom level of 7-8 should be sufficient, but this can be explored online at https://www.openstreetmap.org/#map=8/-14.837/35.057 (zoom level in url) - -### Compress tiles - -The downloaded tiles are typically not compressed very well and so an extra step should be taken to make the files smaller. A lightweight script is included here, which can be run via: - -``` -yarn ts-node tools\workflows\processMapTiles.ts -``` - -The compressed files should appear same folder as webp images - -### Copy to assets - -This folder should be copied to the project assets folder, where the map tiles will be served from - -### Attributes - -The final step is to set the attribute on the picsa-map tag to use local images, -this can be done by setting any properties within assetMapOptions. i.e. - -```json copy - basemapOptions: IBasemapOptions = { - src: 'assets/mapTiles/raw/{z}/{x}/{y}.webp', - maxNativeZoom: 8 - }; - -``` - -(component.ts) - -``` - - -``` - -(component.html) - -## Vector basemaps - -QGIS added support for vector basemaps as of v3.14, however integration within the app is not straightforward. -Some preliminary work has been done to include, however on hold until there is greater need for it - -This work is split into a few components - -1. Source of vector basemaps - This could be something such as - https://data.maptiler.com/downloads/dataset/osm/#0.22/0/0 - https://openmaptiles.org/ - NOTE - as well as map server url will also need to take note of `tiles.json` and `style.json` files which contain map definition data - -2. Use of QGIS to load vector basemaps. See article below for explanation of how to configure - https://wanderingcartographer.wordpress.com/2021/01/09/qgis-3-and-vector-map-tiles/ - -E.g. see below for adding a testing set of map vector tiles from maptiler. -![](./map-tiles-vector.png) - -Maptiler also has its own plugin to import from their global repositories (search 'maptiler') - -3. Ability to merge multiple sources (if required). E.g. maptiler examples typically include vector basemap along side hill shading and contour line raster maps. It is not clear if QGIS can fully support these formats. - E.g. issue: https://github.com/geometalab/Vector-Tiles-Reader-QGIS-Plugin/issues/266 - -4. Troubleshoot compatibility issues, e.g. installing missing font files (as shown in ) - -5. Find means to export tile subset (seems like qmetatiles only supports pngs, not vector pbf files) - -6. Parse vector files to geojson - As vectors are encoded using protobuf additional work required to decode either during map render or as a precompile step. - https://github.com/mapbox/pbf - -7. Integrate with leafletjs in frontend,e.g. - https://github.com/mapbox/mapbox-gl-leaflet - https://github.com/Leaflet/Leaflet.VectorGrid - -8. Evaluate space saved / quality gained from method overall - -## Additional Optimisations - -Previously some work was done to explore use of topojson, however currently on hold -https://jeffpaine.github.io/geojson-topojson/ or -https://mygeodata.cloud/converter/geojson-to-topojson diff --git a/app/applications/monitoring/page.mdx b/app/applications/monitoring/page.mdx deleted file mode 100644 index d41e03d..0000000 --- a/app/applications/monitoring/page.mdx +++ /dev/null @@ -1 +0,0 @@ -# The Monitoring Tool \ No newline at end of file diff --git a/app/applications/resources/page.mdx b/app/applications/resources/page.mdx deleted file mode 100644 index 864c1ab..0000000 --- a/app/applications/resources/page.mdx +++ /dev/null @@ -1 +0,0 @@ -# The Resources Tool \ No newline at end of file diff --git a/app/setup/_meta.ts b/app/setup/_meta.ts deleted file mode 100644 index 2557a2d..0000000 --- a/app/setup/_meta.ts +++ /dev/null @@ -1,5 +0,0 @@ -export default { - about: "About PICSA", - installation: "Installation", - structure: "Folder Structure", -}; diff --git a/app/setup/about/page.mdx b/app/setup/about/page.mdx deleted file mode 100644 index d5efd81..0000000 --- a/app/setup/about/page.mdx +++ /dev/null @@ -1 +0,0 @@ -# About PICSA \ No newline at end of file diff --git a/app/setup/installation/page.mdx b/app/setup/installation/page.mdx deleted file mode 100644 index 130bbbb..0000000 --- a/app/setup/installation/page.mdx +++ /dev/null @@ -1,44 +0,0 @@ -# Overview - -## Tech Stack - -This project was generated using [Nx](https://nx.dev) and is programmed primarily in TypeScript. - -**Frontend** - -```sh -Web Framework - Angular -UI Components - Ionic + Material (to deprecate one?) -Style System - Ionic (migrate to tailwind?) -Native Apps - Capacitor -Testing - Jest(unit) Cypress(E2E) -``` - -**Backend** - -```sh -Database - Postgres -ORM - Sequelize -Rest APIs - NestJS -Testing - Jest(unit) -Containerisation - Docker -``` - -## Prerequisites - -1. Download and install [Git](https://git-scm.com/downloads). _This will be used to download the repository_ - -2. Download and install [Node](https://nodejs.org/en/download/) version 16+. _This is the programming language required to run the project_ - -3. Download and Install [Yarn](https://yarnpkg.com/getting-started/install). _This manages all 3rd-party code dependencies_ - -## Project Setup - -- Clone the project [repo](https://github.com/e-picsa/picsa-apps) -- Setup your editor extensions to include the Nx Console extension for faster development - -## Running the Project - -- Install dependencies `yarn install` -- Build the project `yarn build` -- Start the app `yarn start` diff --git a/app/setup/structure/page.mdx b/app/setup/structure/page.mdx deleted file mode 100644 index ec0136a..0000000 --- a/app/setup/structure/page.mdx +++ /dev/null @@ -1,5 +0,0 @@ -# Folder Structure -This repo is designed to make it easy to develop tools for use with e-picsa. - -It supports a modular building-blocks approach. -