Introduction

The purpose of this Documentation is to define what this application does in a simple language. If you have used www.google.com, you should have enough knowledge to understand this document. If you are having trouble, it’s not because you lack technical experience but rather because the author has failed to express themselves clearly.

The authors beg you to please inform us when you find any confusing or unclear passages so they may be reviewed.

If Specifications and Documentation scare you, you may want to first read our Specification Explanation.

Documentation Overview

This Document defines the AcornAccounting Application, and provides guides for users and contributers.

The End-User experience is defined by the Design Specifications. The User Guide will help new users become acquainted with interacting with the application by providing an overview of all possible actions and effects.

Developers and Contributers should reference the Development Standards and Contributing and Technical Specifications Sections for information on Best Coding Practices and the current public API.

Program Overview

AcornAccounting is an Open Source, Web-based, Double Entry Accounting System for (Egalitarian) Communities.

Major Features

AcornAccounting has these notable features:

  • Trip Entry Form - Tripper-friendly entry form with Accountant approval
  • People Tracking - Count the number of Intern/Visitor days, automatically pay monthly and yearly stipends
  • Online Bank Statements - Download statements to make entry easy
  • Open Source - Easily add custom reports or entry types

Goals

AcornAccounting strives to be both Accountant and Communard friendly.

Entry and Reporting should be streamlined for Accountants and the UI and workflow should be accessible to Communards. Automation will be used to lighten repetitive workloads for Accountants.

Non-accountants should feel comfortable checking their Account balances and Project budgets.

Non-Goals

AcornAccounting does not try to be:

  1. An international Accounting system(only English and USD is currently supported).
  2. Customer Relationship Management Software
  3. Enterprise Resource Planning Software
  4. Payroll Accounting Software

Technology

AcornAccounting is written in Python, using the Django Web Framework. The UI is built using the Bootstrap CSS and Javascript GUI Framework. Clientside validation will be performed by custom Javascript and Parsley.js.

Django contains many helper apps/plugins. Some apps we use include:

  • Cache Machine for caching querys and objects.
  • Djanjo-parsley for integration with Parsley.js.
  • South to automate database changes/migrations.
  • MPTT for handling object hierarchies.

Version Control is handled with Git. The automated deployment script uses Fabric.

Documentation and API Specifications will be written in reStructuredText for use with Sphinx. UML diagrams will be generated from the documentation using plantUML.