Getting started with the OpenHatch code (moved): Difference between revisions

From OpenHatch wiki
Content added Content deleted
imported>Paulproteus
imported>Paulproteus
No edit summary
Line 1: Line 1:
{{Hacking OpenHatch}}
{{Hacking OpenHatch}}
To get your own instance of OpenHatch running, follow these '''five steps''' and then get in touch with us.
To get your own instance of OpenHatch running, follow these steps and then get in touch with us.


The code is written in Python. It uses the Django toolkit and tries to stick to good software testing practices. If you have Python experience, you should be able to get hacking pretty quickly even if you don't know Django or testing.
The code is written in Python. It uses the Django toolkit and tries to stick to good software testing practices. If you have Python experience, you should be able to get hacking pretty quickly even if you don't know Django or testing.


== Clone our git repository ==
== How to run a local site ==

=== Clone our git repository ===


You will need to have the ''git'' version control system installed. Once you do, type this into a terminal:
You will need to have the ''git'' version control system installed. Once you do, type this into a terminal:
Line 10: Line 12:
$ git clone git://gitorious.org/openhatch/oh-mainline.git
$ git clone git://gitorious.org/openhatch/oh-mainline.git


It might take a while; it's kind of a big repository. (Fifty megabytes, or so.)
It will take between 7 and 15 minutes. it's kind of a big repository. (Sixty megabytes, or so.)


== Overview of Openhatch filesystem structure ==

Take a look in the LAYOUT file - oh-mainline/LAYOUT

It's a good overview of the filesystem.

You can also read it online...

[http://gitorious.org/openhatch/oh-mainline/blobs/master/LAYOUT http://gitorious.org/openhatch/oh-mainline/blobs/master/LAYOUT]

== Follow the README ==

The repository is called '''oh-mainline''' so you have to "cd" into it:

$ cd oh-mainline

There you'll find a [http://gitorious.org/openhatch/oh-mainline/blobs/master/README.mkd README.mkd] file. Give it a careful read.

$ less README.mkd

'''That''' is what we really keep up to date with the necessary things.

It contains instructions you need to follow. Go ahead and do that. I can wait.



== Run the tests ==
=== Read INSTALLATION.mkd inside ===


Once you have the repository, open up the INSTALLATION.mkd file in any text viewer (like ''gedit' or your favorite web browser).
We have automated tests that help us know when we've broken functionality in the OpenHatch code. Running the tests is a good way to make sure your OpenHatch environment works properly! Try this:


Read it, and follow the few short steps to getting your local site going..
$ ./bin/sqlite_mysite test missions


== Next steps ==
That runs the test suite for just the ''missions'' part of the code. It uses the sqlite-based test runner so it runs fast; the real website uses MySQL, not SQLite, but you'll discover that tests run about 10 times faster in the sqlite runner.


== Get in touch ==
=== Get in touch ===


The fifth ''mandatory'' step is to get in touch with us. (Okay, not quite mandatory, but we'll all be happier if you do)
We really recommend that you get in touch with us. (It's not quite mandatory, but we'll all be happier if you do)


# Join the [http://lists.openhatch.org/mailman/listinfo/devel Devel mailing list] and say hello.
# Join the [http://lists.openhatch.org/mailman/listinfo/devel Devel mailing list] and say hello.
Line 54: Line 30:
## We have weekly meetings, typically on Saturdays at 4pm EST (-5 UTC).
## We have weekly meetings, typically on Saturdays at 4pm EST (-5 UTC).


== Read more documentation ==
=== Read more documentation ===


Before you start hacking OpenHatch, we strongly advise you to watch [http://python.mirocommunity.org/video/1882/djangocon-2010-learning-a-new- Learning new codebase] talk by Justin Lilly given during [http://python.mirocommunity.org/category/djangocon-2010 DjangoCon 2010].
Before you start hacking OpenHatch, we strongly advise you to watch [http://python.mirocommunity.org/video/1882/djangocon-2010-learning-a-new- Learning new codebase] talk by Justin Lilly given during [http://python.mirocommunity.org/category/djangocon-2010 DjangoCon 2010].
Line 62: Line 38:
You can find things to work on by browsing our [http://openhatch.org/bugs/ bug tracker] or asking us!
You can find things to work on by browsing our [http://openhatch.org/bugs/ bug tracker] or asking us!


== Start contributing patches! ==
=== Start contributing patches! ===


We mark issues that are particularly good for new contributors with the "bitesize" keyword on our bug tracker. You can find the open easy issues [https://openhatch.org/bugs/issue?@columns=title,id,activity,status,assignedto&@sort=activity&@group=priority&@filter=status,keyword&@pagesize=50&@startwith=0&status=-1,1,2,3,4,5,6,7,9,10&keyword=1&@dispname=bitesized here].
We mark issues that are particularly good for new contributors with the "bitesize" keyword on our bug tracker. You can find the open easy issues [https://openhatch.org/bugs/issue?@columns=title,id,activity,status,assignedto&@sort=activity&@group=priority&@filter=status,keyword&@pagesize=50&@startwith=0&status=-1,1,2,3,4,5,6,7,9,10&keyword=1&@dispname=bitesized here].

Revision as of 19:52, 14 November 2011

This is a page about improving or modifying OpenHatch.

We call that "Hacking OpenHatch," and there is a whole category of pages about that.

To get your own instance of OpenHatch running, follow these steps and then get in touch with us.

The code is written in Python. It uses the Django toolkit and tries to stick to good software testing practices. If you have Python experience, you should be able to get hacking pretty quickly even if you don't know Django or testing.

How to run a local site

Clone our git repository

You will need to have the git version control system installed. Once you do, type this into a terminal:

$ git clone git://gitorious.org/openhatch/oh-mainline.git

It will take between 7 and 15 minutes. it's kind of a big repository. (Sixty megabytes, or so.)

Read INSTALLATION.mkd inside

Once you have the repository, open up the INSTALLATION.mkd file in any text viewer (like gedit' or your favorite web browser).

Read it, and follow the few short steps to getting your local site going..

Next steps

Get in touch

We really recommend that you get in touch with us. (It's not quite mandatory, but we'll all be happier if you do)

  1. Join the Devel mailing list and say hello.
  2. the #openhatch IRC channel in freenode. (If you can click IRC links: <irc://irc.freenode.net/openhatch>)
    1. We have weekly meetings, typically on Saturdays at 4pm EST (-5 UTC).

Read more documentation

Before you start hacking OpenHatch, we strongly advise you to watch Learning new codebase talk by Justin Lilly given during DjangoCon 2010.

You can find more tips about hacking OpenHatch in the Category:Hacking_OpenHatch!

You can find things to work on by browsing our bug tracker or asking us!

Start contributing patches!

We mark issues that are particularly good for new contributors with the "bitesize" keyword on our bug tracker. You can find the open easy issues here.

If you find an issue you like and it isn't assigned to anyone, assign it to yourself and start hacking (you'll need an OpenHatch account to log in to the bug tracker). If it is assigned to someone already, but it looks like they haven't gotten around to working on it, leave a note on the ticket saying that you are interested in taking it (you can also try asking on IRC).

When you are ready to submit a patch for an issue, follow the guidelines at How we handle patches.

If you ever feel like you are getting stuck or could use some design feedback, don't hesitate to ask for help on the IRC channel, on the devel mailing list, or on the issue ticket. Attending the weekly development meetings on IRC is a great time to ask for help or recommendations on issues to work on.