Last modified by Agnease on 2026/05/25 12:55

From version 7.6
edited by Agnease
on 2026/05/25 12:55
Change comment: There is no comment for this version
To version 1.1
edited by Agnease
on 2026/05/12 12:47
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -XWiki Development and Integrations
1 +xwiki-development-integrations
Content
... ... @@ -1,269 +1,0 @@
1 -{{velocity}}
2 -#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 -{{html clean="false"}}
4 - ## PAGE HEADER
5 - <section class="hero hero-centered service-hero" aria-labelledby="hero-title">
6 - <div class="container hero-inner">
7 - <div class="hero-kicker">
8 - <i class="fa fa-cogs" aria-hidden="true"></i>
9 - XWiki development and integrations
10 - </div>
11 - <h1 id="hero-title">Custom XWiki applications, workflows and integrations</h1>
12 - <p class="lead">
13 - Extend XWiki beyond documentation with custom applications, structured data, workflows,
14 - dashboards, automation and integrations adapted to your organization.
15 - </p>
16 - <div class="hero-actions">
17 - <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Discuss a project</a>
18 - <a class="btn btn-secondary" href="#development-process">See the development approach</a>
19 - </div>
20 - </div>
21 - </section>
22 -
23 - ## WHY CUSTOM DEVELOPMENT
24 - #set ($developmentReasonItems = [{
25 - 'title': 'Structure your information',
26 - 'icon': 'database',
27 - 'content': 'Use XWiki classes, forms, templates and metadata to organize business information in a maintainable way.',
28 - 'items': [
29 - 'Custom data models',
30 - 'Structured forms and templates',
31 - 'Metadata-driven pages and views'
32 - ]
33 - },{
34 - 'title': 'Automate workflows',
35 - 'icon': 'random',
36 - 'content': 'Support approvals, reviews, notifications, status changes and controlled document lifecycles directly in XWiki.',
37 - 'items': [
38 - 'Review and approval workflows',
39 - 'Role-based actions and permissions',
40 - 'Notifications and task queues'
41 - ]
42 - },{
43 - 'title': 'Connect external systems',
44 - 'icon': 'plug',
45 - 'content': 'Integrate XWiki with authentication systems, APIs, AI tools, internal services and external platforms.',
46 - 'items': [
47 - 'REST API integrations',
48 - 'SSO, LDAP and identity systems',
49 - 'AI-assisted search and knowledge access'
50 - ]
51 - }])
52 -
53 - <section aria-labelledby="why-development-title">
54 - <div class="container">
55 - <h2 id="why-development-title">When XWiki needs to fit your business</h2>
56 - <p class="section-intro">
57 - XWiki is flexible enough to become much more than a documentation system. With the right structure,
58 - custom applications and integrations, it can support internal processes that would otherwise be handled
59 - through spreadsheets, scattered documents, manual approvals or disconnected tools.
60 - </p>
61 - <div class="pathways">
62 - #foreach ($entry in $developmentReasonItems)
63 - <article class="pathway-card">
64 - <div class="card-heading">
65 - <div class="pathway-icon">
66 - <i class="fa fa-$entry.icon" aria-hidden="true"></i>
67 - </div>
68 - <h3>$entry.title</h3>
69 - </div>
70 - <p>$entry.content</p>
71 - <ul>
72 - #foreach ($item in $entry.items)
73 - <li>$item</li>
74 - #end
75 - </ul>
76 - </article>
77 - #end
78 - </div>
79 - </div>
80 - </section>
81 -
82 - ## COMMON DEVELOPMENT NEEDS
83 - #set ($developmentNeedItems = [{
84 - 'title': 'Custom XWiki applications',
85 - 'icon': 'window-restore',
86 - 'content': 'Business-specific applications using XWiki classes, sheets, templates, UI extensions, scripts and components.'
87 - },{
88 - 'title': 'Workflows and approvals',
89 - 'icon': 'check-square-o',
90 - 'content': 'Review, approval, publishing, document control and status-based processes adapted to your internal rules.'
91 - },{
92 - 'title': 'Dashboards and structured views',
93 - 'icon': 'table',
94 - 'content': 'LiveData views, filters, reports, queues and dashboards that make structured XWiki information easier to use.'
95 - },{
96 - 'title': 'PDF export and document outputs',
97 - 'icon': 'file-pdf-o',
98 - 'content': 'Custom export templates, generated documents, controlled output formats and PDF-related workflow features.'
99 - },{
100 - 'title': 'External and AI integrations',
101 - 'icon': 'plug',
102 - 'content': 'Integration with REST APIs, authentication systems, internal services, automation tools, AI assistants or third-party platforms.'
103 - },{
104 - 'title': 'Macros, components and extensions',
105 - 'icon': 'code',
106 - 'content': 'Custom macros, Java components, Velocity scripts, UI extensions and packaged XWiki extensions.'
107 - }])
108 -
109 - <section class="services" aria-labelledby="development-needs-title">
110 - <div class="container">
111 - <h2 id="development-needs-title">Common development needs</h2>
112 - <p class="section-intro">
113 - Custom XWiki development can range from small improvements to full business applications built on top of
114 - the platform. The focus is to keep the implementation useful, maintainable and aligned with XWiki conventions.
115 - This can also include AI-assisted knowledge access, where selected XWiki content is synchronized with external
116 - AI tools for question answering and discovery.
117 - </p>
118 - <div class="services-grid">
119 - #foreach ($entry in $developmentNeedItems)
120 - <article class="service">
121 - <div class="service-icon" aria-hidden="true">
122 - <i class="fa fa-$entry.icon"></i>
123 - </div>
124 -
125 - <div class="service-body">
126 - <h4>$entry.title</h4>
127 - <p>$entry.content</p>
128 - </div>
129 - </article>
130 - #end
131 - </div>
132 - </div>
133 - </section>
134 -
135 - ## DEVELOPMENT APPROACH
136 - #set ($developmentProcessItems = [{
137 - 'title': 'Understand the business process',
138 - 'content': 'Clarify users, roles, data, statuses, permissions, outputs, notifications and expected decisions.'
139 - },{
140 - 'title': 'Design the XWiki model',
141 - 'content': 'Define the right structure using pages, spaces, XClasses, templates, sheets, rights and views.'
142 - },{
143 - 'title': 'Choose the implementation level',
144 - 'content': 'Decide whether the feature should be built with configuration, scripting, Java components or a packaged extension.'
145 - },{
146 - 'title': 'Build and validate iteratively',
147 - 'content': 'Implement the feature in manageable steps and validate it with real usage scenarios.'
148 - },{
149 - 'title': 'Document and prepare for maintenance',
150 - 'content': 'Leave clear notes about configuration, custom code, assumptions and future improvement areas.'
151 - }])
152 - <section id="development-process" class="split-section" aria-labelledby="process-title">
153 - <div class="container">
154 - <div class="split-grid">
155 - <div class="split-copy">
156 - <h2 id="process-title">A practical development approach</h2>
157 - <p>
158 - XWiki development works best when the solution fits the platform instead of fighting it. The goal is
159 - to build features that are useful for business users while remaining understandable, maintainable and
160 - compatible with future upgrades.
161 - </p>
162 - <p>
163 - Development can start with a small improvement, a prototype or a full application. The important part is
164 - to clarify the business process, model the information correctly and choose the right technical level:
165 - configuration, scripting, extension development, external integration or AI-assisted knowledge access.
166 - </p>
167 - </div>
168 - <ol class="process-list">
169 - #foreach ($entry in $developmentProcessItems)
170 - <li>
171 - <strong>$entry.title</strong>
172 - $entry.content
173 - </li>
174 - #end
175 - </ol>
176 - </div>
177 - </div>
178 - </section>
179 -
180 - ## EXAMPLE SOLUTIONS
181 - #set ($developmentExampleItems = [{
182 - 'title': 'SOP and document control',
183 - 'icon': 'file-text-o',
184 - 'content': 'Controlled documents with review, approval, publishing, revision tracking, PDF export and lifecycle management.'
185 - },{
186 - 'title': 'Internal workflow applications',
187 - 'icon': 'tasks',
188 - 'content': 'Lightweight business applications for requests, approvals, registers, task queues and process tracking.'
189 - },{
190 - 'title': 'Knowledge base structures',
191 - 'icon': 'sitemap',
192 - 'content': 'Templates, metadata, taxonomies, related articles and navigation structures for large knowledge bases.'
193 - },{
194 - 'title': 'AI-assisted knowledge access',
195 - 'icon': 'comments-o',
196 - 'content': 'Integrations that feed selected XWiki content into AI knowledge tools, helping users ask questions and retrieve relevant information while XWiki remains the maintained source of truth.'
197 - }])
198 - <section aria-labelledby="examples-title">
199 - <div class="container">
200 - <h2 id="examples-title">Example solutions</h2>
201 - <p class="section-intro">
202 - The same XWiki foundation can support different internal tools, depending on how your organization manages
203 - knowledge, documents, processes and collaboration.
204 - </p>
205 - <div class="widgets">
206 - #foreach ($entry in $developmentExampleItems)
207 - <article class="widget">
208 - <div class="icon" aria-hidden="true">
209 - <i class="fa fa-$entry.icon"></i>
210 - <h4>$entry.title</h4>
211 - </div>
212 - <p>$entry.content</p>
213 - </article>
214 - #end
215 - </div>
216 - </div>
217 - </section>
218 -
219 - ## RELATED SERVICES
220 - #set ($relatedDevelopmentServiceItems = [{
221 - 'title': 'XWiki Support & Maintenance',
222 - 'url': 'services.xwiki-maintenance-support',
223 - 'content': 'Ongoing technical care for production environments, including troubleshooting, maintenance planning and recovery support.',
224 - 'linkLabel': 'View support services'
225 - },{
226 - 'title': 'XWiki Upgrade Services',
227 - 'url': 'services.xwiki-upgrades',
228 - 'content': 'Safe LTS upgrades with staging validation, compatibility checks, rollback planning and post-upgrade verification.',
229 - 'linkLabel': 'View upgrade services'
230 - }])
231 -
232 - <section class="resource-strip" aria-labelledby="related-title">
233 - <div class="container">
234 - <h2 id="related-title">Related XWiki services</h2>
235 -
236 - <p class="section-intro">
237 - Development work often connects with support, upgrades, authentication and long-term maintainability.
238 - </p>
239 -
240 - <div class="resource-grid">
241 - #foreach ($entry in $relatedDevelopmentServiceItems)
242 - <article class="resource-card">
243 - <h4>$entry.title</h4>
244 - <p>$entry.content</p>
245 - <a href="$xwiki.getURL($entry.url)">$entry.linkLabel</a>
246 - </article>
247 - #end
248 - </div>
249 - </div>
250 - </section>
251 -
252 - ## CTA
253 - <section class="cta-section" aria-labelledby="cta-title">
254 - <div class="container">
255 - <div class="cta-panel">
256 - <h2 id="cta-title">Need to build something in XWiki?</h2>
257 -
258 - <p>
259 - Send a short description of the process, workflow, integration or application you want to create.
260 - A few details about users, data and expected outcomes are enough to start the conversation.
261 - </p>
262 -
263 - <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Discuss a project</a>
264 - </div>
265 - </div>
266 - </section>
267 -
268 -{{/html}}
269 -{{/velocity}}
Agnease.Code.SEODetailsClass[0]
metaDescription
... ... @@ -1,1 +1,0 @@
1 -Custom XWiki development services for applications, workflows, dashboards, macros, automation, APIs, integrations and maintainable platform extensions.
metaTitle
... ... @@ -1,1 +1,0 @@
1 -XWiki Custom Development and Integrations | Agnease