This script periodically crawls all Apache project and podling websites to check them for a few specific links or text blocks that all projects are expected to have. The checks include verifying that all required links appear on a project homepage, along with an "image" check if project logo files are in apache.org/img
The script also checks for 3rd party resource references that might be in conflict with our privacy policy.
The Content-Security-Policy (Csp) check is a work in progress: it only checks that the default settings have not been over-ridden. It does not check if the host exceptions have been approved.
View the crawler code, website display code, validation checks details, and raw JSON data.
Last crawl time: Fri, 31 Oct 2025 06:10:46 GMT over 219 websites.
| Check Type | Check Results | Check Description | 
|---|---|---|
| Uri | https://fineract.apache.org/ | |
| Foundation | The Apache Software Foundation | |
| Events | https://www.apache.org/events/current-event.html | |
| License | URL expected to match regular expression: ^https?://.*apache.org/licenses/?$There should be a "License" (*not* "Licenses") navigation link which points to: http[s]://www.apache.org/licenses[/]. (Do not link to sub-pages) | |
| Thanks | URL expected to match regular expression: ^https?://.*apache.org/foundation/(thanks|sponsors)"Sponsors", "Thanks" or "Thanks to our Sponsors" should link to: http://www.apache.org/foundation/thanks.html or sponsors.html | |
| Security | https://www.apache.org/security/ | |
| Sponsorship | https://www.apache.org/foundation/sponsorship.html | |
| Trademarks | Apache Fineract, Fineract, Apache, the Apache feather, and the Apache Fineract project logo are either registered trademarks or trademarks of the Apache Software Foundation. | |
| Copyright | .reference-links { display: flex; flex-direction: column; align-items: center; gap: 2rem; padding: 2rem 0; } .ref-group { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; max-width: 800px; } .ref-link { display: flex; align-items: center; gap: 0.75rem; padding: 0.85rem 1.5rem; background: rgba(255, 255, 255, 0.08); border-radius: 8px; color: white; position: relative; overflow: hidden; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .ref-link::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; background: rgba(255, 255, 255, 0.1); border-radius: 50%; transform: translate(-50%, -50%); transition: width 0.6s ease, height 0.6s ease; } .ref-link { background-color: rgba(255, 255, 255, 0.08); transform: none; box-shadow: none; } .ref-link i { font-size: 1.4rem; transition: none; } .ref-link span { position: relative; font-weight: 500; letter-spacing: 0.3px; transition: none; } .event-banner { padding: 1.25rem; background: rgba(255, 255, 255, 0.08); border-radius: 12px; transition: none; position: relative; overflow: hidden; } .event-banner img { display: block; max-width: 100%; height: auto; transition: none; } .copyright { padding: 2rem 0 1rem; font-size: 0.9rem; opacity: 0.9; line-height: 1.6; } .copyright a { text-decoration: none; background-image: none; padding-bottom: 2px; } .divider-inverse { background: rgba(255, 255, 255, 0.1); margin: 2rem 0; height: 1px; position: relative; overflow: hidden; } .divider-inverse::after { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: none; } | Text of a link expected to match regular expression: ((Copyright|©).*apache|apache.*(Copyright|©))All website content SHOULD include a copyright notice for the ASF. | 
| Privacy | URL expected to match regular expression: \Ahttps://privacy\.apache\.org/policies/privacy-policy-public\.html\z
                          |
                          \Ahttps?://(?:www\.)?apache\.org/foundation/policies/privacy\.html\z
                          All websites must link to the Privacy Policy. | |
| Resources | Found 0 external resources: {} | |
| Image | fineract.svg | |
| Csp_check | OK |