Hide last authors
| author | version | line-number | content |
|---|---|---|---|
| |
1.2 | 1 | {{velocity}} |
| 2 | #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) | ||
| |
1.15 | 3 | |
| |
1.2 | 4 | #set ($contactURL = $xwiki.getURL('contact.WebHome')) |
| |
1.15 | 5 | |
| |
1.3 | 6 | #set ($startingPoints = [{ |
| 7 | 'icon': 'search', | ||
| 8 | 'title': 'Review & diagnose', | ||
| 9 | 'price': 'From €290', | ||
| |
1.15 | 10 | 'description': 'For teams that need to understand risks, issues or the current XWiki state before making changes.', |
| |
1.2 | 11 | 'items': [ |
| |
1.15 | 12 | 'Health checks', |
| 13 | 'Upgrade readiness reviews', | ||
| 14 | 'Authentication reviews', | ||
| 15 | 'Urgent troubleshooting' | ||
| |
1.2 | 16 | ], |
| |
1.3 | 17 | 'cta': 'Start with a review' |
| |
1.2 | 18 | },{ |
| |
1.3 | 19 | 'icon': 'cogs', |
| |
1.15 | 20 | 'title': 'Implement changes', |
| |
1.3 | 21 | 'price': 'From €490', |
| 22 | 'description': 'For teams ready to make a specific XWiki change, upgrade or authentication improvement.', | ||
| |
1.2 | 23 | 'items': [ |
| |
1.15 | 24 | 'XWiki LTS upgrades', |
| 25 | 'MFA installation', | ||
| 26 | 'OIDC / Entra ID setup', | ||
| |
1.3 | 27 | 'LDAP / Active Directory work' |
| |
1.2 | 28 | ], |
| |
1.3 | 29 | 'cta': 'Request implementation quote' |
| |
1.2 | 30 | },{ |
| 31 | 'icon': 'life-ring', | ||
| |
1.3 | 32 | 'title': 'Maintain & support', |
| 33 | 'price': 'From €390/month', | ||
| 34 | 'description': 'For organizations that need regular XWiki help, troubleshooting, maintenance and planning.', | ||
| |
1.2 | 35 | 'items': [ |
| |
1.3 | 36 | 'Monthly support', |
| 37 | 'Troubleshooting', | ||
| 38 | 'Maintenance guidance', | ||
| 39 | 'Upgrade planning' | ||
| |
1.2 | 40 | ], |
| |
1.3 | 41 | 'cta': 'Discuss support plan' |
| |
1.2 | 42 | }]) |
| |
1.15 | 43 | |
| |
1.3 | 44 | #set ($commonPackages = [{ |
| 45 | 'service': 'XWiki Health Check', | ||
| 46 | 'price': '€390', | ||
| 47 | 'description': 'Configuration, version, extension, security and stability review with written recommendations.' | ||
| 48 | },{ | ||
| 49 | 'service': 'Upgrade Readiness Review', | ||
| 50 | 'price': '€390', | ||
| 51 | 'description': 'Upgrade path, compatibility, customization risk and effort estimate before implementation.' | ||
| 52 | },{ | ||
| 53 | 'service': 'XWiki Authentication Review', | ||
| 54 | 'price': '€290', | ||
| 55 | 'description': 'Review of login flow, user provisioning, groups, access control and authentication options.' | ||
| 56 | },{ | ||
| 57 | 'service': 'Urgent XWiki Troubleshooting', | ||
| 58 | 'price': 'From €250', | ||
| |
1.15 | 59 | 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.' |
| |
1.3 | 60 | },{ |
| 61 | 'service': 'Standard XWiki LTS Upgrade', | ||
| |
1.2 | 62 | 'price': 'From €790', |
| |
1.3 | 63 | 'description': 'Upgrade preparation, execution, basic compatibility checks and post-upgrade validation.' |
| |
1.2 | 64 | },{ |
| |
1.3 | 65 | 'service': 'XWiki MFA Installation & Configuration', |
| |
1.2 | 66 | 'price': 'From €490', |
| |
1.15 | 67 | 'description': 'MFA installation for the standard XWiki login flow. In SSO environments, MFA may be better enforced by the identity provider.' |
| |
1.2 | 68 | },{ |
| |
1.3 | 69 | 'service': 'OIDC / Microsoft Entra ID Setup', |
| |
1.2 | 70 | 'price': 'From €590', |
| |
1.3 | 71 | 'description': 'OpenID Connect setup, user mapping considerations, group and access-control review, and validation.' |
| 72 | },{ | ||
| 73 | 'service': 'LDAP / Active Directory Review', | ||
| 74 | 'price': 'From €390', | ||
| 75 | 'description': 'LDAP or Active Directory configuration review, profile mapping and group mapping recommendations.' | ||
| 76 | },{ | ||
| 77 | 'service': 'Access Control Review', | ||
| 78 | 'price': 'From €390', | ||
| 79 | 'description': 'Review of groups, permissions, public/internal/restricted areas and subwiki access model.' | ||
| 80 | },{ | ||
| 81 | 'service': 'Advanced Authentication Work', | ||
| 82 | 'price': 'Quoted after review', | ||
| 83 | 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.' | ||
| |
1.2 | 84 | }]) |
| |
1.15 | 85 | |
| |
1.2 | 86 | #set ($supportPlans = [{ |
| 87 | 'icon': 'leaf', | ||
| 88 | 'title': 'Essential Support', | ||
| 89 | 'price': '€390/month', | ||
| 90 | 'description': 'For small teams that need occasional XWiki help.', | ||
| 91 | 'items': [ | ||
| 92 | 'Up to 4 hours/month', | ||
| 93 | 'Email support', | ||
| 94 | 'Small configuration fixes', | ||
| 95 | 'Upgrade and security guidance' | ||
| 96 | ], | ||
| 97 | 'cta': 'Request support plan' | ||
| 98 | },{ | ||
| 99 | 'icon': 'check-circle', | ||
| 100 | 'title': 'Standard Support', | ||
| 101 | 'price': '€790/month', | ||
| 102 | 'description': 'For active XWiki environments that need regular support and maintenance.', | ||
| 103 | 'items': [ | ||
| 104 | 'Up to 8 hours/month', | ||
| 105 | 'Prioritized support', | ||
| 106 | 'Troubleshooting', | ||
| 107 | 'Minor improvements', | ||
| 108 | 'Maintenance guidance' | ||
| 109 | ], | ||
| 110 | 'cta': 'Request standard support' | ||
| 111 | },{ | ||
| 112 | 'icon': 'building', | ||
| 113 | 'title': 'Extended Support', | ||
| 114 | 'price': 'From €1,490/month', | ||
| 115 | 'description': 'For business-critical XWiki platforms or organizations with ongoing XWiki work.', | ||
| 116 | 'items': [ | ||
| 117 | 'Larger monthly allocation', | ||
| 118 | 'Prioritized handling', | ||
| 119 | 'Upgrade planning', | ||
| 120 | 'Authentication and extension support', | ||
| 121 | 'Roadmap and stability guidance' | ||
| 122 | ], | ||
| 123 | 'cta': 'Discuss extended support' | ||
| 124 | }]) | ||
| |
1.15 | 125 | |
| 126 | #set ($complexProjects = [{ | ||
| 127 | 'icon': 'sitemap', | ||
| 128 | 'title': 'Wiki farms', | ||
| 129 | 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.' | ||
| 130 | },{ | ||
| 131 | 'icon': 'exchange', | ||
| 132 | 'title': 'Migrations', | ||
| 133 | 'content': 'Content, platform or documentation migrations into a cleaner XWiki structure.' | ||
| 134 | },{ | ||
| 135 | 'icon': 'puzzle-piece', | ||
| 136 | 'title': 'Custom applications', | ||
| 137 | 'content': 'Workflow applications, structured data, dashboards and internal business tools.' | ||
| 138 | },{ | ||
| 139 | 'icon': 'tachometer', | ||
| 140 | 'title': 'Stability work', | ||
| 141 | 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.' | ||
| 142 | }]) | ||
| 143 | |||
| |
1.2 | 144 | #set ($faqItems = [{ |
| 145 | 'question': 'Are these fixed prices?', | ||
| 146 | 'answer': 'Some services have fixed starting prices. Larger or more complex projects are reviewed first and quoted separately, so the scope, risks and required testing are clear before implementation starts.' | ||
| 147 | },{ | ||
| 148 | 'question': 'Do you charge hourly?', | ||
| 149 | 'answer': 'For support plans, time allocation is used to manage monthly work. For projects, Agnease aims to provide clear service packages or fixed quotes whenever the scope can be defined.' | ||
| 150 | },{ | ||
| 151 | 'question': 'Can you work on existing XWiki installations?', | ||
| 152 | 'answer': 'Yes. Agnease works with existing XWiki instances, including upgrades, troubleshooting, authentication, customizations, extensions and long-term maintenance.' | ||
| 153 | },{ | ||
| 154 | 'question': 'What happens if my XWiki instance is more complex?', | ||
| 155 | 'answer': 'Agnease first reviews the current setup, identifies risks and dependencies, and then provides a quote based on the actual scope.' | ||
| 156 | },{ | ||
| 157 | 'question': 'Can I book a call directly?', | ||
| 158 | 'answer': 'Yes. The contact form includes a call booking option, but sending a short description first helps Agnease understand the context before the discussion.' | ||
| 159 | },{ | ||
| 160 | 'question': 'Do prices include external costs?', | ||
| 161 | 'answer': 'The prices on this page cover Agnease services. External hosting, infrastructure or third-party costs are discussed separately when relevant.' | ||
| 162 | }]) | ||
| |
1.15 | 163 | |
| |
1.2 | 164 | {{html clean="false"}} |
| 165 | |||
| |
1.15 | 166 | <section class="hero hero-centered" aria-labelledby="pricing-title"> |
| |
1.2 | 167 | <div class="container"> |
| |
1.15 | 168 | <div class="hero-inner"> |
| |
1.2 | 169 | <div class="hero-kicker"> |
| 170 | <i class="fa fa-eur" aria-hidden="true"></i> | ||
| 171 | XWiki consulting, support and implementation | ||
| 172 | </div> | ||
| 173 | |||
| |
1.15 | 174 | <h1 id="pricing-title">XWiki Service Packages</h1> |
| |
1.2 | 175 | |
| |
1.15 | 176 | <p class="lead"> |
| 177 | Clear starting points for XWiki upgrades, authentication, troubleshooting and long-term support. | ||
| 178 | </p> | ||
| |
1.2 | 179 | |
| |
1.15 | 180 | <ul class="benefits"> |
| 181 | <li>Specialized XWiki consulting</li> | ||
| 182 | <li>Practical starting prices</li> | ||
| 183 | <li>Fixed quotes for complex work</li> | ||
| 184 | </ul> | ||
| 185 | |||
| 186 | <div id="hero-cta"> | ||
| 187 | <a class="btn btn-primary" href="$contactURL">Request a quote</a> | ||
| 188 | </div> | ||
| |
1.2 | 189 | </div> |
| 190 | </div> | ||
| 191 | </section> | ||
| 192 | |||
| |
1.15 | 193 | <section id="starting-points" aria-labelledby="starting-points-title"> |
| |
1.2 | 194 | <div class="container"> |
| |
1.15 | 195 | <h2 id="starting-points-title">Choose your starting point</h2> |
| 196 | <p class="section-intro"> | ||
| 197 | Most XWiki requests fit into one of three paths: review the current setup, implement a defined change, | ||
| 198 | or set up ongoing support. | ||
| 199 | </p> | ||
| |
1.2 | 200 | |
| |
1.15 | 201 | <div class="pathways"> |
| 202 | #foreach ($entry in $startingPoints) | ||
| 203 | <article class="pathway-card"> | ||
| 204 | <div class="card-heading"> | ||
| 205 | <div class="pathway-icon" aria-hidden="true"> | ||
| 206 | <i class="fa fa-$entry.icon"></i> | ||
| 207 | </div> | ||
| 208 | <h3>$entry.title</h3> | ||
| 209 | </div> | ||
| |
1.2 | 210 | |
| |
1.15 | 211 | <p><strong>$entry.price</strong></p> |
| 212 | <p>$entry.description</p> | ||
| |
1.2 | 213 | |
| |
1.15 | 214 | <ul> |
| 215 | #foreach ($item in $entry.items) | ||
| 216 | <li>$item</li> | ||
| 217 | #end | ||
| 218 | </ul> | ||
| |
1.13 | 219 | |
| |
1.15 | 220 | <div class="card-link"> |
| 221 | <a href="$contactURL">$entry.cta</a> | ||
| 222 | </div> | ||
| 223 | </article> | ||
| 224 | #end | ||
| 225 | </div> | ||
| 226 | </div> | ||
| 227 | </section> | ||
| |
1.12 | 228 | |
| |
1.15 | 229 | <section aria-labelledby="pricing-note-title"> |
| 230 | <div class="container"> | ||
| 231 | <div class="industry-trust-panel"> | ||
| 232 | <h2 id="pricing-note-title">Simple starting prices, reviewed scope when needed</h2> | ||
| 233 | <p class="section-intro"> | ||
| 234 | Prices are starting points and exclude VAT where applicable. Final pricing depends on the XWiki version, | ||
| 235 | installed extensions, customizations, hosting setup, authentication configuration, wiki farm complexity | ||
| 236 | and required testing. | ||
| 237 | </p> | ||
| 238 | </div> | ||
| 239 | </div> | ||
| 240 | </section> | ||
| |
1.12 | 241 | |
| |
1.15 | 242 | <section id="common-packages" aria-labelledby="common-packages-title"> |
| 243 | <div class="container"> | ||
| 244 | <h2 id="common-packages-title">Common starting packages</h2> | ||
| 245 | <p class="section-intro"> | ||
| 246 | These are practical entry points for common XWiki needs. Some can start directly, while others require | ||
| 247 | a quick review before confirming the final scope. | ||
| 248 | </p> | ||
| |
1.12 | 249 | |
| |
1.15 | 250 | <table class="table table-bordered table-striped"> |
| 251 | <thead> | ||
| 252 | <tr> | ||
| 253 | <th>Service</th> | ||
| 254 | <th>Starting price</th> | ||
| 255 | <th>What it covers</th> | ||
| 256 | </tr> | ||
| 257 | </thead> | ||
| 258 | <tbody> | ||
| 259 | #foreach ($entry in $commonPackages) | ||
| 260 | <tr> | ||
| 261 | <td><strong>$entry.service</strong></td> | ||
| 262 | <td>$entry.price</td> | ||
| 263 | <td>$entry.description</td> | ||
| 264 | </tr> | ||
| 265 | #end | ||
| 266 | </tbody> | ||
| 267 | </table> | ||
| 268 | </div> | ||
| 269 | </section> | ||
| |
1.12 | 270 | |
| |
1.15 | 271 | <section id="upgrade-offer" aria-labelledby="upgrade-offer-title" class="industry-trust-section"> |
| 272 | <div class="container"> | ||
| 273 | <div class="industry-trust-panel"> | ||
| 274 | <h2 id="upgrade-offer-title">New customer upgrade offer</h2> | ||
| 275 | <p class="section-intro"> | ||
| 276 | If the Upgrade Readiness Review leads to an upgrade project with Agnease, the review cost can be credited | ||
| 277 | toward the upgrade implementation. | ||
| 278 | </p> | ||
| 279 | <a class="btn btn-primary" href="$contactURL">Plan an upgrade</a> | ||
| 280 | </div> | ||
| 281 | </div> | ||
| 282 | </section> | ||
| |
1.2 | 283 | |
| |
1.15 | 284 | <section id="support" aria-labelledby="support-title"> |
| 285 | <div class="container"> | ||
| 286 | <h2 id="support-title">Monthly support plans</h2> | ||
| 287 | <p class="section-intro"> | ||
| 288 | Support plans are designed for organizations that already use XWiki and want regular help with troubleshooting, | ||
| 289 | maintenance, upgrades, configuration, authentication and small improvements. | ||
| 290 | </p> | ||
| |
1.2 | 291 | |
| |
1.15 | 292 | <div class="pathways"> |
| 293 | #foreach ($entry in $supportPlans) | ||
| 294 | <article class="pathway-card"> | ||
| 295 | <div class="card-heading"> | ||
| 296 | <div class="pathway-icon" aria-hidden="true"> | ||
| 297 | <i class="fa fa-$entry.icon"></i> | ||
| 298 | </div> | ||
| 299 | <h3>$entry.title</h3> | ||
| 300 | </div> | ||
| |
1.2 | 301 | |
| |
1.15 | 302 | <p><strong>$entry.price</strong></p> |
| 303 | <p>$entry.description</p> | ||
| 304 | |||
| 305 | <ul> | ||
| 306 | #foreach ($item in $entry.items) | ||
| 307 | <li>$item</li> | ||
| |
1.3 | 308 | #end |
| |
1.15 | 309 | </ul> |
| |
1.3 | 310 | |
| |
1.15 | 311 | <div class="card-link"> |
| 312 | <a href="$contactURL">$entry.cta</a> | ||
| 313 | </div> | ||
| 314 | </article> | ||
| 315 | #end | ||
| 316 | </div> | ||
| |
1.2 | 317 | |
| |
1.15 | 318 | <p class="section-intro"> |
| 319 | Larger features, migrations, major customizations and complex projects are quoted separately. | ||
| 320 | </p> | ||
| 321 | </div> | ||
| 322 | </section> | ||
| |
1.2 | 323 | |
| |
1.15 | 324 | <section id="complex-projects" aria-labelledby="complex-projects-title"> |
| 325 | <div class="container"> | ||
| 326 | <h2 id="complex-projects-title">Need something more complex?</h2> | ||
| 327 | <p class="section-intro"> | ||
| 328 | Some XWiki projects cannot be priced responsibly before the environment is reviewed. For wiki farms, | ||
| 329 | major upgrades, migrations, custom applications, authentication changes or infrastructure restructuring, | ||
| 330 | Agnease first reviews the current setup and then provides a fixed project quote. | ||
| 331 | </p> | ||
| |
1.2 | 332 | |
| |
1.15 | 333 | <div class="widgets"> |
| 334 | #foreach ($entry in $complexProjects) | ||
| 335 | <div class="widget"> | ||
| 336 | <div class="icon"> | ||
| 337 | <i class="fa fa-$entry.icon" aria-hidden="true"></i> | ||
| 338 | <h4>$entry.title</h4> | ||
| 339 | </div> | ||
| 340 | <p>$entry.content</p> | ||
| |
1.2 | 341 | </div> |
| |
1.15 | 342 | #end |
| 343 | </div> | ||
| |
1.2 | 344 | |
| |
1.15 | 345 | <div id="hero-cta"> |
| 346 | <a class="btn btn-primary" href="$contactURL">Request a project quote</a> | ||
| 347 | </div> | ||
| 348 | </div> | ||
| 349 | </section> | ||
| |
1.2 | 350 | |
| |
1.15 | 351 | <section id="faq" aria-labelledby="faq-title"> |
| 352 | <div class="container"> | ||
| 353 | <h2 id="faq-title">FAQ</h2> | ||
| |
1.2 | 354 | |
| |
1.15 | 355 | #foreach ($entry in $faqItems) |
| 356 | <details class="resource-faq-item" #if ($foreach.first)open#end> | ||
| 357 | <summary>$entry.question</summary> | ||
| 358 | <p>$entry.answer</p> | ||
| 359 | </details> | ||
| 360 | #end | ||
| |
1.2 | 361 | </div> |
| 362 | </section> | ||
| 363 | |||
| 364 | <section class="cta-section" aria-labelledby="pricing-final-cta-title"> | ||
| 365 | <div class="container"> | ||
| 366 | <div class="cta-panel"> | ||
| 367 | <h2 id="pricing-final-cta-title">Not sure which option fits your XWiki instance?</h2> | ||
| 368 | <p> | ||
| 369 | Send a short description of your XWiki environment and what you are trying to achieve. | ||
| 370 | Agnease will help identify the right starting point. | ||
| 371 | </p> | ||
| 372 | <a class="btn btn-primary" href="$contactURL">Contact Agnease</a> | ||
| 373 | </div> | ||
| 374 | </div> | ||
| 375 | </section> | ||
| 376 | |||
| 377 | <script type="application/ld+json"> | ||
| 378 | { | ||
| 379 | "@context": "https://schema.org", | ||
| 380 | "@type": "Service", | ||
| 381 | "name": "XWiki Service Packages", | ||
| 382 | "provider": { | ||
| 383 | "@type": "Organization", | ||
| 384 | "name": "Agnease", | ||
| 385 | "url": "https://agnease.com/" | ||
| 386 | }, | ||
| 387 | "serviceType": "XWiki consulting, support, upgrades, authentication and maintenance", | ||
| 388 | "areaServed": "International", | ||
| 389 | "description": "XWiki service packages for upgrades, support, authentication, troubleshooting, maintenance and implementation." | ||
| 390 | } | ||
| 391 | </script> | ||
| 392 | |||
| 393 | {{/html}} | ||
| 394 | {{/velocity}} |