These are questions - not so much on answers, though:
- where do I get the pkgs to start working tg2.repo from fpeople site
- what do I install? yum install moksha yum install python-tg-devtools-2.0-9.fc11.noarch yum update #to make sure you have the latest bits in f11 otherwise you'll get dep errors on: python-simplejson, python-formencode, python-paste-deploy
- Is there any example code? .....
- How do I start up a local instance of fcomm so I can test? - git clone git://git.fedorahosted.org/fedoracommunity.git - cd to fedoracommunity - python setup.py egg_info - paster serve development.ini - now you'll have an instance of fcomm running on port 8080 of localhost
- I get a bunch of dep errors, how do I fix them? - see above about what to install
- how do I start a simple app? ...
- how do I start a simple widget? ...
- do I have to put my app in the fcomm pkg in order for it to work/be tested? ...
- once I have an app can I pkg it up as a separate pkg and just have it require fcomm == someversion or do I have to submit it as a patch to fcomm? ...
- Is there a good way to communicate with other apps/widgets? ...
- if I want to get data from another site - which connector routines should I use? ...
- is there a simple place to cache/stash data for future use? ...
that's what I have to start with. More questions as I have them.
-sv
Hey Seth,
I'm sorry for the delayed response here. In attempting to answer your questions, I went off on various tangents to fix/refactor/improve things to ensure that the answers are simple.
On Tue, Aug 18, 2009 at 04:32:51PM -0400, Seth Vidal wrote:
These are questions - not so much on answers, though:
where do I get the pkgs to start working tg2.repo from fpeople site
what do I install? yum install moksha yum install python-tg-devtools-2.0-9.fc11.noarch yum update #to make sure you have the latest bits in f11 otherwise
you'll get dep errors on: python-simplejson, python-formencode, python-paste-deploy
I added instructions to the Development docs and I also created a Getting Started guide which now has details on setting up a mod_wsgi/RPM as well as a virtualenv environments.
http://moksha.csh.rit.edu/apps/docs/main/GettingStarted.html
- Is there any example code? .....
There are various code snippets throughout the docs, but I also recently wrote up a guide for utilizing Moksha in an existing TurboGears2 app:
http://moksha.csh.rit.edu/apps/docs/main/IntegratingWithTG2.html
Also, the quickstart templates, mentioned below, will spit out a working project, with example components, based on user configuration.
- How do I start up a local instance of fcomm so I can test?
- git clone git://git.fedorahosted.org/fedoracommunity.git
- cd to fedoracommunity
- python setup.py egg_info
- paster serve development.ini
- now you'll have an instance of fcomm running on port 8080 of localhost
- I get a bunch of dep errors, how do I fix them?
- see above about what to install
I updated these instructions on Fedora Community's Trac to bring them up to speed a bit. Once everything is in Fedora, we'll be able to simplify it even more.
- how do I start a simple app?
- how do I start a simple widget?
So I threw together a bunch of quickstart templates (and unit tests) for creating new moksha components.
http://moksha.csh.rit.edu/apps/docs/main/QuickstartTemplates.html
- do I have to put my app in the fcomm pkg in order for it to work/be
tested?
- once I have an app can I pkg it up as a separate pkg and just have it
require fcomm == someversion or do I have to submit it as a patch to fcomm?
Your apps can be developed and packaged separately, if you wish. The quickstart templates spit out a `pavement.py` that allows you to run `paver reinstall`, which will automatically generate an RPM for your package and install it (note, I think this auto-rpm generation is broken in rawhide at the moment. I'll look into it)
- Is there a good way to communicate with other apps/widgets? ...
Yes, you can directly access other apps and widgets using the `moksha.get_app` & `moksha.get_widget` helper methods.
Or, you can access any widget or app externally via `/apps/appname` and `/widgets/widgetname` URLs.
- if I want to get data from another site - which connector routines
should I use? ...
I added a Moksha resource connector quickstart template, test cases, and exposed J5's module documentation.
http://moksha.csh.rit.edu/apps/docs/main/Connectors.html
- is there a simple place to cache/stash data for future use? ...
Just as in any other TurboGears2 app, you can create a SQLAlchemy model to store data in a relational db. You can also easily cache data within your Widget or App
http://moksha.csh.rit.edu/apps/docs/main/Caching.html
(I also added a flexible polymorphic vertical db model into Moksha a long time ago. This allows you to create any sort of entity with any number of columns of any type. I have docs for it, but have yet to pull it out into a seperate modular app. I'll polish this up and get it into the Moksha Labs for testing at some point)
that's what I have to start with. More questions as I have them.
Thank you very much for this Seth, it has been extremely useful.
I updated the FAQ with some of your questions:
https://fedorahosted.org/moksha/wiki/FAQ
I also reorganized the front page of our docs try and give it a more intuitive flow. It's still a little rough around the edges, but it's a start.
http://moksha.csh.rit.edu/apps/docs/
Feedback is much appreciated! Please, keep the questions/comments/criticisms coming :)
Thanks,
luke