Mapper frontend implementation discussion #1802
Replies: 7 comments 4 replies
-
Page LayoutI opted for a bottom-sheet like layout, with 4 tabs:
Map Page
Details Page
Offline Page
QR Code Page
|
Beta Was this translation helpful? Give feedback.
-
Setting Up LocallyBuild the imagesdocker compose build Run the services
cp .env.example .env
docker compose up -d Seed the db with projects
docker compose \
-f docker-compose.yml \
-f contrib/playwright/docker-compose.yml \
run --rm --service-ports ui-test \
'npm run test:e2e-report -- ./e2e/01-create-new-project.spec.ts'
|
Beta Was this translation helpful? Give feedback.
-
Linking Between The Two Frontends
|
Beta Was this translation helpful? Give feedback.
-
@NSUWAL123 reports he can build and run the PR I made, so I'm planning to merge into develop so it can be built on top of. It will introduce quite a few errors, due to a change from using SQLAlchemy to raw SQL in some places. Project creation works at least, along with task locking, so you can do that and get testing the frontend👍 |
Beta Was this translation helpful? Give feedback.
-
The team had a meeting today to discuss priorities for next week. The first coding tasks will be:
Design team will be proving icons and the UX for #2. |
Beta Was this translation helpful? Give feedback.
-
Proposed user flowPt1: Open Mapper Frontend
Pt2: Setup Wizard
One time only
Pt3: MappingTwo workflows, below: (A) Mapping new features
(B) Mapping existing features
Note on task locking
At the end of the ODK workflow, the user returns to FMTM to select another geometry for mapping. |
Beta Was this translation helpful? Give feedback.
-
Copying notes from Ramya on Slack for the proposed mapper frontend flow 1.Mapper Frontend Access: |
Beta Was this translation helpful? Give feedback.
-
I am away for a few weeks. @charliemcgrady and @NSUWAL123 are planning to work on the mapper frontend implementation.
Following on from PR: #1760
Live Updates
We have two important elements it would be very useful to have 'live update' for the mapper:
The Task Areas
Currently we are using Electric-SQL to serve the task areas from our database:
task_history
database table.task_history
table and display them real-time in the users browsers.The Entity Geometries
(shown in red in the screenshot. The task area must be clicked to display them)
status
field) are set by the user, they are stored as JSON in the ODK database.Decisions Taken
DOMAIN/mapnow/{projectId}
will be routed here, the rest goes to the React app.svelte-maplibre
wrapper which are a nicer way to use the library.UI Prerequisites
@hotosm/ui
, which in theory should be used in all HOTOSM tools. More on this in a later section.@hotosm/ui
UI library is still in early stages!@hotosm/ui
Header with something else until we get that complete.Beta Was this translation helpful? Give feedback.
All reactions