I always prefer a Free software/open source solution - but I'm not sure how you'd monetize that. Maybe charge for the app (ios/android) - and provide a free/open self-host server solution, along with a subscription service and a web client? (The payment for the app would also grant access to the subscription, and for those that didn't want to self-host/wanted to support the project could pay for the subscription and use the web SaaS solution?).