Wiki source code of products

Version 1.13 by Alex Cotiugă on 2026/05/12 20:03

Show last authors
1 {{velocity}}
2 #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 #set ($discard = $xwiki.ssx.use('products.WebHome'))
4 {{html clean="false"}}
5
6 ## PAGE HEADER
7 <section class="hero hero-centered product-hero" aria-labelledby="hero-title">
8 <div class="container hero-inner">
9 <div class="hero-kicker">
10 <i class="fa fa-cube" aria-hidden="true"></i>
11 Agnease products
12 </div>
13
14 <h1 id="hero-title">XWiki applications and extensions</h1>
15
16 <p class="lead">
17 Practical XWiki extensions built to improve security, workflows, administration and long-term platform usability.
18 </p>
19
20 <p class="hero-support">
21 Agnease products are designed for organizations that use XWiki as a production platform and need focused,
22 maintainable extensions that fit naturally into the XWiki experience.
23 </p>
24 </div>
25 </section>
26
27 ## PRODUCT CARDS
28 #set ($productItems = [{
29 'title': 'XWiki Two-Factor Authentication',
30 'icon': 'lock',
31 'url': 'products.xwiki-two-factor-authentication',
32 'label': 'Security extension',
33 'content': 'Add a second verification step to the standard XWiki login flow using time-based one-time codes, without replacing the standard XWiki authentication experience.'
34 }])
35
36 <section id="products-list" class="services products-list" aria-labelledby="items-title">
37 <div class="container">
38 <h2 id="items-title">Available extensions</h2>
39
40 <p class="section-intro">
41 The first Agnease product focuses on strengthening access to XWiki while keeping the standard XWiki login experience.
42 </p>
43
44 <div class="services-grid products-grid">
45 #foreach ($entry in $productItems)
46 <article class="service product-item">
47 <div class="service-icon" aria-hidden="true">
48 <i class="fa fa-$entry.icon"></i>
49 </div>
50
51 <div class="service-body">
52 <div class="hero-kicker product-item-kicker">
53 <i class="fa fa-$entry.icon" aria-hidden="true"></i>
54 $entry.label
55 </div>
56
57 <h4>$entry.title</h4>
58 <p>$entry.content</p>
59
60 <ul class="product-highlights">
61 <li>Works with the standard XWiki authentication flow</li>
62 <li>Adds a TOTP verification step after username/password login</li>
63 <li>Includes user setup and administration controls</li>
64 </ul>
65
66 <p class="card-link">
67 <a href="$xwiki.getURL($entry.url)">View extension</a>
68 </p>
69 </div>
70 </article>
71 #end
72 </div>
73 </div>
74 </section>
75
76 ## CTA
77 <section class="cta-section" aria-labelledby="cta-title">
78 <div class="container">
79 <div class="cta-panel">
80 <h2 id="cta-title">Need a custom XWiki application?</h2>
81
82 <p>
83 Agnease also builds custom XWiki applications, workflows, integrations and extensions adapted to specific business processes.
84 </p>
85
86 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Contact Agnease</a>
87 </div>
88 </div>
89 </section>
90
91 {{/html}}
92 {{/velocity}}