Converse 7.0.4
  • Homepage
  • Table of Contents
      • Quickstart
        • Getting a demo up and running
        • Initializing Converse
        • Where to go from here?
      • Features
        • File sharing (XEP-0363 HTTP File Upload)
        • End to end message encryption (XEP-0384 OMEMO)
        • Open chats via URL
        • Notifications
        • Multilingual Support
        • Moderating chatrooms
        • Passwordless login with client certificates
      • Setup and integration
        • The various components
      • Session Management
        • Shared Sessions
        • Keeping users logged-in across page reloads
      • Configuration
        • Configuration settings
      • Development
        • Dependencies
        • Software Style Guide
        • Writing a plugin
        • The API documentation (generated with JSDoc)
        • Automated tests
        • Integrating converse.js into other frameworks
        • Generating builds
      • Security considerations
        • The threat model
        • Mitigating measures
        • Addititional measures
        • Other considerations
      • Theming
        • Setting up your environment
        • Modifying the HTML templates of Converse
        • Modifying the CSS
        • Testing your changes
        • Creating dist files
      • Translations
        • Manually updating translations
      • Troubleshooting and debugging
        • General tips on debugging Converse
        • Performance issues with large rosters
        • File upload is not working
        • Common errors
      • Writing Documentation
        • What is used to write the documentation?
        • Where is the documentation?
        • How to generate HTML from the source files?
  • Current Page
      • Development
  • « Configuration
  • Dependencies »

Sponsored by

  • KeyCDN
  • Codefirst
  • Blokt Crypto & Privacy
Become a sponsor
Source
Edit me on GitHub

Development¶

Welcome to the developer documentation of Converse.js.

Here you will learn how to add new features and how you can create your own customized version of Converse.

Converse is a community project and largely volunteer driven.

We’re grateful for your contributions, so please don’t hesitate to make a Github pull request to fix a bug or to add new functionality.

  • Dependencies
    • Installing the 3rd party dependencies
    • Brief description of Converse’s dependencies
  • Software Style Guide
    • Tabs or spaces?
    • Underscores or camelCase?
    • Spaces around operators
    • Global constants are written in ALL_CAPS
    • Function declaration and invocation
    • Checking for equality
    • Curly brackets
  • Writing a plugin
    • Introduction
    • Advantages of plugins
    • Registering a plugin
    • Whitelisting of plugins
    • Security and access to the inner workings
    • Overrides
    • Plugin dependencies
    • Extending Converse’s configuration settings
    • Exposing promises
    • Dealing with asynchronicity
    • A full example plugin
  • The API documentation (generated with JSDoc)
  • Automated tests
    • Running tests
  • Integrating converse.js into other frameworks
    • Angular.js
  • Generating builds
    • Creating JavaScript and CSS bundles and distribution files
    • Creating custom bundles

Back to top

Source

© Copyright 2018, JC Brand.
Created using Sphinx 2.1.2.