Skip to content

Commit b7d1267

Browse files
committed
Brain-PACER page WIP.
1 parent dade81b commit b7d1267

File tree

7 files changed

+672
-0
lines changed

7 files changed

+672
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?php
2+
3+
namespace App\Http\Controllers;
4+
5+
use Illuminate\Http\Request;
6+
use Inertia\Inertia;
7+
use Inertia\Response;
8+
9+
class CambridgeBrainPacerController extends Controller
10+
{
11+
public function home(Request $request): Response
12+
{
13+
return Inertia::render('CambridgeBrainPacer/CambridgeBrainPacer');
14+
}
15+
}

public/assets/images/brain1.png

283 KB
Loading

resources/js/Pages/CambridgeBrainPacer/CambridgeBrainPacer.vue

+581
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<script setup lang="ts">
2+
3+
</script>
4+
5+
<template>
6+
<h2 class="text-3xl font-bold text-violet-400 mb-3 mt-12 tracking-tight">
7+
<slot />
8+
</h2>
9+
</template>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<script setup lang="ts">
2+
3+
</script>
4+
5+
<template>
6+
<h2 class="text-xl font-bold text-slate-500 mb-3">
7+
<slot />
8+
</h2>
9+
</template>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
<template>
2+
<div
3+
class="hidden lg:block absolute left-1/2 h-[1026px] w-[1026px] -translate-x-1/3 stroke-gray-300/70 [mask-image:linear-gradient(to_bottom,white_20%,transparent_75%)] sm:top-16 sm:-translate-x-1/2 lg:-top-16 lg:ml-12 xl:-top-14 xl:ml-0">
4+
<svg viewBox="0 0 1026 1026" fill="none" aria-hidden="true"
5+
class="absolute inset-0 h-full w-full animate-spin-slow animate-rotate">
6+
<path d="M1025 513c0 282.77-229.23 512-512 512S1 795.77 1 513 230.23 1 513 1s512 229.23 512 512Z"
7+
stroke="#D4D4D4" stroke-opacity="0.7"></path>
8+
<path d="M513 1025C230.23 1025 1 795.77 1 513" stroke="url(#:S1:-gradient-1)"
9+
stroke-linecap="round"></path>
10+
<defs>
11+
<linearGradient id=":S1:-gradient-1" x1="1" y1="513" x2="1" y2="1025"
12+
gradientUnits="userSpaceOnUse">
13+
<stop stop-color="#8b5cf6"></stop>
14+
<stop offset="1" stop-color="#8b5cf6" stop-opacity="0"></stop>
15+
</linearGradient>
16+
</defs>
17+
</svg>
18+
<svg viewBox="0 0 1026 1026" fill="none" aria-hidden="true"
19+
class="absolute inset-0 h-full w-full animate-spin-reverse-slower animate-rotate-reverse">
20+
<path
21+
d="M913 513c0 220.914-179.086 400-400 400S113 733.914 113 513s179.086-400 400-400 400 179.086 400 400Z"
22+
stroke="#D4D4D4" stroke-opacity="0.7"></path>
23+
<path d="M913 513c0 220.914-179.086 400-400 400" stroke="url(#:S1:-gradient-2)"
24+
stroke-linecap="round"></path>
25+
<defs>
26+
<linearGradient id=":S1:-gradient-2" x1="913" y1="513" x2="913" y2="913"
27+
gradientUnits="userSpaceOnUse">
28+
<stop stop-color="#8b5cf6"></stop>
29+
<stop offset="1" stop-color="#8b5cf6" stop-opacity="0"></stop>
30+
</linearGradient>
31+
</defs>
32+
</svg>
33+
</div>
34+
</template>
35+
36+
<style scoped>
37+
@keyframes pulse {
38+
0%, 100% { transform: scale(1); opacity: 1; }
39+
50% { transform: scale(1.05); opacity: 0.8; }
40+
}
41+
42+
@keyframes rotate {
43+
from { transform: rotate(0deg); }
44+
to { transform: rotate(360deg); }
45+
}
46+
47+
.animate-rotate {
48+
animation: rotate 5s linear infinite;
49+
}
50+
51+
.animate-rotate-reverse {
52+
animation: rotate 3s linear infinite reverse;
53+
}
54+
55+
</style>

routes/web.php

+3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
<?php
22

3+
use App\Http\Controllers\CambridgeBrainPacerController;
34
use App\Http\Controllers\ProfileController;
45
use Illuminate\Foundation\Application;
56
use Illuminate\Support\Facades\Route;
67
use Inertia\Inertia;
78

9+
Route::get('/cambridge/brain-pacer', [CambridgeBrainPacerController::class, 'home'])->name('profile.edit');
10+
811
Route::get('/', function () {
912
return Inertia::render('Welcome', [
1013
'canLogin' => Route::has('login'),

0 commit comments

Comments
 (0)