realm / realm-object-server

Tracking of issues related to the Realm Object Server and other general issues not related to the specific SDK's
https://realm.io
293 stars 42 forks source link

PHP or JS Access to Realm Object Server #17

Closed cliftonlabrum closed 7 years ago

cliftonlabrum commented 8 years ago

Now that we can have Realms on our servers and can sync seamlessly to mobile apps, the next question is obvious: will there be a PHP or JavaScript SDK to access and sync a Realm in a web app?

Personally, I would love a JS SDK. Realm is already a 10, but this would push it to an 11. :)

Thanks for your time!

bigfish24 commented 8 years ago

Thanks for the feedback! We definitely want to support a web framework, but can't commit to a time table right now. Given our work with realm-js we would likely look to Javascript first over PHP.

cliftonlabrum commented 8 years ago

πŸ‘πŸΌπŸ‘πŸΌ

leontalbot commented 8 years ago

+1

walkerdigital commented 7 years ago

I came here fishing for this answer. Unfortunately I need to push data from a CMS so I'm not sure I can use Realm just yet.

cliftonlabrum commented 7 years ago

You could always build a custom bridge for the data. The CMS might have a way to expose the data via an API and you could consume it in your mobile app and add the data to Realm. This would be a one-way thing only, though. Trying to push data back up to the CMS from the mobile app would be complicated.

walkerdigital commented 7 years ago

Thanks @cliftonlabrum - Being somewhat new to this flavor of development I considered that but didn't know whether or not it would be considered acceptable. Luckily many of the projects I'm consdering with React Native don't have big data requirements so I might just well do this and "fill" the realm database from a feed where the data is stored in MySQL or Firebase.

brankeye commented 7 years ago

Hi there, just curious. With the recent support of Node.js (V8) it seems we can now use Realm.js with Electron. If this is the case, would this work with the Realm Object Server now or is that coming later? I haven't been able to find whether this works currently or not.

teotwaki commented 7 years ago

The realm-js package now supports Sync, as part of the Professional and Enterprise editions.

v3yr0n commented 7 years ago

@teotwaki What do you mean? Sync between mobile database and realm-js running on a server? If that's not available for the developer editions why should we want the server? :)

teotwaki commented 7 years ago

The Realm Object Server provides synchronisation between devices (clients). If you want to be able to have a server-side process participate in the fun, then you need the Professional or Enterprise edition of the Realm Mobile Platform.

v3yr0n commented 7 years ago

@teotwaki Thanks for clarifying. I didn't know that...

drdaz commented 7 years ago

Just so we're absolutely clear, there's no way of accessing and updating data on the ROS from JS (or another web technology) without paying a minimum of $1500 / month?

cliftonlabrum commented 7 years ago

That's my understanding as well. I am currently giving Realm no money but I'd love to give them something because I love Realm and find it a joy to use (and I want to sustain further development). But $1500/mo is way out of reach for indie developers like me.

bigfish24 commented 7 years ago

For now, the Node SDK with support for synchronized Realms is only available in the Professional Edition. This feedback is helpful as we consider future plans regarding pricing and functionality. However, I apologize, that I don't have a better answer for you today.

ajonno commented 7 years ago

Totally agree with Clifton. In our case, its our client that can't afford a $1500/mth price tag as a startup launching an MVP. This pricing really needs to be updated to be more in reach for smaller companies (and scale it up if need be as they get bigger etc.).

bigfish24 commented 7 years ago

Mind sharing your thoughts on pricing that would work? Does the client know how many users they expect to have initially?

ajonno commented 7 years ago

yes sure, ping me a angusj#aamsco.com.au can go from there

ribasal1 commented 7 years ago

Well, that 1500$/month price tag is way over our means (and most of the startups and SMBs i know), considering that the vast majority of the apps don't make 1500$ a month. If it was 1500$/year, i would probably sign up, because i really like Realm. It would be amazing if we could also have a Heroku add-on for the mobile platform. The perfect setup would be having Realm swift for iOs apps, a Swift backend working with Perfect and Realm mobile Platform on Heroku.

fotiDim commented 7 years ago

@bigfish24 something comparable to Firebase's pricing would be appropriate. $1500/mth prevent your software to be widely adopted.

sambwest commented 7 years ago

I've been waiting a while to be able to use realm platform with react native. Took the risk and wrote the app relying on realm hoping that one day I could use the platform to sync between server and devices. Now it seems that the platform is available for React native but I've just discovered that todo any server communication is going to be $1500p/m! This is way out of my budget. I'll be happy if my app makes that once complete! A pricing structure closer to firebase is the only way a startup like me would be able to use it. Real shame as it's a great system. I agree with @bigfish24 that a similar pricing structure to firebase would make more sense. A user like me just can't afford to pay so much if anything at all in the start.

mklb commented 7 years ago

Yes, can't afford that much either. I'm a student / indi dev. A firebase like pricing would be okay..

A simple REST API to the Sever would also be enough for me since most operatins would be to create/delete an entry from from my custom backend with administrator privileges.

teotwaki commented 7 years ago

We have received quite a bit of feedback regarding our pricing structure. Please use the πŸ‘ emoji on other comments instead of posting new comments. We are working on the pricing structure, to address all the feedback we've received.

DanielAsher commented 7 years ago

I have invested deeply in realm in my startup, moved to realm mobile platform to discover that a simple user management 'feature' will cost me $1,500 a month 🀒

I chose realm initially because of cost considerations, ease of use and speed. Looks like a huge rewrite and migration to firebase is recommended until realm allow for a server-side capability or firebase type pricing.

cliftonlabrum commented 7 years ago

@teotwaki I don't mean to beat a dead horse, but are you guys still actively working on new pricing? Or are you making loads of cash with your current pricing and Realm on the web will be $1500/mo for the foreseeable future (and thus out-of-reach for indie devs)?

I'm just trying to decide how much more I put into Realm (which I really love) or if I should bite the bullet and migrate to Firebase. πŸ˜•

Maybe you can let indies use the web stuff in exchange for active participation in bug reports... or maybe just let me wash the dishes in your break room. πŸ˜‰

oit63 commented 7 years ago

πŸ‘πŸ»From China,price really high for startups

compojoom commented 7 years ago

As others here I love realm DB, but the current pricing for ROS is just mind-blowing.

I'm still wondering if going around all the limitations of the ROS dev. version is worthwhile.

The promise of realm was fast app development. If you app can't persist an image on a server, can't send a mail in response to some data, can't remotely update the data on the server in response of whatever event, then this promise is broken.

If realm-js sync is not working on a linux machine, then you can't make a website for your service. There is no official electron support as well, so making a desktop app is potentially possible, but who knows in what kind of issues one might run.

Yes, it's true that users expect good offline experience, but offline is not everything. Every app out there needs to communicate with a 3rd party service.

With the current pricing you guys are just saying: f**k you startups, we want enterprise customers. Which is fine for a company strategy, but just be open and tell it in our faces :)

I know it is comparing apples to oranges, but mysql enterprise edition is 5k/year. Your current pricing just doesn't scale for any small company that doesn't have the user base and the limitation imposed on ROS make it really hard to develop what could have been a simple thing...

timahrentlov commented 7 years ago

+1 on some more info for indie devs. Offer a bizspark option, offer a hosted solution, or simply skip to the point where you announce Microsoft's acquisition of Realm and let us get on with it :)

karolis-arbaciauskas commented 7 years ago

πŸ‘

cyril94440 commented 7 years ago

Any news about that? I've been comparing a lot Firecast (new Firebase DB) and Realm Mobile Platform lately. But if there is no way to manage Realm data from the server-side without paying $1500, that's an easy choice... All IaaS / SaaS are offering scaling pricing, or even free credit at the beginning, so that a lot of companies can start cheaply and pay when they scale and succeed. Why such a different approach for Realm Mobile Platform compared to the original Realm database or competitors?

kevinmlong commented 6 years ago

Based on an email exchange with Realm Support the answer to my inquiry of "sync for NodeJS is still limited to the Pro and Enterprise editions" I was told "this will likely always be the case." This is really disappointing, as this really hampers building proof-of-concept systems and MVPs.

Short of moving to something like Firebase, has anyone found any third-party solutions that help with syncing client realm data with a server-side accessible database (e.g. MongoDB)?

sambwest commented 6 years ago

@kevinmlong I think that limitation is only on Linux. If you are willing to use osx I think you can work around it. That is what they told me, though I haven't tested so you might want to confirm. (https://forums.realm.io/t/realm-object-server-population-costs-sync/164)

kevinmlong commented 6 years ago

@sambwest Is this true with v2.0 of the RMP? It seems in the documentation that in order to use the sync functionality in Node.js, it requires a license access token - https://realm.io/docs/javascript/latest/#sync. Hosting the backend on OS X doesn't really pan out very well for things like local dev using Docker or dev/prod systems in AWS.

michelalbers commented 6 years ago

Just discovered ROS and was amazed by the technology. Its like firebase but without the shortcomings in terms of filtering and sync. I think accessing the data from the server side is a very important feature for sophisticated webapps. But $1750 minimum PER MONTH is just insane. Please give us indie developers a chance of adopting your platform.

I'm currently using a GraphQL API and a local realm via react native. From my understanding I could completely ditch my API in exchange for ROS ... but $1750 is something startups and small app creators cannot afford.

kvandake commented 6 years ago

Any news about pricing?

Now Firebase humane ROS for pricing :( I only need to perform a little business logic on the server side.

aehlke commented 6 years ago

The newly-announced AWS AppSync is an interesting alternative here now as well, as the pricing will likely scale generously from a small scale (as typical with AWS offerings). I expect this will apply pressure on Realm in this regard.

bigfish24 commented 6 years ago

We launched GraphQL support this week: https://realm.io/docs/realm-object-server/latest#web-integration

Would love feedback as it’s our first effort here.

michelalbers commented 6 years ago

@bigfish24 - nice effort! But does this help the real issue if server side access being overpriced?

bigfish24 commented 6 years ago

Email me at af@realm.io we have something in store for Q1 that might help πŸ˜‰

kevinmlong commented 6 years ago

So the GraphQL support is intriguing but my understanding is that it only allows for reads and mutations (not creations). So this opens up the ability to make changes server side, but still limits the ability to make new objects server side, unless you fork over he $$$ for the professional version. Is my take on this accurate @bigfish24 ?

bigfish24 commented 6 years ago

So the GraphQL support is intriguing but my understanding is that it only allows for reads and mutations (not creations). So this opens up the ability to make changes server side, but still limits the ability to make new objects server side, unless you fork over he $$$ for the professional version. Is my take on this accurate @bigfish24 ?

Nope mutations support creating, deleting, and updating objects. Queries for reads or you can use subscription for realtime updates pushed -- pretty cool feature that even AWS AppSync claimed to have at launch but doesn't

bigfish24 commented 6 years ago

I need to clarify my last statement, as I misunderstood your question. Yes, today the GraphQL service is built on Realm-JS which means the sync APIs on Linux are gated to a PE token. We are working on a solution though, sorry about this. In the mean time just sign up for a trial to get a token: https://realm.io/trial/realm-professional-edition/ while we fix it.

kevinmlong commented 6 years ago

Oh. I stand corrected then. Good to know.

Not sure I’m going to sign up for a free trial until I know there is something worth while (and not overpriced) when the trial is up.

bigfish24 commented 6 years ago

@kevinmlong I understand, I will keep this thread updated

kevinmlong commented 6 years ago

@bigfish24 - With the release of Realm Cloud - any chance some of the issues expressed here may be relieved? Any hints on the pricing structure for Realm Cloud?

bigfish24 commented 6 years ago

Oh shoot this got lost on me. The GraphQL Service works with DE today. I apologize for my back and forth comments above and then for not following up due to holidays. With regards to cloud, the GraphQL API will be part of it and while we haven’t announced pricing just yet, our plan with cloud is to offer free tier and then have pricing that scales with your usage.

kevinmlong commented 6 years ago

GraphQL works on DE, but sync - the important part - is locked to PE or above. Will Cloud alleviate some of this? That is will cloud allow server side applications to interact with a shared/synced Realm?

bigfish24 commented 6 years ago

Yes cloud accounts will have access to sync APIs and global notifier in Node and .Net.

hallaji commented 6 years ago

@bigfish24 Is the GraphQL API part of realm cloud now? or Do I need a self-hosted one in order to benefit from that?

ianpward commented 6 years ago

It is part of the cloud

TariqTawalbeh commented 5 years ago

Hello Guyz, I would like to know if I can update mysql DB with objects from ROS via nodeJs or GraphQl or whatever and is it free ??