Is it possible to develop application based on Confluence platform?
Asked by Khon:

Hi all,

We want to develop a Portal application based on Confluence (so that our company internal users can interact with both Confluence and this application in a single page view of browser) with below features:

- the application has 5+ screens in which user can read / write data. Thus we need to define our own database tables

- the application reads data from LDAP

- the application wants to aggregate the list of Confluence pages / blogs that a user has subscribed

**Questions:**

- is it a good idea to implement the application in Confluence? Why and why not?

- if yes, then could you give me some guideline / documentation / sample codes for that? (I saw some sample codes for Confluence Macro, but it's simple for an application need)

**Additional notes**:

- another direction of this problem is to build the application from scratch and use iframe to include that application into the Confluence. But it's not cost-effective to build from scratch and I heard that integration between application and Confluence also costs a lot.

- I did Google to find some guidelines, but it seems not valid to my need

* <https://developer.atlassian.com/docs/getting-started/learn-the-development-platform-by-example/store-and-retrieve-plugin-data>

<!-- -->

* <https://developer.atlassian.com/confdev/confluence-server-rest-api/confluence-rest-api-examples>

<!-- -->

* <https://developer.atlassian.com/confdev/confluence-plugin-guide>


Answers:
author: Domenico Manzo _Actonic_
body: Confluence is a good platform for any size of customizations. A lot of huge add-ons based on Confluence API have many pages, complex logic, rich UI, etc.

Everything that you want to add to Confluence is a "module". New pages are "xwork" modules, REST services - REST modules, etc.  
How to add a new "page module": <https://developer.atlassian.com/confdev/confluence-plugin-guide/confluence-plugin-module-types/xwork-webwork-module>

But it may be a real challenge to build Confluence add-on without Java development skills.

comments: author: Khon
body: Hi [@Domenico Manzo _Actonic_](/t5/user/viewprofilepage/user-id/1160116),

Thank you very much for the hints.

Could you please give me some hints / guidelines about creating database tables in Confluence so that my application will read / write to that DB tables?

It seems like difficult to find this topic in the documentation. Many thanks!


author: Domenico Manzo _Actonic_
body: [@Khon](/t5/user/viewprofilepage/user-id/1160045) You can create as many tables as you need. Confluence uses special ORM for new tables in DB called Active Objects

Here is a good start point <https://developer.atlassian.com/docs/atlassian-platform-common-components/active-objects/getting-started-with-active-objects>

comments: author: Khon
body: Hi [@Domenico Manzo _Actonic_](/t5/user/viewprofilepage/user-id/1160116),

Thank you for the inputs! I will check it out.


author: Khon
body: HI [@Domenico Manzo _Actonic_](/t5/user/viewprofilepage/user-id/1160116),

One more question, is it possible to define a batchjob in Confluence? Any documentation for that? The Google result doesn't show any clue about it. Thank you!