Skip to content

utility crate: Indexed DB #2

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

Open
fitzgen opened this issue Feb 26, 2019 · 6 comments
Open

utility crate: Indexed DB #2

fitzgen opened this issue Feb 26, 2019 · 6 comments

Comments

@fitzgen
Copy link
Member

fitzgen commented Feb 26, 2019

Should have a utility crate for working with Indexed DB in a Rust-y, idiomatic way.

@Pauan
Copy link
Contributor

Pauan commented Mar 13, 2019

It should also fully support Futures, since all the IndexedDB APIs are asynchronous.

@prasannavl
Copy link

prasannavl commented Mar 16, 2019

I think approaching with a similar high level semantics, like Dexie in JS, would probably be the key in making it actually usable. Indexed DB is tedious to use as it is, and I'm afraid of even thinking about a Rust-y future chaining for low level request, responses and error handling of IndexedDB.

@fitzgen
Copy link
Member Author

fitzgen commented Mar 18, 2019

high level semantics

I agree that we want to get there, but I am a big fan of creating layers that go from raw -sys style bindings up to callbacks, then to futures, and finally to a high level semantics along the way. This allows folks to reuse whichever layer is appropriate if they are building an alternative style of high level API or if they need direct bindings access, etc.

@prasannavl
Copy link

Absolutely in agreement. Just wanted to clarify on what layers are being set as expectations in the scope of gloo and what's built outside of it.

@fitzgen
Copy link
Member Author

fitzgen commented Mar 18, 2019

See also the discussion happening in #27 about layers of APIs.

@devashishdxt
Copy link

I'm experimenting with a high level indexed db wrapper (futures based) here. Feedback is welcome. 😁

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants