| ... |
... |
@@ -1,6 +1,13 @@ |
| 1 |
1 |
{{velocity}} |
| 2 |
2 |
#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) |
| 3 |
3 |
#set ($contactURL = $xwiki.getURL('contact.WebHome')) |
|
4 |
+#set ($upgradeURL = $xwiki.getURL('services.xwiki-upgrades')) |
|
5 |
+#set ($maintenanceURL = $xwiki.getURL('services.xwiki-maintenance-support')) |
|
6 |
+#set ($authURL = $xwiki.getURL('services.xwiki-authentication-access-control')) |
|
7 |
+#set ($mfaURL = $xwiki.getURL('products.xwiki-two-factor-authentication')) |
|
8 |
+#set ($securityURL = $xwiki.getURL('services.xwiki-security-review')) |
|
9 |
+#set ($migrationURL = $xwiki.getURL('services.xwiki-migrations')) |
|
10 |
+#set ($developmentURL = $xwiki.getURL('services.xwiki-development-integrations')) |
| 4 |
4 |
#set ($startingPoints = [{ |
| 5 |
5 |
'icon': 'search', |
| 6 |
6 |
'title': 'Review & diagnose', |
| ... |
... |
@@ -41,62 +41,75 @@ |
| 41 |
41 |
#set ($commonPackages = [{ |
| 42 |
42 |
'service': 'XWiki Health Check', |
| 43 |
43 |
'price': '€390', |
| 44 |
|
- 'description': 'Configuration, version, extension, security and stability review with written recommendations.' |
|
51 |
+ 'description': 'Configuration, version, extension, security and stability review with written recommendations.', |
|
52 |
+ 'url': $securityURL |
| 45 |
45 |
},{ |
| 46 |
46 |
'service': 'Upgrade Readiness Review', |
| 47 |
47 |
'price': '€390', |
| 48 |
|
- 'description': 'Upgrade path, compatibility risks, customizations and effort estimate before implementation.' |
|
56 |
+ 'description': 'Upgrade path, compatibility risks, customizations and effort estimate before implementation.', |
|
57 |
+ 'url': $upgradeURL |
| 49 |
49 |
},{ |
| 50 |
50 |
'service': 'XWiki Authentication Review', |
| 51 |
51 |
'price': '€290', |
| 52 |
|
- 'description': 'Review of login flow, users, groups, access control and authentication options.' |
|
61 |
+ 'description': 'Review of login flow, users, groups, access control and authentication options.', |
|
62 |
+ 'url': $authURL |
| 53 |
53 |
},{ |
| 54 |
54 |
'service': 'Urgent XWiki Troubleshooting', |
| 55 |
55 |
'price': 'From €250/session', |
| 56 |
|
- 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.' |
|
66 |
+ 'description': 'Live troubleshooting for blocking issues, errors, failed upgrades or production problems.', |
|
67 |
+ 'url': $maintenanceURL |
| 57 |
57 |
},{ |
| 58 |
58 |
'service': 'Standard XWiki LTS Upgrade', |
| 59 |
59 |
'price': 'From €790', |
| 60 |
|
- 'description': 'Upgrade preparation, execution, compatibility checks and post-upgrade validation.' |
|
71 |
+ 'description': 'Upgrade preparation, execution, compatibility checks and post-upgrade validation.', |
|
72 |
+ 'url': $upgradeURL |
| 61 |
61 |
},{ |
| 62 |
62 |
'service': 'XWiki MFA Installation & Configuration', |
| 63 |
63 |
'price': 'From €490', |
| 64 |
|
- 'description': 'MFA setup for the standard XWiki login flow, with configuration, testing and guidance.' |
|
76 |
+ 'description': 'MFA setup for the standard XWiki login flow, with configuration, testing and guidance.', |
|
77 |
+ 'url': $mfaURL |
| 65 |
65 |
},{ |
| 66 |
66 |
'service': 'OIDC / Microsoft Entra ID Setup', |
| 67 |
67 |
'price': 'From €590', |
| 68 |
|
- 'description': 'OpenID Connect setup, user mapping considerations, access review and validation.' |
|
81 |
+ 'description': 'OpenID Connect setup, user mapping considerations, access review and validation.', |
|
82 |
+ 'url': $authURL |
| 69 |
69 |
},{ |
| 70 |
70 |
'service': 'LDAP / Active Directory Review', |
| 71 |
71 |
'price': 'From €390', |
| 72 |
|
- 'description': 'LDAP or Active Directory configuration review, profile mapping and group mapping recommendations.' |
|
86 |
+ 'description': 'LDAP or Active Directory configuration review, profile mapping and group mapping recommendations.', |
|
87 |
+ 'url': $authURL |
| 73 |
73 |
},{ |
| 74 |
74 |
'service': 'Access Control Review', |
| 75 |
75 |
'price': 'From €390', |
| 76 |
|
- 'description': 'Review of groups, permissions, restricted areas, public access and subwiki access model.' |
|
91 |
+ 'description': 'Review of groups, permissions, restricted areas, public access and subwiki access model.', |
|
92 |
+ 'url': $authURL |
| 77 |
77 |
},{ |
| 78 |
78 |
'service': 'Advanced Authentication Work', |
| 79 |
79 |
'price': 'Quoted', |
| 80 |
|
- 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.' |
|
96 |
+ 'description': 'Custom authenticators, container authentication, special login flows or wiki farm authentication strategy.', |
|
97 |
+ 'url': $authURL |
| 81 |
81 |
},{ |
| 82 |
82 |
'service': 'AWS Hosting Setup for XWiki', |
| 83 |
83 |
'price': 'From €490', |
| 84 |
|
- 'description': 'Initial AWS deployment setup, including server preparation, HTTPS and basic backup strategy.' |
|
101 |
+ 'description': 'Initial AWS deployment setup, including server preparation, HTTPS and basic backup strategy.', |
|
102 |
+ 'url': $maintenanceURL |
| 85 |
85 |
},{ |
| 86 |
86 |
'service': 'XWiki AWS Cloud Hosting', |
| 87 |
|
- 'price': 'From €120/mo', |
| 88 |
|
- 'description': 'Single-instance AWS hosting for small XWiki environments with storage, basic backups and modest traffic.' |
|
105 |
+ 'price': 'From €49/month', |
|
106 |
+ 'description': 'Minimal single-instance AWS hosting for small XWiki environments, using EC2, Nginx, Docker, XWiki, database container, Let’s Encrypt SSL, instance storage and basic snapshots.', |
|
107 |
+ 'url': $maintenanceURL |
| 89 |
89 |
}]) |
| 90 |
90 |
#set ($supportPlans = [{ |
| 91 |
91 |
'icon': 'leaf', |
| 92 |
92 |
'title': 'Essential Support', |
| 93 |
93 |
'price': '€390/month', |
| 94 |
|
- 'description': 'For small teams that need occasional XWiki help.', |
|
113 |
+ 'description': 'For small teams that need occasional XWiki help at a predictable monthly cost.', |
| 95 |
95 |
'items': [ |
| 96 |
|
- 'Up to 4 hours/month', |
|
115 |
+ 'Up to 1 support day/month', |
| 97 |
97 |
'Email support', |
|
117 |
+ 'Troubleshooting and guidance', |
| 98 |
98 |
'Small configuration fixes', |
| 99 |
|
- 'Upgrade and security guidance' |
|
119 |
+ 'Upgrade and security recommendations' |
| 100 |
100 |
], |
| 101 |
101 |
'cta': 'Request support plan' |
| 102 |
102 |
},{ |
| ... |
... |
@@ -103,13 +103,14 @@ |
| 103 |
103 |
'icon': 'check-circle', |
| 104 |
104 |
'title': 'Standard Support', |
| 105 |
105 |
'price': '€790/month', |
| 106 |
|
- 'description': 'For active XWiki environments that need regular support and maintenance.', |
|
126 |
+ 'description': 'For active XWiki environments that need regular support, maintenance and small improvements.', |
| 107 |
107 |
'items': [ |
| 108 |
|
- 'Up to 8 hours/month', |
|
128 |
+ 'Up to 2 support days/month', |
| 109 |
109 |
'Prioritized support', |
| 110 |
110 |
'Troubleshooting', |
| 111 |
111 |
'Minor improvements', |
| 112 |
|
- 'Maintenance guidance' |
|
132 |
+ 'Maintenance guidance', |
|
133 |
+ 'Upgrade planning' |
| 113 |
113 |
], |
| 114 |
114 |
'cta': 'Request standard support' |
| 115 |
115 |
},{ |
| ... |
... |
@@ -118,7 +118,7 @@ |
| 118 |
118 |
'price': 'From €1,490/month', |
| 119 |
119 |
'description': 'For business-critical XWiki platforms or organizations with ongoing XWiki work.', |
| 120 |
120 |
'items': [ |
| 121 |
|
- 'Larger monthly allocation', |
|
142 |
+ 'Larger monthly support allocation', |
| 122 |
122 |
'Prioritized handling', |
| 123 |
123 |
'Upgrade planning', |
| 124 |
124 |
'Authentication and extension support', |
| ... |
... |
@@ -129,19 +129,23 @@ |
| 129 |
129 |
#set ($complexProjects = [{ |
| 130 |
130 |
'icon': 'sitemap', |
| 131 |
131 |
'title': 'Wiki farms', |
| 132 |
|
- 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.' |
|
153 |
+ 'content': 'Restructuring, subwiki access models, internal and external collaboration areas.', |
|
154 |
+ 'url': $authURL |
| 133 |
133 |
},{ |
| 134 |
134 |
'icon': 'exchange', |
| 135 |
135 |
'title': 'Migrations', |
| 136 |
|
- 'content': 'Content, platform or documentation migrations into a cleaner XWiki structure.' |
|
158 |
+ 'content': 'Content, platform or documentation migrations into a cleaner XWiki structure.', |
|
159 |
+ 'url': $migrationURL |
| 137 |
137 |
},{ |
| 138 |
138 |
'icon': 'puzzle-piece', |
| 139 |
139 |
'title': 'Custom applications', |
| 140 |
|
- 'content': 'Workflow applications, structured data, dashboards and internal business tools.' |
|
163 |
+ 'content': 'Workflow applications, structured data, dashboards and internal business tools.', |
|
164 |
+ 'url': $developmentURL |
| 141 |
141 |
},{ |
| 142 |
142 |
'icon': 'tachometer', |
| 143 |
143 |
'title': 'Stability work', |
| 144 |
|
- 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.' |
|
168 |
+ 'content': 'Performance, troubleshooting, upgrade cleanup and long-term maintainability improvements.', |
|
169 |
+ 'url': $maintenanceURL |
| 145 |
145 |
}]) |
| 146 |
146 |
#set ($faqItems = [{ |
| 147 |
147 |
'question': 'Are these fixed prices?', |
| ... |
... |
@@ -175,7 +175,8 @@ |
| 175 |
175 |
<h1 id="pricing-title">XWiki Service Packages</h1> |
| 176 |
176 |
|
| 177 |
177 |
<p class="lead"> |
| 178 |
|
- Clear starting points for XWiki upgrades, authentication, troubleshooting and long-term support. |
|
203 |
+ Clear starting points for independent XWiki consulting, upgrades, authentication configuration, |
|
204 |
+ AWS hosting setup, troubleshooting and long-term maintenance. |
| 179 |
179 |
</p> |
| 180 |
180 |
|
| 181 |
181 |
<ul class="benefits"> |
| ... |
... |
@@ -184,7 +184,7 @@ |
| 184 |
184 |
<li>Fixed quotes for complex work</li> |
| 185 |
185 |
</ul> |
| 186 |
186 |
|
| 187 |
|
- <div id="hero-cta"> |
|
213 |
+ <div class="hero-actions"> |
| 188 |
188 |
<a class="btn btn-primary" href="$contactURL">Request a quote</a> |
| 189 |
189 |
<a class="btn btn-secondary" href="#support">View monthly support</a> |
| 190 |
190 |
</div> |
| ... |
... |
@@ -196,8 +196,9 @@ |
| 196 |
196 |
<div class="container"> |
| 197 |
197 |
<h2 id="starting-points-title">Three common ways to start</h2> |
| 198 |
198 |
<p class="section-intro"> |
| 199 |
|
- Most XWiki requests fit into one of three paths: review the current setup, implement a defined change, |
| 200 |
|
- or set up ongoing support. |
|
225 |
+ Agnease provides independent XWiki consulting, upgrade support, authentication configuration, |
|
226 |
+ AWS hosting setup, troubleshooting and long-term maintenance for existing XWiki installations. |
|
227 |
+ Most requests begin by reviewing the current setup, implementing a defined change, or setting up regular support. |
| 201 |
201 |
</p> |
| 202 |
202 |
|
| 203 |
203 |
<div class="pathways"> |
| ... |
... |
@@ -228,7 +228,7 @@ |
| 228 |
228 |
</div> |
| 229 |
229 |
</section> |
| 230 |
230 |
|
| 231 |
|
-<section aria-labelledby="pricing-note-title"> |
|
258 |
+<section class="industry-trust-section" aria-labelledby="pricing-note-title"> |
| 232 |
232 |
<div class="container"> |
| 233 |
233 |
<div class="industry-trust-panel"> |
| 234 |
234 |
<h2 id="pricing-note-title">Simple starting prices, reviewed scope when needed</h2> |
| ... |
... |
@@ -249,24 +249,36 @@ |
| 249 |
249 |
a quick review before confirming the final scope. |
| 250 |
250 |
</p> |
| 251 |
251 |
|
| 252 |
|
- <table class="table table-bordered table-striped"> |
| 253 |
|
- <thead> |
| 254 |
|
- <tr> |
| 255 |
|
- <th>Service</th> |
| 256 |
|
- <th>Starting price</th> |
| 257 |
|
- <th>What it covers</th> |
| 258 |
|
- </tr> |
| 259 |
|
- </thead> |
| 260 |
|
- <tbody> |
| 261 |
|
- #foreach ($entry in $commonPackages) |
|
279 |
+ <div class="table-responsive"> |
|
280 |
+ <table class="table table-bordered table-striped"> |
|
281 |
+ <thead> |
| 262 |
262 |
<tr> |
| 263 |
|
- <td><strong>$entry.service</strong></td> |
| 264 |
|
- <td>$entry.price</td> |
| 265 |
|
- <td>$entry.description</td> |
|
283 |
+ <th>Service</th> |
|
284 |
+ <th>Starting price</th> |
|
285 |
+ <th>What it covers</th> |
| 266 |
266 |
</tr> |
| 267 |
|
- #end |
| 268 |
|
- </tbody> |
| 269 |
|
- </table> |
|
287 |
+ </thead> |
|
288 |
+ <tbody> |
|
289 |
+ #foreach ($entry in $commonPackages) |
|
290 |
+ <tr> |
|
291 |
+ <td> |
|
292 |
+ #if ("$!entry.url" != '') |
|
293 |
+ <strong><a href="$entry.url">$entry.service</a></strong> |
|
294 |
+ #else |
|
295 |
+ <strong>$entry.service</strong> |
|
296 |
+ #end |
|
297 |
+ </td> |
|
298 |
+ <td>$entry.price</td> |
|
299 |
+ <td>$entry.description</td> |
|
300 |
+ </tr> |
|
301 |
+ #end |
|
302 |
+ </tbody> |
|
303 |
+ </table> |
|
304 |
+ </div> |
|
305 |
+ |
|
306 |
+ <p class="section-intro"> |
|
307 |
+ AWS hosting prices are starting points for small single-instance XWiki environments. The minimal setup uses one EC2 instance with Nginx, Docker, XWiki, database, Let’s Encrypt SSL, EBS storage and basic snapshots. Larger storage, higher traffic, high availability, managed databases, advanced monitoring or stricter backup requirements are quoted separately. |
|
308 |
+ </p> |
| 270 |
270 |
</div> |
| 271 |
271 |
</section> |
| 272 |
272 |
|
| ... |
... |
@@ -318,7 +318,9 @@ |
| 318 |
318 |
</div> |
| 319 |
319 |
|
| 320 |
320 |
<p class="section-intro"> |
| 321 |
|
- Larger features, migrations, major customizations and complex projects are quoted separately. |
|
360 |
+ Support plans are intended for remote XWiki support, troubleshooting, maintenance guidance, |
|
361 |
+ small configuration changes and minor improvements. Larger features, migrations, major customizations |
|
362 |
+ and complex projects are quoted separately. |
| 322 |
322 |
</p> |
| 323 |
323 |
</div> |
| 324 |
324 |
</section> |
| ... |
... |
@@ -337,7 +337,13 @@ |
| 337 |
337 |
<div class="widget"> |
| 338 |
338 |
<div class="icon"> |
| 339 |
339 |
<i class="fa fa-$entry.icon" aria-hidden="true"></i> |
| 340 |
|
- <h4>$entry.title</h4> |
|
381 |
+ <h4> |
|
382 |
+ #if ("$!entry.url" != '') |
|
383 |
+ <a href="$entry.url">$entry.title</a> |
|
384 |
+ #else |
|
385 |
+ $entry.title |
|
386 |
+ #end |
|
387 |
+ </h4> |
| 341 |
341 |
</div> |
| 342 |
342 |
<p>$entry.content</p> |
| 343 |
343 |
</div> |
| ... |
... |
@@ -344,7 +344,7 @@ |
| 344 |
344 |
#end |
| 345 |
345 |
</div> |
| 346 |
346 |
|
| 347 |
|
- <div id="hero-cta"> |
|
394 |
+ <div class="hero-actions"> |
| 348 |
348 |
<a class="btn btn-primary" href="$contactURL">Request a project quote</a> |
| 349 |
349 |
</div> |
| 350 |
350 |
</div> |
| ... |
... |
@@ -388,9 +388,117 @@ |
| 388 |
388 |
}, |
| 389 |
389 |
"serviceType": "XWiki consulting, support, upgrades, authentication and maintenance", |
| 390 |
390 |
"areaServed": "International", |
| 391 |
|
- "description": "XWiki service packages for upgrades, support, authentication, troubleshooting, maintenance and implementation." |
|
438 |
+ "description": "Independent XWiki consulting, support, upgrades, authentication configuration, AWS hosting setup, troubleshooting and long-term maintenance for existing XWiki installations.", |
|
439 |
+ "hasOfferCatalog": { |
|
440 |
+ "@type": "OfferCatalog", |
|
441 |
+ "name": "Agnease XWiki service packages", |
|
442 |
+ "itemListElement": [{ |
|
443 |
+ "@type": "Offer", |
|
444 |
+ "name": "XWiki Health Check", |
|
445 |
+ "price": "390", |
|
446 |
+ "priceCurrency": "EUR", |
|
447 |
+ "description": "Configuration, version, extension, security and stability review with written recommendations." |
|
448 |
+ },{ |
|
449 |
+ "@type": "Offer", |
|
450 |
+ "name": "Upgrade Readiness Review", |
|
451 |
+ "price": "390", |
|
452 |
+ "priceCurrency": "EUR", |
|
453 |
+ "description": "Upgrade path, compatibility risks, customizations and effort estimate before implementation." |
|
454 |
+ },{ |
|
455 |
+ "@type": "Offer", |
|
456 |
+ "name": "XWiki Authentication Review", |
|
457 |
+ "price": "290", |
|
458 |
+ "priceCurrency": "EUR", |
|
459 |
+ "description": "Review of login flow, users, groups, access control and authentication options." |
|
460 |
+ },{ |
|
461 |
+ "@type": "Offer", |
|
462 |
+ "name": "Urgent XWiki Troubleshooting", |
|
463 |
+ "price": "250", |
|
464 |
+ "priceCurrency": "EUR", |
|
465 |
+ "description": "Starting price per session for live XWiki troubleshooting." |
|
466 |
+ },{ |
|
467 |
+ "@type": "Offer", |
|
468 |
+ "name": "Standard XWiki LTS Upgrade", |
|
469 |
+ "price": "790", |
|
470 |
+ "priceCurrency": "EUR", |
|
471 |
+ "description": "Starting price for XWiki LTS upgrade preparation, execution and validation." |
|
472 |
+ },{ |
|
473 |
+ "@type": "Offer", |
|
474 |
+ "name": "XWiki MFA Installation & Configuration", |
|
475 |
+ "price": "490", |
|
476 |
+ "priceCurrency": "EUR", |
|
477 |
+ "description": "Starting price for MFA setup for the standard XWiki login flow." |
|
478 |
+ },{ |
|
479 |
+ "@type": "Offer", |
|
480 |
+ "name": "OIDC / Microsoft Entra ID Setup", |
|
481 |
+ "price": "590", |
|
482 |
+ "priceCurrency": "EUR", |
|
483 |
+ "description": "Starting price for OpenID Connect setup and validation for XWiki." |
|
484 |
+ },{ |
|
485 |
+ "@type": "Offer", |
|
486 |
+ "name": "AWS Hosting Setup for XWiki", |
|
487 |
+ "price": "490", |
|
488 |
+ "priceCurrency": "EUR", |
|
489 |
+ "description": "Starting price for initial AWS deployment setup for XWiki." |
|
490 |
+ },{ |
|
491 |
+ "@type": "Offer", |
|
492 |
+ "name": "XWiki AWS Cloud Hosting", |
|
493 |
+ "price": "49", |
|
494 |
+ "priceCurrency": "EUR", |
|
495 |
+ "description": "Starting monthly price for small single-instance AWS hosting for XWiki." |
|
496 |
+ }] |
|
497 |
+ } |
| 392 |
392 |
} |
| 393 |
393 |
</script> |
| 394 |
394 |
|
|
501 |
+<script type="application/ld+json"> |
|
502 |
+{ |
|
503 |
+ "@context": "https://schema.org", |
|
504 |
+ "@type": "FAQPage", |
|
505 |
+ "mainEntity": [{ |
|
506 |
+ "@type": "Question", |
|
507 |
+ "name": "Are these fixed prices?", |
|
508 |
+ "acceptedAnswer": { |
|
509 |
+ "@type": "Answer", |
|
510 |
+ "text": "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." |
|
511 |
+ } |
|
512 |
+ },{ |
|
513 |
+ "@type": "Question", |
|
514 |
+ "name": "Do you charge hourly?", |
|
515 |
+ "acceptedAnswer": { |
|
516 |
+ "@type": "Answer", |
|
517 |
+ "text": "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." |
|
518 |
+ } |
|
519 |
+ },{ |
|
520 |
+ "@type": "Question", |
|
521 |
+ "name": "Can you work on existing XWiki installations?", |
|
522 |
+ "acceptedAnswer": { |
|
523 |
+ "@type": "Answer", |
|
524 |
+ "text": "Yes. Agnease works with existing XWiki instances, including upgrades, troubleshooting, authentication, customizations, extensions and long-term maintenance." |
|
525 |
+ } |
|
526 |
+ },{ |
|
527 |
+ "@type": "Question", |
|
528 |
+ "name": "What happens if my XWiki instance is more complex?", |
|
529 |
+ "acceptedAnswer": { |
|
530 |
+ "@type": "Answer", |
|
531 |
+ "text": "Agnease first reviews the current setup, identifies risks and dependencies, and then provides a quote based on the actual scope." |
|
532 |
+ } |
|
533 |
+ },{ |
|
534 |
+ "@type": "Question", |
|
535 |
+ "name": "Can I book a call directly?", |
|
536 |
+ "acceptedAnswer": { |
|
537 |
+ "@type": "Answer", |
|
538 |
+ "text": "Yes. The contact form includes a call booking option, but sending a short description first helps Agnease understand the context before the discussion." |
|
539 |
+ } |
|
540 |
+ },{ |
|
541 |
+ "@type": "Question", |
|
542 |
+ "name": "Do prices include external costs?", |
|
543 |
+ "acceptedAnswer": { |
|
544 |
+ "@type": "Answer", |
|
545 |
+ "text": "The prices on this page cover Agnease services. External hosting, infrastructure or third-party costs are discussed separately when relevant." |
|
546 |
+ } |
|
547 |
+ }] |
|
548 |
+} |
|
549 |
+</script> |
| 395 |
395 |
{{/html}} |
| 396 |
396 |
{{/velocity}} |