Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow users to store uploaded areas #27

Open
corviday opened this issue Nov 22, 2022 · 2 comments
Open

Allow users to store uploaded areas #27

corviday opened this issue Nov 22, 2022 · 2 comments
Labels
enhancement New feature or request

Comments

@corviday
Copy link
Collaborator

Not a near-term goal, but @rod-glover suggests that in the future we may want to allow users to save user defined areas (areas drawn or uploaded from a file) of interest.

@rod-glover
Copy link
Contributor

Further thoughts

By "areas", I believe we mean simple geographic features .

I think we want to avoid getting into anything like user identity, so the storage should be (at least partly) in the browser. Then "identity" becomes "browser", as with many other web apps. Options:

Entirely locally using the in-browser IndexedDB API. (IndexedDB is recommended over over Web Storage, which is only "useful for storing smaller amounts of data", whatever "smaller" might mean.) IndexedDb comes with a lot of nice features that would make implementing a friendly UI easier. Each feature item could and should be stored with a human-friendly identifier entered by the user (e.g., "my watershed") so it can easily be found and used again.

Partly locally and partly in Geoserver. The local part could be Web Storage or could be IndexedDB. Even for this I'd favour IndexedDB because of the DB features. In this case, I'd store locally the human-friendly identifier and some kind of key/identifier for the item in Geoserver. Geoserver would just store the feature.

A benefit of storing the feature in Geoserver is that it could easily be shared by the user: We provide a way to grab the Geoserver key (perhaps along with its human-friendly identifier) and the user can email or otherwise send it to another user. We wouldn't be responsible for anything other than making the key + identifier accessible to the user, e.g., with a "copy link" button.

@rod-glover
Copy link
Contributor

Augh, I take it back about preferring IndexedDB. It appears to be more suited to large numbers of records, possibly also with large amounts of data per record. That's not our situation, and there is no point in making our app more complicated than it needs to be.

@corviday corviday added the enhancement New feature or request label Jul 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants