Status report on gep-013-server, and proposal

View: New views
4 Messages — Rating Filter:   Alert me  

Status report on gep-013-server, and proposal

by Doug Blank-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Work on gep-013-server, aka gramps webapp, is progressing on three
fronts: 1) integration with current gramps code, 2) web browsing of
data, and 3) web editing/adding data. The first two are being worked
on in the SVN branches/gep-013-server/ and the third has been
developed by our newest contributor, Kathy. Gramps team, meet Kathy;
Kathy meet the gramps team (Kathy is subscribed to gramps-devel).

Kathy has taken on the task of learning Python and Django and
developing the editing logic and infrastructure for the gramps webapp.
You can think of Kathy's work as sort of a Google Summer of Code, but
she isn't getting paid (by anyone, especially not Google), and this
isn't the summer (in the US). She is working on this as part of an
independent project, and I am her mentor. Although, she is also
teaching me Django as she learns it.

This has taken us longer than we thought to get to where we are, but
we are confident that we'll have a fairly complete gramps on-line by
the end of the year.

In the past week, we have been able to add new people, and edit their
main data. We have also been able to browse family and people, and are
real close to being able to import directly into Django from GEDCOM
and gramps format using the standard plugins. We should be able to run
reports too this week, also from the standard plugins. We already had
a way of importing into Django and exporting out of Django, but that
required a regular gramps gtk installation.

More importantly, we now understand what we need to do to work this
into trunk: we need two locations: one for code, and one for
templates. It doesn't really matter where each of these go, but this
is the organization in gep-013-server:

1) src/gen/web - all of the Django python code. This is where the main
gramps-Django files currently live, and where the webserver would be
run. The only items that get called from src/gen/web are the
import/export plugins for gramps gtk. There may times when gramps gtk
would like to use something here, for example in talking to the web
server. For now, we are keeping djangodb.py out of gen/db, and maybe
always will. We currently don't gain anything from djangodb for gramps
gtk... just a lot of serializing/unserializing. But we need it for the
plugins on the Django side.

2) src/data/templates - this is all of the Django html templates.

That's it. These directories can largely be anywhere. For cross-uses,
it is handy that the Django code be available to gramps gtk code.

So, we'd like to make a proposal that we move those two directories
into trunk. That should be the only changes required. We might have
our own po files later, but we'll of course try to use the same
phrases as we already do. There will be some new ones, but not too
many.

We can keep these two directories out of distribution, of course. But
I think we are ready to make it easy for other developers to begin to
work on the webapp, if they would like.

What do you think?

-Doug

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Status report on gep-013-server, and proposal

by Benny Malengier :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/11/9 Doug Blank <doug.blank@...>:

> Work on gep-013-server, aka gramps webapp, is progressing on three
> fronts: 1) integration with current gramps code, 2) web browsing of
> data, and 3) web editing/adding data. The first two are being worked
> on in the SVN branches/gep-013-server/ and the third has been
> developed by our newest contributor, Kathy. Gramps team, meet Kathy;
> Kathy meet the gramps team (Kathy is subscribed to gramps-devel).
>
> Kathy has taken on the task of learning Python and Django and
> developing the editing logic and infrastructure for the gramps webapp.
> You can think of Kathy's work as sort of a Google Summer of Code, but
> she isn't getting paid (by anyone, especially not Google), and this
> isn't the summer (in the US). She is working on this as part of an
> independent project, and I am her mentor. Although, she is also
> teaching me Django as she learns it.
>
> This has taken us longer than we thought to get to where we are, but
> we are confident that we'll have a fairly complete gramps on-line by
> the end of the year.
>
> In the past week, we have been able to add new people, and edit their
> main data. We have also been able to browse family and people, and are
> real close to being able to import directly into Django from GEDCOM
> and gramps format using the standard plugins. We should be able to run
> reports too this week, also from the standard plugins. We already had
> a way of importing into Django and exporting out of Django, but that
> required a regular gramps gtk installation.
>
> More importantly, we now understand what we need to do to work this
> into trunk: we need two locations: one for code, and one for
> templates. It doesn't really matter where each of these go, but this
> is the organization in gep-013-server:
>
> 1) src/gen/web - all of the Django python code. This is where the main
> gramps-Django files currently live, and where the webserver would be
> run. The only items that get called from src/gen/web are the
> import/export plugins for gramps gtk. There may times when gramps gtk
> would like to use something here, for example in talking to the web
> server. For now, we are keeping djangodb.py out of gen/db, and maybe
> always will. We currently don't gain anything from djangodb for gramps
> gtk... just a lot of serializing/unserializing. But we need it for the
> plugins on the Django side.
>
> 2) src/data/templates - this is all of the Django html templates.
>
> That's it. These directories can largely be anywhere. For cross-uses,
> it is handy that the Django code be available to gramps gtk code.
>
> So, we'd like to make a proposal that we move those two directories
> into trunk. That should be the only changes required. We might have
> our own po files later, but we'll of course try to use the same
> phrases as we already do. There will be some new ones, but not too
> many.
>
> We can keep these two directories out of distribution, of course. But
> I think we are ready to make it easy for other developers to begin to
> work on the webapp, if they would like.
>
> What do you think?

Nice work. I hope Kathy sticks around when her code project ends.

For me it is no problem to add to trunk, under the following conditions:

1/ for gramps 3.2: no distribution, so not in the makefiles or po
files. If little translation, and the translators agree, you could do
po anyway.

2/for plugins like exportDjango, set them to UNSTABLE at the moment,
so they do not show to normal users, only to developers running from
trunk with __debug__ True. I would want to avoid questions from the
users GRAMPS is aimed at: people who like a fat client on their PC.
The PR-talk for grampsweb is very different.

3/seperated from the rest of the code, but your talk of two
directories makes that clear.

Just like GeoView, the experience gained can then determine how to
proceed when we move to a 3.3 release. I would hope that for 3.3 we
can fix the merge issue in GRAMPS, be it gtk or web.

As an aside, there are certainly job opportunities for Kathy if she
finishes this, the new litl webbook (http://www.litl.com/) uses django
on the server with javascript to the client:
http://blogs.gnome.org/lucasr/2009/11/04/litl-webbook-some-technical-comments/
.  Too expensive for me though.

Benny

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Status report on gep-013-server, and proposal

by Brian Matherly :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Doug,

> 1) src/gen/web - all of the Django python code. This is
> where the main
> gramps-Django files currently live, and where the webserver
> would be
> run.

If I understand the contents of src/gen/web correctly, I would expect it to be placed in src/web instead - similar to how we currently have src/cli and src/gui. The src/gen directory is expected to contain code that is shared by all of the possible user interfaces (CLI, GTK, Web). I don't think that the Django stuff will be used by the other interfaces.

Would it make sense to move src/gen/web to src/web?

~Brian

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Status report on gep-013-server, and proposal

by Doug Blank-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, Nov 10, 2009 at 7:51 AM, Brian Matherly
<brian@...> wrote:

> Doug,
>
>> 1) src/gen/web - all of the Django python code. This is
>> where the main
>> gramps-Django files currently live, and where the webserver
>> would be
>> run.
>
> If I understand the contents of src/gen/web correctly, I would expect it to be placed in src/web instead - similar to how we currently have src/cli and src/gui. The src/gen directory is expected to contain code that is shared by all of the possible user interfaces (CLI, GTK, Web). I don't think that the Django stuff will be used by the other interfaces.
>
> Would it make sense to move src/gen/web to src/web?

Yes, I think you are right, that does make more sense. Will move today.

-Doug

> ~Brian
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Gramps-devel mailing list
> Gramps-devel@...
> https://lists.sourceforge.net/lists/listinfo/gramps-devel
>

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel