Skip to content

Commit 60531c8

Browse files
committed
Merge pull request #21 from MrCull/improve_appearance
Improve appearance
2 parents f82a9c1 + d54313a commit 60531c8

File tree

4 files changed

+110
-19
lines changed

4 files changed

+110
-19
lines changed

MyDevTools/Components/Layout/NavMenu.razor

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<div class="top-row ps-3 navbar navbar-dark">
22
<div class="container-fluid">
33
<a class="navbar-brand" href="">My Dev Tools</a>
4+
<a class="navbar-brand" href="https://mydevtools.org" rel="noopener noreferrer">Vue Version</a>
45
<button title="Navigation menu" class="navbar-toggler" @onclick="ToggleNavMenu">
56
<span class="navbar-toggler-icon"></span>
67
</button>
Lines changed: 73 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,95 @@
11
@page "/"
2+
@using MyDevTools.Services
3+
@inject SeoService SeoService
24

3-
<PageTitle>My Dev Tools</PageTitle>
5+
<PageTitle>My Dev Tools - Free Online Developer Tools</PageTitle>
6+
<HeadContent>
7+
<meta name="description" content="Free online developer tools including JSON formatter, SQL formatter, GUID generator, hash generator, and more. All processing done locally in your browser - no data sent over the internet." />
8+
<meta name="keywords" content="developer tools, JSON formatter, SQL formatter, GUID generator, hash generator, URL encoder, QR code generator, JWT decoder, developer utilities" />
9+
<meta property="og:title" content="My Dev Tools - Free Online Developer Tools" />
10+
<meta property="og:description" content="Free online developer tools including JSON formatter, SQL formatter, GUID generator, hash generator, and more. All processing done locally in your browser." />
11+
<meta property="og:type" content="website" />
12+
<meta property="og:url" content="https://mydevtools.org" />
13+
<link rel="canonical" href="https://mydevtools.org" />
14+
<script type="application/ld+json">
15+
@SeoService.GetStructuredData()
16+
</script>
17+
</HeadContent>
418

519
<!-- Hero Section -->
6-
<section class="hero-section bg-dark text-white text-center">
20+
<section class="hero-section bg-dark text-white text-center" aria-label="Introduction">
721
<div class="container">
8-
<img src="/main-logo-white-transparent.svg" alt="My Dev Tools logo" />
22+
<img src="/main-logo-white-transparent.svg" alt="My Dev Tools - Free Online Developer Tools" width="200" height="200" />
23+
<h1 class="display-4 mt-3">My Dev Tools</h1>
924
<p class="lead">No user input data sent over the internet!</p>
1025
<p class="lead">All processing is done locally in your browser.</p>
1126
</div>
1227
</section>
1328

14-
<!-- About Section -->
15-
<section class="about-section bg-light text-center">
16-
<div class="container">
17-
<h5>Is this site missing a useful feature?</h5>
18-
<h6>Log an Issue or submit a PR at: </h6><a href="https://github.com/MrCull/MyDevTools">github.com/MrCull/MyDevTools</a>
19-
</div>
20-
</section>
21-
22-
@* <!-- Features Section -->
23-
<section class="features-section text-center">
29+
<!-- Features Section -->
30+
<section class="features-section text-center" aria-label="Available Tools">
2431
<div class="container">
25-
<h2>Key Features</h2>
32+
<h2>Developer Tools</h2>
2633
<div class="row">
2734
<div class="col-md-4">
2835
<h3>JSON Formatter</h3>
29-
<p>Clean and format your JSON.</p>
36+
<p>Clean and format your JSON with syntax highlighting and validation.</p>
3037
</div>
3138
<div class="col-md-4">
32-
<h3>Branch Names</h3>
33-
<p>Auto-format your Git branch names.</p>
39+
<h3>SQL Formatter</h3>
40+
<p>Format and beautify your SQL queries for better readability.</p>
41+
</div>
42+
<div class="col-md-4">
43+
<h3>GUID Generator</h3>
44+
<p>Generate unique GUIDs/UUIDs for your applications.</p>
3445
</div>
3546
<div class="col-md-4">
3647
<h3>Hash Generator</h3>
37-
<p>Generate secure hashes with ease.</p>
48+
<p>Generate secure hashes using various algorithms.</p>
49+
</div>
50+
<div class="col-md-4">
51+
<h3>URL Encoder/Decoder</h3>
52+
<p>Encode and decode URLs with proper character escaping.</p>
53+
</div>
54+
<div class="col-md-4">
55+
<h3>QR Code Generator</h3>
56+
<p>Create QR codes for URLs, text, or contact information.</p>
3857
</div>
3958
</div>
4059
</div>
41-
</section> *@
60+
</section>
61+
62+
<!-- About Section -->
63+
<section class="about-section bg-light text-center" aria-label="Contribution">
64+
<div class="container">
65+
<h2>Contribute to My Dev Tools</h2>
66+
<p>Is this site missing a useful feature? Help us improve!</p>
67+
<p>Log an Issue or submit a PR at: <a href="https://github.com/MrCull/MyDevTools" rel="noopener noreferrer">github.com/MrCull/MyDevTools</a></p>
68+
</div>
69+
</section>
70+
71+
@code {
72+
protected override void OnInitialized()
73+
{
74+
// Add structured data for better SEO
75+
var structuredData = new
76+
{
77+
context = "https://schema.org",
78+
type = "WebApplication",
79+
name = "My Dev Tools",
80+
description = "Free online developer tools including JSON formatter, SQL formatter, GUID generator, hash generator, and more.",
81+
url = "https://mydevtools.org",
82+
applicationCategory = "DeveloperApplication",
83+
operatingSystem = "Any",
84+
offers = new
85+
{
86+
type = "Offer",
87+
price = "0",
88+
priceCurrency = "USD"
89+
}
90+
};
91+
92+
// You would need to implement a way to inject this into the page
93+
// This could be done through a service or by adding it to the page's script section
94+
}
95+
}

MyDevTools/Program.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,6 @@
1111
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });
1212

1313
builder.Services.AddScoped<IClipboardService, ClipboardService>();
14+
builder.Services.AddScoped<SeoService>();
1415

1516
await builder.Build().RunAsync();

MyDevTools/Services/SeoService.cs

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
using Microsoft.AspNetCore.Components;
2+
3+
namespace MyDevTools.Services;
4+
5+
public class SeoService
6+
{
7+
private readonly NavigationManager _navigationManager;
8+
9+
public SeoService(NavigationManager navigationManager)
10+
{
11+
_navigationManager = navigationManager;
12+
}
13+
14+
public string GetStructuredData()
15+
{
16+
var structuredData = new
17+
{
18+
context = "https://schema.org",
19+
type = "WebApplication",
20+
name = "My Dev Tools",
21+
description = "Free online developer tools including JSON formatter, SQL formatter, GUID generator, hash generator, and more.",
22+
url = _navigationManager.BaseUri,
23+
applicationCategory = "DeveloperApplication",
24+
operatingSystem = "Any",
25+
offers = new
26+
{
27+
type = "Offer",
28+
price = "0",
29+
priceCurrency = "USD"
30+
}
31+
};
32+
33+
return System.Text.Json.JsonSerializer.Serialize(structuredData);
34+
}
35+
}

0 commit comments

Comments
 (0)