# Framework Structure - Components

Components represent the extensive add-ons. They typically add completely new or different functionality and extends the overall framework possibilities. ApPHP Framework built upon components which are objects written to a specification. Using component mainly involves accessing its properties and raising/handling its own events. Each component extends the CComponent base class.
Currently they are:

- framework/ framework directory
  - components/ directory where placed all components
    - CClientScript.php manages JavaScript and CSS stylesheets for views
    - CComponent.php CComponent base class
    - CDbHttpSession.php provides database session-level data management
    - CHttpCookie.php provides cookie-level data management
    - CHttpRequest.php manages HTTP values sent by a client during a Web request
    - CHttpSession.php provides session-level data management
    - CLocalTime.php provides work with locales and timezones
    - CLogger.php allows to write messages to log files
    - CMessageSource.php represents a message source that stores translated messages
    - CMobileDetect.php provides detection or mobile, tablet or desktop devices
    - CShoppingCart.php provides a set of methods for common shopping cart operations
    - CUri.php parses URIs and determines routing