I'm developing an application with a web interface backed by Phoenix and I'm exploring alternate methods of storage to the current SQLite (and its Ecto driver) (yes I've heard of PGSQL, no I'm not willing to use it.)
I'd like to use LevelDB and H2LevelDB, which has an Erlang driver available on Github
However, at compile time I realise that Phoenix seems to rely a lot on Ecto, even in modules charged of rendering the eex templates. Which I find a bit scary, a bit strange and a bit annoying at the same time. So, would it be safe to blindly purge all references to Ecto from the pre-generated files or should I switch to something else for my web UI?
Phoenix does not rely on ecto in any way. One can be successfully used without the other. The integration is done through couple protocols, which are implemented in the phoenix_ecto
package.
The default phoenix generator will create an application with ecto - the reason is to give the user something "with batteries included". You can easily remove this by passing the --no-ecto
flag to the mix phoenix.new
generator.