A tool for drafting, negotiating, executing and amending contracts.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
brevity
brevity_clj
README.md

README.md

Welcome to Brevity.

Brevity is a tool for drafting, negotiating, executing and amending contracts.

The primary difference between Brevity and other offerings is that Brevity decomposes contracts into re-usable & immutable components. This means contracts for completely different purposes can enforce consistency in common clauses and users can create their own "templates" from existing contracts by cherry-picking components.

0.1: Prototype (done)

What we made:

  • document, node, socket data model
  • compiler supporting raw text and latex

What we learned:

  • basic python syntax
  • github
  • vim

0.2: A big step forward (in progress)

What we are making:

  • separation of doc instance and doc model variables
  • unit testing
  • refactor data structure and data manipulation classes to provide enough flexibility for future versions
  • amendment duality (simultaneously a standalone contract as well as an amending package)
  • agreement which enforces internal consistency
  • host on Google App Engine
  • use NDB for persistence
  • implement templating system for html views
  • import/export objects via xml
  • logging

What we are learning:

  • generators
  • visitor pattern
  • builder pattern
  • unit testing
  • parsing xml
  • debugging with pdb
  • file manipulation
  • mvc
  • test driven development
  • google app engine / webapp2 / webtest / ndb
  • bootstrap
  • jinja2

0.3 Make it (gasp!) useful

  • component versioning
  • documents & agreements as state machines
  • agreement slicing
  • prototype web interface using Bootstrap
  • data formatting
  • prototype branding

0.4 Make it nimble and personal

  • implement endpoints
  • prototype mobile interface
  • refine web interface
  • implement google accounts
  • metrics

0.5 Make it really useful

0.6 Make it social

0.7 Make money

0.8 Teach it how to learn

  • Accounts
  • Design interface
  • Prototype interface
  • Touch-screen document execution
  • Payments
  • Quality & timeliness feedback loops

1.0 ?