On Wed, Mar 7, 2012 at 11:09 PM, Peter Bittner <[email protected]> wrote:
> I've just taken a look at the pygit source code. Fascinating, the
> source of the front-end is just about 300 lines long.
yeah - i know!
> Actually less,
> part of it is plain CSS, embedded.
> I've not yet understood what the server side does (it's probably
> jsonserver/jsonserver.py),
it's a stand-alone version of the jsonrpc.py stuff that's in the
pyjamas/pyjs/jsonrpc/* directory.
> and whether the source is complete.
yyep, it is. ok, as far as the functionality offered is concerned.
> Anyone
> want to give a hint what the SimpleJSONRPCServer(("localhost", 8000))
> on line 274 is capsulating?
ok, that's a stand-alone JSONRPC server, being based on (deriving
from) SimpleCGIHTTPServer which derives from SimpleHTTPServer.
as a result of it being stand-alone, you can't run it on port 80
(because that's where apache lives). so i have a ProxyPass and
ProxyPassReverse directive in the apache config to join the two
together.
messy, but it works. it's why i want to replace everything with mongrel2.
> (Where does the git data come from, finally?)
"import git". you have to run the SimpleJSONRPCServer.py application
in the working directory of the git repository that it's to open.
> What I like to do with pygit is come up with a state-of-the-art Git
> browser front-end, which intuitively allows browsing though the
> current code base, branches, last commits (and find out what has
> changed, e.g. with a syntax-highlighted diff-like output), inspect
> files, download files and tarballs, etc.
yeah great! hmm... download of files and tarballs shouuld be doable,
not possible as JSONRPC but as a separate link target...
> I'd be happy to see some suggestions on how the UI should look like
> (user experience, not design!),
what i created there was just something quick and functional, so as
not to have to run anything else. it's entirely up for grabs as to
what to do. tree hierarchy, punched cards, tickertape, roulette
wheels within wheels, anything goes.
> and what (JS-) libraries (?)
none! python only
> we should use for implementing, etc, etc. Anyone ready for a brainstorming
> session?
yeah, yeah, me.