Skip to content

Commit aba49a3

Browse files
committed
feat: Rework document, add GA
1 parent 71986e0 commit aba49a3

6 files changed

Lines changed: 85 additions & 7 deletions

File tree

docs/_config.yml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,17 @@
11
title: Timer Ninja
2-
description: "A sneaky library for Java Method Timing — Track execution time with a single annotation. Zero boilerplate."
2+
tagline: "Measure Java Method Execution Time with a Single Annotation"
3+
description: "Timer Ninja is a lightweight Java library to measure method execution time, track code performance, and visualize call hierarchies — with just one annotation. No heavy frameworks required."
34
url: "https://thanglequoc.github.io"
45
baseurl: "/timer-ninja"
6+
lang: en
7+
8+
# Social / Open Graph
9+
twitter:
10+
card: summary_large_image
11+
social:
12+
name: Timer Ninja
13+
links:
14+
- https://github.com/thanglequoc/timer-ninja
515

616
# Build settings
717
markdown: kramdown
@@ -16,6 +26,7 @@ sass:
1626
# Plugins
1727
plugins:
1828
- jekyll-seo-tag
29+
- jekyll-sitemap
1930

2031
# Defaults
2132
defaults:
@@ -24,6 +35,7 @@ defaults:
2435
type: "pages"
2536
values:
2637
layout: "default"
38+
image: /assets/images/mascot.png
2739

2840
# Exclude from build
2941
exclude:

docs/_includes/head.html

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@
22
<meta name="viewport" content="width=device-width, initial-scale=1">
33
<meta name="theme-color" content="#46bfc6">
44

5+
<!-- Google Analytics (GA4) -->
6+
<script async src="https://www.googletagmanager.com/gtag/js?id=G-14R8KVB7N0"></script>
7+
<script>
8+
window.dataLayer = window.dataLayer || [];
9+
function gtag(){dataLayer.push(arguments);}
10+
gtag('js', new Date());
11+
gtag('config', 'G-14R8KVB7N0');
12+
</script>
13+
514
<title>{% if page.title %}{{ page.title }} — {{ site.title }}{% else %}{{ site.title }}{% endif %}</title>
615

716
<!-- Fonts -->
@@ -22,6 +31,36 @@
2231

2332
{% seo %}
2433

34+
<!-- Additional SEO meta tags -->
35+
<meta name="keywords" content="measure Java method execution time, track Java code execution time, Java method timing, Java performance tracking, Java annotation timing, Java profiling library, AspectJ timing, TimerNinjaTracker">
36+
<link rel="canonical" href="{{ site.url }}{{ site.baseurl }}{{ page.url | replace: 'index.html', '' }}">
37+
38+
<!-- JSON-LD Structured Data -->
39+
{% if page.url == "/" or page.url == "/index.html" %}
40+
<script type="application/ld+json">
41+
{
42+
"@context": "https://schema.org",
43+
"@type": "SoftwareSourceCode",
44+
"name": "Timer Ninja",
45+
"description": "A lightweight Java library to measure method execution time, track code performance, and visualize call hierarchies with a single annotation.",
46+
"url": "{{ site.url }}{{ site.baseurl }}/",
47+
"codeRepository": "https://github.com/thanglequoc/timer-ninja",
48+
"programmingLanguage": {
49+
"@type": "ComputerLanguage",
50+
"name": "Java"
51+
},
52+
"runtimePlatform": "Java",
53+
"license": "https://www.apache.org/licenses/LICENSE-2.0",
54+
"author": {
55+
"@type": "Person",
56+
"name": "ThangLeQuoc",
57+
"url": "https://github.com/thanglequoc"
58+
},
59+
"keywords": ["Java", "method timing", "execution time", "performance tracking", "AspectJ", "annotation", "profiling"]
60+
}
61+
</script>
62+
{% endif %}
63+
2564
<!-- Theme init (prevent FOUC) -->
2665
<script>
2766
(function() {

docs/advanced-usage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: docs
33
title: Advanced Usage
4-
description: "Real-world examples, advanced features, optimization techniques, and best practices for Timer Ninja."
4+
description: "Advanced Java method timing patterns — nested call tracking, dynamic thresholds, Spring Boot integration, and performance optimization with Timer Ninja."
55
prev_page:
66
title: Getting Started
77
url: /getting-started/

docs/getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: docs
33
title: Getting Started
4-
description: "Get up and running with Timer Ninja — installation, annotation tracking, block tracking, and trace output."
4+
description: "How to measure Java method execution time with Timer Ninja. Install the library, annotate methods, track code blocks, and visualize performance traces."
55
prev_page:
66
title: Home
77
url: /

docs/index.html

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: home
33
title: Home
4-
description: "Timer Ninja — A sneaky library for Java Method Timing. Track execution time with a single annotation. Zero boilerplate."
4+
description: "Timer Ninja — Measure Java method execution time with a single annotation. Track code performance, visualize call hierarchies, and identify slow methods without heavy tracing frameworks."
55
---
66

77
<!-- ==================== HERO ==================== -->
@@ -15,10 +15,10 @@
1515
<span class="badge">Open Source &middot; Java Library</span>
1616
</div>
1717
<h1 class="hero__title animate-fade-up">
18-
A <span class="text-gradient">Sneaky Library</span> for<br>Java Method Timing
18+
Measure <span class="text-gradient">Java Method Execution Time</span><br>with a Single Annotation
1919
</h1>
2020
<p class="hero__subtitle animate-fade-up">
21-
Track execution time with a single annotation. Get a full call hierarchy with timing &amp; arguments — no heavy tracing frameworks required.
21+
Track code execution time in Java effortlessly. Get a full call hierarchy with timing &amp; arguments — no heavy tracing frameworks required.
2222
</p>
2323
<div class="hero__actions animate-fade-up">
2424
<a href="{{ '/getting-started/' | relative_url }}" class="btn btn--primary">
@@ -319,7 +319,7 @@ <h3>Run &amp; See the Trace &#128007;</h3>
319319
</div>
320320
<h2 class="animate-fade-up">Ready to <span class="text-gradient">Track Like a Ninja</span>?</h2>
321321
<p class="animate-fade-up" style="max-width: 560px; margin: 0 auto 2rem; font-size: 1.1rem;">
322-
Block tracking, custom thresholds, constructor tracking, and more — explore all features in the docs and start measuring the smart way.
322+
Block tracking, custom thresholds, constructor tracking, and more — explore all features in the docs and start measuring Java method execution time the smart way.
323323
</p>
324324
<div class="hero__actions animate-fade-up">
325325
<a href="{{ '/getting-started/' | relative_url }}" class="btn btn--primary">
@@ -332,3 +332,22 @@ <h2 class="animate-fade-up">Ready to <span class="text-gradient">Track Like a Ni
332332
</div>
333333
</div>
334334
</section>
335+
336+
<!-- SEO: crawlable text content for search engines -->
337+
<noscript>
338+
<section style="padding: 2rem;">
339+
<h2>Timer Ninja — Measure Java Method Execution Time</h2>
340+
<p>Timer Ninja is a lightweight, open-source Java library that lets you measure method execution time with a single <code>@TimerNinjaTracker</code> annotation. Built on AspectJ, it automatically tracks code execution time in Java, preserves the full call hierarchy, and displays it as a visual trace tree — with no manual timestamp boilerplate.</p>
341+
<h3>Key Features</h3>
342+
<ul>
343+
<li>Measure Java method execution time with one annotation</li>
344+
<li>Track nested method calls as an indented call tree</li>
345+
<li>Include method arguments in timing output</li>
346+
<li>Set thresholds to surface only slow operations</li>
347+
<li>Block tracking for arbitrary code sections</li>
348+
<li>Zero external dependencies beyond AspectJ and SLF4J</li>
349+
<li>Works with Spring Boot, plain Java, and any JVM project</li>
350+
</ul>
351+
<p>Stop writing <code>System.currentTimeMillis()</code> boilerplate. Start tracking Java code execution time with Timer Ninja.</p>
352+
</section>
353+
</noscript>

docs/robots.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
layout: null
3+
permalink: /robots.txt
4+
---
5+
User-agent: *
6+
Allow: /
7+
8+
Sitemap: {{ site.url }}{{ site.baseurl }}/sitemap.xml

0 commit comments

Comments
 (0)