Skip to content

Possible redesign (new version) #548

@brody4hire

Description

@brody4hire

This plugin does its job reasonably well but is complex to maintain. It would be nice to break it down into smaller components that would be easier to maintain, possibly by different people in the future. In case of such a "redesign" it should be able to almost completely pass the existing test suite.

One idea could be to start with the JavaScript part from https://github.com/nolanlawson/cordova-plugin-sqlite-2 (ref: #547) and move the native parts into one or more separate projects.

Another idea would be to turn this around: start with a mostly-native sqlite3 storage part with an API similar to https://github.com/mapbox/node-sqlite3 and then move the Web SQL API part to a pure-JS shim (or just use something like https://github.com/nolanlawson/node-websql). The one drawback with this idea is that it would need https://github.com/kripken/sql.js/ to work in the browser platform.

A major goal in case of a redesign would be to keep the native parts as blocks that could be reassembled more easily to provide special versions such as SQLCipher without the need to keep merging new fixes.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions