# Coppermine Photo Gallery v1.5.x: Documentation and Manual

# Developer documentation

## Target audience

This part of the documentation is not meant for end users of Coppermine, but only for developers. There is no support for this section, it comes as-is.

## Contents

The developer documentation currently is far from complete. However, the following sections exist:

- ### Adding/renaming/removing files

  Instrcutions for developers that explain what needs to be done when creating new files within the core

- ### Coding guidelines

  A must-read for coppermine dev team members, recommended reading for (potential) contributors

- ### Config options

  Adding config options to coppermine's core code. Developers who want to add configuration options should read this.

- ### Database schema

  The database tables used. An overview what get's stored where in the database.

- ### Documentation editing

  For developers and translators

- ### Javascript in Coppermine

  A guide how to integrate JavaScript into the Coppermine core or into plugins

- ### Packaging a new release

  Steps needed to be performed by the maintainer of the coppermine package each time a new package release is being made

- ### Plugin writing for Coppermine

  For plugin authors

- ### Sanitization of Superglobals using Inspekt

  Understand how the sanitization works and what you need to do to make superglobals work as expected

- ### Subversion

  Need to get the most recent SVN checkout? Go here.

- ### Tools recommended by the devs

  Software tools recommended by the coppermine developers to work with Coppermine

- ### Updating

- ### Variables & Constants

  An overview about global variables used in coppermine. Usefull if you're a coder and want to understand how coppermine works to be able to make use of the variables inside your custom code (e.g. if you're a plugin author)

- ### Versioncheck