feat(core): Update index.html (Commit #23)

Swadhin Biswas committed 7 months ago
5f558b8
1 parent 5e3786a
commit 5f558b8
1 file changed
+240 -0
Showing 1 changed file+240-0
▼index.html
+240-0
1
+<!DOCTYPE html>
2
+<html lang="en" class="scroll-smooth">
3
+<head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>OpenGrammar | The Free, Privacy-First Grammarly Alternative</title>
7
+ <meta name="description" content="OpenGrammar is a powerful, open-source, and self-hostable browser extension for grammar, spelling, and tone adjustments. Complete privacy and zero monthly fees.">
8
+ <meta name="keywords" content="OpenGrammar, Grammarly alternative, open source grammar checker, privacy writing assistant, AI writer">
9
+ <meta name="author" content="OpenGrammar Community">
10
+ <meta property="og:title" content="OpenGrammar | Privacy-First Writing Assistant">
11
+ <meta property="og:description" content="Take back your privacy. OpenGrammar offers local grammar checking and bring-your-own-AI capabilities with zero monthly fees.">
12
+ <meta property="og:type" content="website">
13
+ <script src="https://cdn.tailwindcss.com"></script>
14
+ <style>
15
+ .gradient-text {
16
+ background-clip: text;
17
+ -webkit-background-clip: text;
18
+ -webkit-text-fill-color: transparent;
19
+ background-image: linear-gradient(90deg, #3B82F6, #8B5CF6);
20
+ }
21
+ .hero-pattern {
22
+ background-color: #f8fafc;
23
+ background-image: radial-gradient(#cbd5e1 1px, transparent 1px);
24
+ background-size: 20px 20px;
25
+ }
26
+ </style>
27
+</head>
28
+<body class="font-sans antialiased text-gray-900 bg-white">
29
+
30
+ <!-- Navigation -->
31
+ <nav class="fixed w-full z-50 bg-white/80 backdrop-blur-md border-b border-gray-100">
32
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
33
+ <div class="flex justify-between items-center h-16">
34
+ <div class="flex items-center gap-2">
35
+ <img src="logo.svg" alt="OpenGrammar Logo" class="h-8 w-8">
36
+ <span class="font-bold text-xl tracking-tight text-gray-900">OpenGrammar</span>
37
+ </div>
38
+ <div class="hidden md:flex space-x-8 items-center">
39
+ <a href="#features" class="text-gray-600 hover:text-blue-600 font-medium transition">Features</a>
40
+ <a href="#how-it-works" class="text-gray-600 hover:text-blue-600 font-medium transition">How it Works</a>
41
+ <a href="https://github.com" target="_blank" class="text-gray-600 hover:text-blue-600 font-medium transition">GitHub</a>
42
+ <a href="#get-started" class="bg-blue-600 hover:bg-blue-700 text-white px-5 py-2 rounded-full font-medium transition shadow-lg shadow-blue-500/30">Get Started</a>
43
+ </div>
44
+ </div>
45
+ </div>
46
+ </nav>
47
+
48
+ <!-- Hero Section -->
49
+ <section class="hero-pattern pt-32 pb-20 lg:pt-48 lg:pb-32 overflow-hidden">
50
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 relative">
51
+ <div class="text-center max-w-3xl mx-auto">
52
+ <div class="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-blue-50 border border-blue-100 text-blue-600 text-sm font-semibold mb-6">
53
+ <span class="flex h-2 w-2 rounded-full bg-blue-600"></span>
54
+ v2.1 Now Available
55
+ </div>
56
+ <h1 class="text-5xl md:text-7xl font-extrabold tracking-tight mb-6 leading-tight">
57
+ Write with confidence.<br>
58
+ <span class="gradient-text">Keep your privacy.</span>
59
+ </h1>
60
+ <p class="text-xl text-gray-600 mb-10 leading-relaxed">
61
+ OpenGrammar is the free, open-source Grammarly alternative. Run local rule-based checks offline, or plug in your own AI API key for advanced edits without paying monthly subscriptions.
62
+ </p>
63
+ <div class="flex flex-col sm:flex-row justify-center gap-4">
64
+ <a href="#get-started" class="bg-blue-600 hover:bg-blue-700 text-white px-8 py-4 rounded-full font-bold text-lg transition shadow-xl shadow-blue-600/20 flex items-center justify-center gap-2">
65
+ <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4"></path></svg>
66
+ Download Extension
67
+ </a>
68
+ <a href="https://github.com" target="_blank" class="bg-white hover:bg-gray-50 text-gray-800 border border-gray-200 px-8 py-4 rounded-full font-bold text-lg transition shadow-sm flex items-center justify-center gap-2">
69
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path fill-rule="evenodd" d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z" clip-rule="evenodd"></path></svg>
70
+ View Source
71
+ </a>
72
+ </div>
73
+ </div>
74
+
75
+ <!-- Mockup image -->
76
+ <div class="mt-16 relative max-w-5xl mx-auto rounded-xl shadow-2xl overflow-hidden border border-gray-200">
77
+ <div class="bg-gray-100 px-4 py-3 border-b border-gray-200 flex items-center gap-2">
78
+ <div class="w-3 h-3 rounded-full bg-red-400"></div>
79
+ <div class="w-3 h-3 rounded-full bg-yellow-400"></div>
80
+ <div class="w-3 h-3 rounded-full bg-green-400"></div>
81
+ </div>
82
+ <div class="bg-white p-8">
83
+ <p class="text-lg text-gray-700 leading-relaxed font-serif">
84
+ Most popular grammar assistants require you to send every keystroke to their servers and <span class="border-b-2 border-red-400 pb-1 cursor-pointer hover:bg-red-50 relative group">charge a hefty monthly fee<div class="absolute bottom-full left-0 mb-2 hidden group-hover:block w-48 bg-white border shadow-lg rounded p-2 text-sm z-10"><span class="block text-red-600 font-bold mb-1">Cliché</span>Consider "are expensive" instead.</div></span> for advanced features. OpenGrammar changes that. The core engine runs locally in your browser, checking for passive voice and <span class="border-b-2 border-blue-400 pb-1 cursor-pointer hover:bg-blue-50 relative group">repetition<div class="absolute bottom-full left-0 mb-2 hidden group-hover:block w-48 bg-white border shadow-lg rounded p-2 text-sm z-10"><span class="block text-blue-600 font-bold mb-1">Repetition</span>You used this word 3 times recently.</div></span> without needing a server.
85
+ </p>
86
+ </div>
87
+ </div>
88
+ </div>
89
+ </section>
90
+
91
+ <!-- Features -->
92
+ <section id="features" class="py-20 bg-white">
93
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
94
+ <div class="text-center mb-16">
95
+ <h2 class="text-3xl font-bold text-gray-900 mb-4">Everything you need, nothing you don't.</h2>
96
+ <p class="text-gray-600 max-w-2xl mx-auto">Designed for developers, writers, and privacy advocates who want complete control over their writing environment.</p>
97
+ </div>
98
+
99
+ <div class="grid md:grid-cols-3 gap-10">
100
+ <!-- Feature 1 -->
101
+ <div class="p-6 rounded-2xl border border-gray-100 hover:shadow-xl transition duration-300 bg-gray-50">
102
+ <div class="w-12 h-12 bg-blue-100 text-blue-600 rounded-xl flex items-center justify-center mb-6">
103
+ <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"></path></svg>
104
+ </div>
105
+ <h3 class="text-xl font-bold mb-3">Absolute Privacy</h3>
106
+ <p class="text-gray-600">No databases, no user accounts. The local engine runs offline. AI requests are sent to a stateless edge function and immediately forgotten.</p>
107
+ </div>
108
+ <!-- Feature 2 -->
109
+ <div class="p-6 rounded-2xl border border-gray-100 hover:shadow-xl transition duration-300 bg-gray-50">
110
+ <div class="w-12 h-12 bg-purple-100 text-purple-600 rounded-xl flex items-center justify-center mb-6">
111
+ <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"></path></svg>
112
+ </div>
113
+ <h3 class="text-xl font-bold mb-3">Bring Your Own AI</h3>
114
+ <p class="text-gray-600">Paste in your API key for OpenAI, Groq, OpenRouter, or Together. Pay fractions of a cent per month directly to the provider instead of a $12/mo subscription.</p>
115
+ </div>
116
+ <!-- Feature 3 -->
117
+ <div class="p-6 rounded-2xl border border-gray-100 hover:shadow-xl transition duration-300 bg-gray-50">
118
+ <div class="w-12 h-12 bg-green-100 text-green-600 rounded-xl flex items-center justify-center mb-6">
119
+ <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"></path></svg>
120
+ </div>
121
+ <h3 class="text-xl font-bold mb-3">Self-Hostable Backend</h3>
122
+ <p class="text-gray-600">Don't want to use our proxy? Deploy your own Cloudflare Worker or Vercel Edge function in a single command. You own the entire infrastructure.</p>
123
+ </div>
124
+ </div>
125
+ </div>
126
+ </section>
127
+
128
+ <!-- How it Works -->
129
+ <section id="how-it-works" class="py-20 bg-gray-50 border-t border-b border-gray-200">
130
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
131
+ <div class="flex flex-col lg:flex-row items-center gap-16">
132
+ <div class="lg:w-1/2">
133
+ <h2 class="text-3xl font-bold text-gray-900 mb-6">Dual-Engine Architecture</h2>
134
+ <div class="space-y-6">
135
+ <div class="flex gap-4">
136
+ <div class="flex-shrink-0 w-10 h-10 rounded-full bg-blue-100 flex items-center justify-center text-blue-600 font-bold">1</div>
137
+ <div>
138
+ <h4 class="text-lg font-bold">Local Rules Engine</h4>
139
+ <p class="text-gray-600">Checks for passive voice, repeated words, and overly long sentences right in your browser. Fast, free, and completely offline.</p>
140
+ </div>
141
+ </div>
142
+ <div class="flex gap-4">
143
+ <div class="flex-shrink-0 w-10 h-10 rounded-full bg-purple-100 flex items-center justify-center text-purple-600 font-bold">2</div>
144
+ <div>
145
+ <h4 class="text-lg font-bold">AI Processing</h4>
146
+ <p class="text-gray-600">For complex grammar, tone rewriting, and clarity suggestions, text is sent securely to an LLM using your personal API key.</p>
147
+ </div>
148
+ </div>
149
+ <div class="flex gap-4">
150
+ <div class="flex-shrink-0 w-10 h-10 rounded-full bg-green-100 flex items-center justify-center text-green-600 font-bold">3</div>
151
+ <div>
152
+ <h4 class="text-lg font-bold">Contextual UI</h4>
153
+ <p class="text-gray-600">See red, yellow, and blue underlines as you type. Click to accept suggestions, ignore them, or add words to your custom dictionary.</p>
154
+ </div>
155
+ </div>
156
+ </div>
157
+ </div>
158
+ <div class="lg:w-1/2">
159
+ <div class="bg-white p-6 rounded-2xl shadow-xl border border-gray-100">
160
+ <div class="flex justify-between items-center mb-6 border-b pb-4">
161
+ <h3 class="font-bold text-gray-800">Writing Statistics</h3>
162
+ <span class="text-sm text-gray-500">Document Analysis</span>
163
+ </div>
164
+ <div class="grid grid-cols-2 gap-4 mb-6">
165
+ <div class="bg-blue-50 p-4 rounded-lg">
166
+ <div class="text-sm text-gray-500 mb-1">Words</div>
167
+ <div class="text-2xl font-bold text-blue-700">1,248</div>
168
+ </div>
169
+ <div class="bg-purple-50 p-4 rounded-lg">
170
+ <div class="text-sm text-gray-500 mb-1">Reading Time</div>
171
+ <div class="text-2xl font-bold text-purple-700">4 min</div>
172
+ </div>
173
+ </div>
174
+ <div class="mb-4">
175
+ <div class="flex justify-between text-sm mb-1">
176
+ <span class="font-medium">Readability Score</span>
177
+ <span class="text-green-600 font-bold">Excellent (78)</span>
178
+ </div>
179
+ <div class="w-full bg-gray-200 rounded-full h-2">
180
+ <div class="bg-green-500 h-2 rounded-full" style="width: 78%"></div>
181
+ </div>
182
+ </div>
183
+ </div>
184
+ </div>
185
+ </div>
186
+ </div>
187
+ </section>
188
+
189
+ <!-- Getting Started -->
190
+ <section id="get-started" class="py-20 bg-white">
191
+ <div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
192
+ <h2 class="text-3xl font-bold text-gray-900 mb-6">Ready to take back control?</h2>
193
+ <p class="text-xl text-gray-600 mb-10">Start writing better today without sacrificing your privacy or your wallet.</p>
194
+
195
+ <div class="bg-gray-900 rounded-2xl text-left p-6 shadow-2xl text-gray-300 font-mono text-sm overflow-x-auto mx-auto max-w-2xl">
196
+ <div class="flex gap-2 mb-4">
197
+ <div class="w-3 h-3 rounded-full bg-red-500"></div>
198
+ <div class="w-3 h-3 rounded-full bg-yellow-500"></div>
199
+ <div class="w-3 h-3 rounded-full bg-green-500"></div>
200
+ </div>
201
+ <p><span class="text-blue-400"># 1. Clone the repository</span></p>
202
+ <p class="mb-4 text-white">git clone https://github.com/yourusername/opengrammar.git</p>
203
+
204
+ <p><span class="text-blue-400"># 2. Build the extension</span></p>
205
+ <p class="text-white">cd opengrammar/extension</p>
206
+ <p class="text-white">npm install</p>
207
+ <p class="mb-4 text-white">npm run build</p>
208
+
209
+ <p><span class="text-blue-400"># 3. Load unpacked in Chrome</span></p>
210
+ <p class="text-gray-400">Go to chrome://extensions, enable Developer Mode, and select the dist/ folder.</p>
211
+ </div>
212
+
213
+ <div class="mt-10">
214
+ <a href="https://github.com" class="text-blue-600 font-bold hover:underline inline-flex items-center gap-1">
215
+ Read the full developer documentation <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path></svg>
216
+ </a>
217
+ </div>
218
+ </div>
219
+ </section>
220
+
221
+ <!-- Footer -->
222
+ <footer class="bg-gray-900 py-12 border-t border-gray-800">
223
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex flex-col md:flex-row justify-between items-center">
224
+ <div class="flex items-center gap-2 mb-4 md:mb-0">
225
+ <img src="logo.svg" alt="OpenGrammar Logo" class="h-6 w-6 opacity-80">
226
+ <span class="text-xl font-bold text-white opacity-90">OpenGrammar</span>
227
+ </div>
228
+ <p class="text-gray-500 text-sm text-center md:text-left">
229
+ Released under the Apache 2.0 License. Open-source and free forever.
230
+ </p>
231
+ <div class="mt-4 md:mt-0 flex gap-6">
232
+ <a href="#" class="text-gray-400 hover:text-white transition">GitHub</a>
233
+ <a href="#" class="text-gray-400 hover:text-white transition">Discord</a>
234
+ <a href="#" class="text-gray-400 hover:text-white transition">Documentation</a>
235
+ </div>
236
+ </div>
237
+ </footer>
238
+
239
+</body>
240
+</html>
0
241