forked from Dicklesworthstone/anti_alzheimers_flasher
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
366 lines (322 loc) · 20.9 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
<!DOCTYPE html>
<html>
<head>
<title>Alzheimer's Buddy: 40Hz Therapy</title>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap" rel="stylesheet">
<style>
body {
margin: 0;
padding: 0;
font-family: 'Montserrat', sans-serif;
background-color: #f4f4f4;
text-align: center;
color: #333;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: auto;
}
#content {
max-width: 600px;
padding: 20px;
margin-bottom: 20px;
}
h1 {
font-size: 28px;
font-weight: 700;
}
p {
margin: 15px 0;
line-height: 1.6;
font-size: 16px;
max-width: 600px;
}
a {
color: #0066cc;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
ul, li {
margin-bottom: 15px; /* Increase spacing between bullet points */
}
canvas {
display: none;
background: black;
position: absolute;
top: 0;
left: 0;
}
#startButton {
margin-top: 40px;
padding: 15px 30px;
font-size: 20px;
color: white;
background-color: #007bff;
border: none;
border-radius: 5px;
cursor: pointer;
display: block;
margin: 0 auto;
}
#startButton:hover {
background-color: #0056b3;
}
.warning {
color: #D32F2F; /* A softer shade of red for readability */
font-weight: 700;
background-color: #FFFDE7; /* Light yellow background for attention */
padding: 10px;
border-radius: 5px;
margin: 10px 0;
display: flex;
max-width: 600px; /* Limit the width of warning messages */
margin-left: auto; /* Center the warning horizontally */
margin-right: auto;
align-items: center;
text-align: left;
border: 1px solid #FFC107; /* Subtle border */
box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1); /* Soft shadow */
}
.info {
margin-top: 20px;
margin-bottom: 100px;
background-color: #eef;
padding: 15px;
border-radius: 10px;
box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}
.info h2 {
font-size: 22px;
margin-bottom: 10px;
}
.info ul {
text-align: left;
list-style: inside; /* Bullets inside the div */
}
.explanation {
max-width: 800px; /* Limit the width */
margin: auto; /* Center the div */
padding: 20px; /* Add padding */
text-align: left;
}
.explanation h2 {
font-size: 22px;
margin-bottom: 30px;
}
.warning-text-centered {
justify-content: center; /* Centers content in a flex container */
text-align: center; /* Ensures text is centered */
}
.legal-disclaimer {
background-color: #ffe5e5; /* Very light red for subtlety and attention */
color: #333333; /* Dark grey for readability */
font-weight: normal; /* Regular font weight for easier reading */
padding: 20px; /* Increased padding */
margin-top: 40px; /* Increased space from the content above */
margin-bottom: 40px; /* Increased space from the content below */
border: 2px solid #ff0000; /* Darker red border for visibility */
border-radius: 8px; /* Increased border radius for a softer look */
text-align: left; /* Left align text for traditional reading flow */
font-size: 14px; /* Maintain font size for readability */
box-shadow: 0 4px 8px rgba(0,0,0,0.2); /* Increased box shadow for depth */
width: 60%; /* Increased width */
margin-left: auto; /* Center align the box */
margin-right: auto; /* Center align the box */
align-items: center;
max-width: 600px; /* Limit the width of the box */
line-height: 1.5; /* Increased line height for readability */
}
@media (max-width: 768px) {
#content {
max-width: 100%; /* Use full width for smaller screens */
padding: 10px; /* Reduce padding */
margin: 10px 0; /* Adjust margin */
}
.explanation {
padding: 10px; /* Smaller padding on smaller screens */
margin: 10px; /* Smaller margin on smaller screens */
}
.warning {
font-size: 14px; /* Smaller font size for warnings */
padding: 8px; /* Slightly reduced padding */
}
.legal-disclaimer {
width: 100%; /* Use full width for smaller screens */
}
h1 {
font-size: 24px; /* Smaller font size for headers */
}
p {
font-size: 14px; /* Smaller font size for paragraphs */
}
.info {
padding: 10px; /* Reduce padding in the info section */
}
.info h2, .explanation h2 {
font-size: 20px; /* Smaller font size for sub-headers */
}
#startButton {
padding: 10px 20px; /* Smaller padding for the button */
font-size: 18px; /* Smaller font size for the button text */
}
}
</style>
</head>
<body>
<div id="content">
<h1>Alzheimer's Buddy: Use Flashing Light and Sound at 40Hz</h1>
<p>Is this a joke? Believe it or not, there is new research that suggests this sort of therapy actually works. See these links for more information:</p>
<p><a href="https://picower.mit.edu/news/40-hz-vibrations-reduce-alzheimers-pathology-symptoms-mouse-models">Picower Institute Article</a></p>
<p><a href="https://picower.mit.edu/discoveries/40hz-rhythms-fight-alzheimers-cellular-and-molecular-level">40Hz Rhythms Fight Alzheimer's</a></p>
<p><a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10379682/">NCBI Article 1</a></p>
<p><a href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9023125/">NCBI Article 2</a></p>
<button id="startButton">Start</button>
</div>
<div class="info">
<p class="warning">WARNING: If you have epilepsy, or someone you live with does, be very careful using this!</p>
<p class="warning">WARNING: Some users have reported that their computer monitor acted weird after running this, and if you have any doubts about this, you should use it on a smartphone instead! I can verify that it works well on a recent iPhone without damage.</p>
<ul>
<li>Press the blue start button to begin, but first read the directions!</li>
<li>Click anywhere or press a key to stop the flashing.</li>
<li>Press the F11 key on your keyboard to make it full-screen for better immersion (Windows only).</li>
<li>For ideal results, try in a darkened room and with the volume set reasonably high, or use headphones.</li>
<li>If you have a sub-woofer, it can add yet another sensory modality—haptic (touch) feedback, also at 40Hz!</li>
<li>Try it for at least 10 minutes, but longer is better. The study was done for 1 hour a day for 6 months.</li>
<li>It works very well on smartphone if you turn the brightness all the way up and hold it up to your eyes with your eyes closed.</li>
<li>If you're using an iPhone, make sure to turn off silent mode to hear the audio pulses.</li>
</ul>
</div>
</div>
<div class="explanation">
<h2>How it Might Work:</h2>
<p>Come on, this must be a joke, right? No, really. Think about it— your eyes take in light which stimulates your retina, which sends pulses through your optical nerve, which is connected to... your brain! Your eyes are like a direct port to your brain, and can be electrically stimulated through optical stimulation. And if you think about it, your ears are quite similar— sound waves come into your ear and vibrate bones and hairs that cause neurons to fire electrical signals directly into your brain. So, it stands to reason that you could induce electrical behavior in your brain by stimulating both sensory modalities at the same time, using pulses at the same frequency. Why 40 times a second? That just seems to work the best in experiments with animals, but probably doesn't need to be exactly at that rate.</p>
<p>But then why should stimulating your brain with induced electrical activity help with anything, let alone Alzheimer's? Well, there's an old saying in neuroscience that "Neurons that fire together, wire together." By stimulating various parts of your brain to fire periodically 40 times a second in a synchronized way, that could cause areas of the brain to become better synchronized and connected. Does this explain exactly how or why this treatment might work? Of course not, it's just a "hand-waving" argument to show intuitively how it might help. But what do you have to lose? Unless you have epilepsy, using this should be harmless. And Alzheimer's is a horrible disease.</p>
<h2>What do the Actual Scientists Say About It?</h2>
<p>The article from the Journal of Alzheimer's Disease describes a study on the impact of 40 Hz transcranial alternating current stimulation (tACS) on cerebral Tau burden in patients with Alzheimer's disease. Here's a simplified explanation of their hypothesis and findings:</p>
<ol>
<li><strong>Background of Alzheimer's Disease (AD):</strong> AD is characterized by the accumulation of two types of proteins in the brain - amyloid-beta (Aβ) and phosphorylated Tau (p-Tau). These proteins form aggregates that disrupt communication between neurons and trigger neuroinflammation, leading to neurodegeneration.</li>
<li><strong>40 Hz Gamma Oscillations:</strong> Previous studies in animal models have shown that externally induced gamma oscillations at 40 Hz can reduce the buildup of these harmful proteins, presumably by activating microglia (the brain's immune cells).</li>
<li><strong>The Hypothesis:</strong> The researchers hypothesized that using tACS to induce 40 Hz gamma oscillations in the human brain might similarly help reduce the buildup of p-Tau and possibly Aβ proteins. This reduction could occur through the activation of microglia, which might then clear these harmful proteins more effectively.</li>
<li><strong>Methodology:</strong> The study involved administering 40 Hz tACS to patients with mild-to-moderate Alzheimer's disease over a period of four weeks. PET imaging was used to measure levels of Aβ, p-Tau, and microglia activation before and after the intervention.</li>
<li><strong>Findings:</strong>
<ul>
<li>No adverse events were reported, indicating the safety of the procedure.</li>
<li>An increase in gamma spectral power was observed after treatment, suggesting that the brain's gamma oscillations were successfully modulated.</li>
<li>A significant decrease in p-Tau was observed in most patients, particularly in areas of the brain targeted by the tACS.</li>
<li>There was no significant change in Aβ levels and mixed results regarding microglia activation.</li>
</ul>
</li>
<li><strong>Conclusion:</strong> The study provides preliminary evidence that 40 Hz tACS is a safe and feasible method to potentially reduce p-Tau levels in Alzheimer's patients. This could partially mimic the effects seen in animal models. However, the study calls for longer interventions and more comprehensive trials to fully assess the efficacy of this treatment.</li>
</ol>
<p>In simpler terms, the study explores whether using a non-invasive brain stimulation technique at a specific frequency can reduce the buildup of harmful proteins in the brains of Alzheimer's patients, similar to what has been observed in animal studies. The initial results are promising for Tau proteins, but more research is needed to confirm these findings and understand the full impact of this treatment.</p>
<h2>Another Study</h2>
<p>The article "A Feasibility Study of AlzLife 40 Hz Sensory Therapy in Patients with MCI and Early AD" presents a study that investigates the feasibility of using a smart tablet application emitting light and sound at 40 Hz for treating patients with Mild Cognitive Impairment (MCI) and early Alzheimer's Disease (AD). Here's a simplified breakdown of the study and its findings:</p>
<ul>
<li><strong>Background and Purpose:</strong> Alzheimer's Disease and Mild Cognitive Impairment affect a significant number of individuals, and treatment options are limited. The study explores the use of non-invasive 40 Hz sensory therapy, previously shown to improve cognition in AD rodent models. The therapy uses a smart tablet app to deliver light and sound at 40 Hz frequency. The main goal was to assess the feasibility of this treatment in humans.</li>
<li><strong>Methodology:</strong> The study involved participants using an iPad Pro for one hour daily over six months, with the AlzLife app emitting 40 Hz light and sound. The participants also played cognitive games on the app. The study measured cognitive performance using the Montreal Cognitive Assessment (MOCA) and the Boston Cognitive Assessment (BOCA).</li>
<li><strong>Findings:</strong>
<ul>
<li><strong>Cognitive Performance:</strong> Some participants showed improvements in their MOCA and BOCA scores, indicating potential cognitive benefits from the therapy.</li>
<li><strong>Subjective Benefits:</strong> Several participants and caregivers reported perceived benefits, such as improved word finding and attention.</li>
<li><strong>Safety and Tolerability:</strong> The therapy was found to be safe and tolerable, with no major side effects reported. However, some participants found it challenging to comply with the daily regimen.</li>
<li><strong>Technical Challenges:</strong> Some participants faced difficulties in obtaining and operating the iPad, suggesting a need for support in using the technology.</li>
</ul>
</li>
<li><strong>Conclusion:</strong> The study concludes that 40 Hz light and sound therapy is feasible and shows potential as a safe, non-invasive treatment for cognitive impairment in AD and MCI patients. However, it highlights the need for larger randomized controlled trials to fully assess the efficacy of this treatment.</li>
</ul>
</div>
<div class="legal-disclaimer">
<p class="warning warning-text-centered" style="font-size: 24px; font-weight: bold;">DISCLAIMER</p>
<p>The content on this website, including all text, graphics, images, and other material, is for informational purposes only and is not intended as medical advice, diagnosis, or treatment. This content is not a substitute for professional medical advice, diagnosis, or treatment. Always seek the advice of your physician or other qualified health provider with any questions you may have regarding a medical condition. Never disregard professional medical advice or delay in seeking it because of something you have read on this website.</p>
<p>Reliance on any information provided by this website is solely at your own risk. The website owner, authors, editors, and affiliates are not responsible for any errors or omissions in any content herein, nor for any actions taken in reliance thereon. The website owner expressly disclaims all liability in respect to actions taken or not taken based on any or all the contents of this website.</p>
<p>The website owner does not warrant or guarantee the accuracy, completeness, adequacy, or currency of the information contained in or linked to this website. Your use of information on the website or materials linked from the website is at your own risk.</p>
</div>
<canvas id="canvas"></canvas>
<script>
const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
const startButton = document.getElementById('startButton');
const contentDiv = document.getElementById('content');
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
let audioCtx, oscillator, gainNode, animationFrameId;
function startAudioVisual() {
contentDiv.style.display = 'none'; // Hide the text content
canvas.style.display = 'block'; // Show the canvas
startButton.style.display = 'none'; // Hide the button
// Audio setup
audioCtx = new (window.AudioContext || window.webkitAudioContext)();
oscillator = audioCtx.createOscillator();
gainNode = audioCtx.createGain(); // Create a GainNode
oscillator.type = 'sine';
oscillator.frequency.setValueAtTime(40, audioCtx.currentTime);
oscillator.connect(gainNode); // Connect the oscillator to the GainNode
gainNode.connect(audioCtx.destination); // Connect the GainNode to the destination
gainNode.gain.setValueAtTime(0, audioCtx.currentTime); // Start with 0 volume
gainNode.gain.linearRampToValueAtTime(1, audioCtx.currentTime + 0.1); // Ramp up to full volume over 0.1 seconds
oscillator.start();
// Flashing setup with requestAnimationFrame
let flash = false;
let lastTime = 0;
function toggleFlash(timestamp) {
if (timestamp - lastTime >= (1000 / 80)) {
ctx.fillStyle = flash ? 'black' : 'white';
ctx.fillRect(0, 0, canvas.width, canvas.height);
flash = !flash;
lastTime = timestamp;
}
animationFrameId = requestAnimationFrame(toggleFlash);
}
animationFrameId = requestAnimationFrame(toggleFlash);
// Prepare to stop
startButton.removeEventListener('click', startAudioVisual);
startButton.addEventListener('click', stopAudioVisual);
startButton.textContent = 'Stop';
startButton.style.display = 'block';
// Add global event listeners for stopping
document.addEventListener('click', stopHandler);
document.addEventListener('keydown', stopHandler);
}
function stopAudioVisual() {
if (audioCtx) {
// Automate gain for a smooth fade out
gainNode.gain.cancelScheduledValues(audioCtx.currentTime);
gainNode.gain.setValueAtTime(gainNode.gain.value, audioCtx.currentTime);
gainNode.gain.exponentialRampToValueAtTime(0.001, audioCtx.currentTime + 0.5);
// Wait for the fade out to complete before stopping the oscillator
setTimeout(() => {
oscillator.stop();
oscillator.disconnect();
gainNode.disconnect();
audioCtx.close();
}, 500); // Wait for 500 milliseconds
}
if (animationFrameId) cancelAnimationFrame(animationFrameId);
startButton.textContent = 'Start';
startButton.removeEventListener('click', stopAudioVisual);
startButton.addEventListener('click', startAudioVisual);
// Remove global event listeners
document.removeEventListener('click', stopHandler);
document.removeEventListener('keydown', stopHandler);
// Resetting the page to its initial state
contentDiv.style.display = 'block';
startButton.style.display = 'block';
canvas.style.display = 'none';
}
function stopHandler(event) {
// Preventing the event from re-triggering start
if (event.target !== startButton) {
stopAudioVisual();
}
}
startButton.addEventListener('click', startAudioVisual);
window.addEventListener('resize', () => {
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
});
</script>
</body>
</html>