Timesheet is a simple Django app for invoicing built as a code challenge for Hire an Esquire. The requirements were
- 
"TimeEntry" CRUD (Create/Read/Update/Delete) for model with follow fields:
- Time spent in minutes
 - Date of entry
 - Summary of work completed
 - Associated job (via UUID)
 
 - 
"Job" CRUD for model with fields:
- Title
 - Hourly rate
 - Tax rate
 
 - 
Dynamic creation of "Invoice" parameterized on job and date range returning the following fields:
- Job
 - Date range
 - Time entries in range
 - $ subtotal (hourly_rate * total_minutes/60)
 - $ tax (subtotal * tax_rate)
 - $ total
 
 
- Add "timesheet" to your INSTALLED_APPS setting like this::
 
    INSTALLED_APPS = (
        ...
        'timesheet',
    )
- Include the timesheet URLconf in your project urls.py like this:
 
    url(r'^timesheet/', include('timesheet.urls', namespace='timesheet')),
- 
Run
python manage.py migrateto create the models. 
- 
Clone this repository.
 - 
Run
python setup.py sdist. - 
Install the package using
pip install django-timesheet/dist/django-timesheet-0.1.tar.gz. - 
Follow the Quick Start section.