5 ms·
Would you build a pure client-side JavaScript App using Pageforest?
- jporta 16y agoI don't think so. Also, since we're at it (I took some time to read the whole frontpage) "(GET, PUT, and POST)" are standard HTTP (not HTML) methods.
- mckoss 16y agoOops. Thanks - I'll correct that. Any elaboration on why this service would or would not appeal to you?
- jporta 16y agoI don't see any obvious benefit in using it. Relying on the the platform to handle the user authentication and document storage is something I wouldn't be comfortable with, though I'd use it as an option (as facebook connect, google or any other authentication service out there). In general, I think this would have been a hit 5 years ago. Now, with services like heroku, phpfog, app engine, even github having free plans, the "hosting" part seems to be solved, and something pretty similar can be done these days with some sparkle from FB Connect and a bit of rails/php for the client side storage. Don't get me wrong, I like this kind of services because [I think] they push innovation in different directions. It's just that I think there are a few pretty well stablished and provide similar (or equivalent) functionality and I just don't see any obvious advantage between this service and the others, though I see a few drawbacks.
- mckoss 16y agoGood feedback. What I'm aiming for (and trying to see if there are others that this resonates with), is a higher level of abstraction for HTML5-centric application development. There's a lot to learn to build applications that span database/web server/client - so I'm trying to build a "generic" backend, and let the application developer concentrate on the client side only. Maybe it's really only applicable to "toy" or "prototype" applications. Like this one, for example: http://wiki.pageforest.com/ http://wiki.pageforest.com/
- drcode 16y agoSure, all those services let you write server code for free, but why write server code at all if you don't have to?
- jporta 16y agoBecause I can. No, seriously, I didn't mean that server code should be written. You can use those services to serve static pages as well.
- rmason 16y agoI don't see any mention of database. If you can't save or retrieve records that's kind of limiting, no?
- kazoolist 16y agoquoting: What Services does Pageforest Provide? <snip> Cloud-based Document Storage - Each Pageforest user is given storage for their own document collection in the Cloud. When a user authorizes your application, your App can create and store documents to the user's collection.
- rmason 16y agoDocument storage? Saving an html page to a directory could be document storage. They asked for comment and I think they need to be more specific that's all. If they're using the GAE db imho they should say so.
- mckoss 16y agoGood points. The back end is implemented on App Engine. But we provide an abstracted storage interface. Application can created "documents" (up to 1 MB of JSON, and saved using a HTTP PUT or POST). Our permissions model is based on the document - you can keep a document private to a user, or make it read/write able by others. In addition, each document can have as many child "blobs" as you want (each blob is up to 1 MB using any format - can be text, png, json, xml, etc.). Interestingly, each "App" is very similar to a "Document". E.g., you index.html file is a "blob" in the application.
- ktsmith 16y agoTo walk a little further down that path, if there is database access how is validation done since none of the client code can be trusted to have been executed and all input from the client should be considered suspect?
- mckoss 16y ago
- flipdeadshot 16y agoNo; no I wouldn't.
- mckoss 16y agoPlease? ;-)
- andrewjshults 16y agoPossibly using the open source platform, fairly unlikely on a hosted version. Why? I think it's almost certain that at some point I'm going to need some configuration or tweaks to the server side code that are application specific and cannot be done in client side code (validation, heavy lifting or secret sauce things). As nice as it would be to not worry about the service side code, once you get past the basics of a CRUD app, the server side become rather important. Off the top of my head the biggest early concern I'd have would be how are you going to handle server side validation, since relying solely on client side validation is pretty much just as good an no validation at all. Especially complex validation involving multiple fields. The next would be interacting with things like third party APIs that have access keys that need to be protected or just can't be accessed from the client (because they don't offer a JSONP interface).
- drcode 16y agoGoogle App Engine (and other cloud providers) also places limits on how much you can tweak the server side code. Clearly, there will always be apps that require some crazy server-side C code or whatever, but for 99% of apps all that matters is whether pageforest has exposed enough in the API to take care of the important stuff (validation, etc.) I'm not saying their API is good enough for this, since they just launched, but from a theoretical standpoint I think the concept is sound.
- mckoss 16y agoYes, we have our own user validation system (a challenge/response protocol). We actually validate you on the pageforest.com domain, and then transfer a session cookie to your application - so your app never sees the user password/secret. I would say our sweet spot is smaller, document-centric apps (games, puzzles, document editors). Anything that can use a simple document persistence model.
- HerraBRE 16y agoWhat are the key similarities or differences between this and http://unhosted.org/ http://unhosted.org/ ? Considered collaborating?
- drcode 16y agoI agree there's definite overlap in their models, from the look of it- But there are still clear differences between these two concepts, with differing strengths and weaknesses.
- mckoss 16y agoThanks for the pointer to unhosted - I've not seen this before. Sounds like a standard protocol to separate application from data storage - pretty similar to the Pageforest model - except federated!
- HerraBRE 16y agoYou're welcome! Glad to see you've already pinged the mailing list (I lurk). Friday night networking! :-)
- drcode 16y agoI just want to say I have been wanting this forever and can't believe no one has provided this before- I'm annoyed you guys beat me to this type of product. This is exactly how a web app should be created- All the apps I've been creating lately are 95% client-side javascript and 5% of annoying server code that could obviously have been implemented using a generic REST-based data store. I will be using pageforest extensively (Assuming it's not buggy, etc :-) Hats off to you guys for being first to market on this!
- mckoss 16y agoDon't be hater ... come work with us! ;-) Seriously, thanks for giving it a try - I'd love to get your feedback on problems you have using the platform...
- olegp 16y agoI really like the concept, reminds me of CouchApps (http://couchapp.org/ http://couchapp.org/). That being said, I agree with andrewjshults that sooner or later you will need to write server side code, even if it is to proxy client side requests to another domain. mckoss, would it be worth making a server side implementation of your service for http://www.akshell.com http://www.akshell.com - a server side JavaScript platform with syncrhonous I/O and a browser based IDE. We're open sourcing the whole stack, so there would be a lot less lock in than with AppEngine. Drop me a line on our mailing list if you're interested: http://groups.google.com/group/akshell http://groups.google.com/group/akshell