Darcsforge Philosophy

Darcsforge was meant to be a unique project management system with respect to others such as SourceForge and Trac. This document attempts to name the general philosophies for the project in an attempt to both introduce the system as a collection and as an ideal.

First of all, Darcsforge attempts to be a good Django project and good Python-ic suite of tools. Where possible the goal is to make use of existing functionality in other Django applications without largely burdening consumers with a large number of dependencies.

Modularity

Darcsforge is designed to be a relatively loose collection of applications. Replacing component applications should be a simple choice. Darcsforge should not be monolithic, instead it should offer good defaults when both used as a cohesive whole and when used as seperate pieces in a different design or layout.

Configurability

Hand in hand with Modularity comes configurability. Darcsforge should be easy to integrate and suit to please. Django templates are the lifeblood of Darcsforge’s UI and there is no reason that Darcsforge should be unable to embed itself into a hosting website’s look and feel. However, the default layout should not be forgotten and itself should be a good starting place for configuring Darcsforge for a project.

Scalability

Darcsforge should be scalable. Darcsforge should be able to host one small project as well as a Trac instance might and a larger “Forge”-style sites nearly as well. Good performance in a web application is a direct result of good web scaling.

Humanity

Darcsforge should strive to present a clean, humane interface. Darcsforge should encourage:

  • Clean URLs
  • Clean markup, yielding decent HTML
  • Names over numbers, dates over auto-enumeration

Table Of Contents

Previous topic

Darcsforge!

Next topic

Installation

This Page

Quick search