Welcome to the Bright Content project
Bright Content: Python software for content management built from reusable components.
Copyright 2006-2008 Uche Ogbuji, Julian Krause and Eric Larson. Licensed under the Academic Free License version 3.0 and the New BSD License
BrightContent is a lightweight, RESTful[1] content management platform written in Python from reusable components. Its most common use is as a Weblog engine. It is based on a simple, coherent philosophy for content architecture, and reuses sound Web standards and software components to avoid over-architecture and code bloat.
Bright Content offers many of the usual features of Weblog engines and other content engines, but its basic operation and plug-in model is based on the WSGI standard for Python Web components. Many existing WSGI components can be plugged directly into Bright Content in order to enhance its operation, and Bright Content also has a set of specialized components for common content needs.
Bright Content also builds on the Atom Syntax, Atom Protocol, and an XML data flow. XML is used modestly (e.g. not for configuration) and is intended as much as possible not to get in the way. Built-in templates are XSLT for now, but support for plug-ins providing other templating systems is in the near-term roadmap.
[1] RESTful -- designed with well-known principles of well-behaved Web applications.
For more on the general nature of the project see Bright_Content/Philosophy. For greater detail see Bright_Content/Architecture. You might also want to browse the Bright_Content/Use_cases.
- Mailing list
- Jabber room
- On Google code
- Issue tracker
- Older wiki
- Long term home
http://brightcontent.net (not yet in service)
Installation
Bright Content requires Python 2.4 or more recent. Install it using easy_install as follows:
easy_install brightcontent
If this does not work you are probably not set up for easy_install. Follow the simple instructions at
http://peak.telecommunity.com/DevCenter/EasyInstall
easy_install will automatically take care of installing dependencies for you.
See also the Python Cheeseshop page.
You'll also need to see to the Bright_Content/Dependencies
Quick Start
Once BC is installed:
- Initialize a test atom store by populating it with entries from an Atom 1.0 feed. For example:
python etc/import-feed.py http://copia.ogbuji.net/blog/index.atom /tmp/atomstore/
Run the server. You may wish to copy docs/devel_config.ini to a different file, edit the settings (Bright Content/Customization/Main Config (TODO) -- you'll at least need to update flatfile_storedir to the directory specified above), and specify the new file, instead.
NOTE: If you create a seperate devel_config.ini (to manage the BC instance) and launch paster with the new devel_config.ini, all %(here)s paths in this config will be relative to the new location.
paster serve docs/devel_config.ini
Check out the test Weblog at http://127.0.0.1:8080/ (or other location depending on the .ini file you used)
More ideas for getting started at: Bright_Content/Sample_setups.
Development versions
Present, key branches of BC code in development:
http://hg.4suite.org/brightcontent/ - main mercurial branch repository
http://ionrock.org/hg/ - various other branches maintained by Eric Larson
http://hg.4suite.org/ - full Hg repository list for 4suite.org
Design docs
We do the best we can to maintain documentation of architecture and design principles underlying BC code: Bright_Content/Architecture
Development
For more on tailoring Bright Content to your needs see Bright_Content/Customization.(TODO)
For information on Project progress see Bright_Content/Project_progress.
Issue tracking: Bright_Content/Issues
