> Blogs, Forums, Photo Gallery (ignoring GAE's issues with images, at the
> moment), and the like.
Blog is the example used in the documentation. Actually, following the
instructions of the chapters already published is enough to get a
simple Blog running on GAE. Just appcfg.py-upload it to your
AppEngine account and see it running.
Revamping the whole site to your own style will require you to read
the code or wait for us to write the MainTemplate section of the doc.
As for common features like comments, tags, etc, it is the components
section of the doc that you want us to write.
For a Forum app like the one we are using at the moment, just read my
post in this thread
http://groups.google.com/group/google-appengine/browse_thread/thread/e3756b7a2ba02bf/987b1db0bcf32bff
copy the source code to schema.py and get going. Again, the user
interface will be very basic, but I consider that getting a working
application in five minutes and spending the rest of my time improving
the user interface is better than spending one day getting a basic
version running. I hope you will agree.
For a Photo Gallery, try this schema:
class Gallery(EntityType):
title = String(maxsize=50, required=True)
description = String()
class Photo(Image):
caption = String()
in_gallery = SubjectRelation('Gallery', cardinality='?*')
then work on the user interface to make it look nicer.
> Keep in mind though, i ment no disrespect to your product at all. It seems
> great, insanely great considering how new GAE is on the market.
No problem. Our documentation states in its introduction:
"""LAX competes with other Python web application frameworks to get
developers' attention and support. It originates from Logilab and is
the result of about ten years of experience in developing large-scale
web applications."""
We have been doing free/libre software for fifteen years, we know that
there are tons of projects out there claiming to be the best invention
since sliced bread. We know we have to prove what we claim before
people accept to use our software and we are investing time in making
this happen. Please question anything I say, I can back up my
claims :)
> I was just trying to gauge what the main audience of this product would be; ie, would
> the "average blogger" be able to create a blog, etc.
In a first stage, we intend to reach "average developer". Average
developer will build and share components and full apps. In a second
stage, "average blogger" will be using any full app he likes.
I forgot to mention that one other thing we expect to have time to
publish this week is our component library. We have library components
for blogs, tags, comments, email, etc. Developing new applications is
much easier when you can reuse existing building blocks. I expect
these components and full apps to pop up everywhere once we get some
steam.
Of course, we will be happy to reach "top developer" too and get
contributions for the engine itself.
> Since were in a bit of a Q&A. How does designing a site in LAX handle
> upgrading versions of LAX? Ie, if you go out and build a site off of
> LAX-0.3, and you guys release 0.4 a week from now, will the upgrade process
> often impact the site? I ask because:
> A: Your documentation on the LAX style of "creating a site" seemed..
> interesting, to say the least (*though i am obviously, highly unfamiliar
> with it*), and i was not sure how that side of things worked.
> B: appengine requires some interesting styles for upgrading data.
> Considering timeouts are a very real problem, i cannot even think of a "good
> way" to upgrade an older datascheme to a newer one.
Good question. We are long-time debian users and developers. The only
acceptable way to upgrade computer systems is for us to type "apt-get
update ; apt-get upgrade". Our original framework thus has an
"upgrade" command that executes migration scripts and deals with low-
level things (like altering SQL tables). In the lax-0.3 archive,
you'll find a bin/laxctl executable. The upgrade command has not been
ported yet, but it will be. Our target is for user to type "bin/laxctl
upgrade" and be done with any migration made necessary by new versions
of the framework or the components. We have this for our original
framework and so far we are not aware of any serious obstacle to doing
the same with AppEngine. The datastore API is pretty straightforward
once you get to know it.
There is another reason why we started developing a social-network
application of our own: we want to hit these logs before you get a
chance to do it yourself and make sure all the solutions we
implemented in the original framework get ported to AppEngine.
> Thanks for the hard work!
We look forward to more feedback. You like it, share it and enjoy
it! :)