Skip to content

Commit f62b985

Browse files
rainbow border added
1 parent 608cc39 commit f62b985

File tree

10 files changed

+549
-227
lines changed

10 files changed

+549
-227
lines changed

README.md

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,9 @@
11
![opengraph](https://github.com/user-attachments/assets/de684e88-a65c-42ea-b067-d1a3bc85a420)
22

33

4-
## Powered by the [E2B SDK](https://github.com/e2b-dev/code-interpreter).
5-
<p align="center">
6-
<a href="https://github.com/e2b-dev/code-interpreter">
7-
<strong><h2>Powered by the E2B SDK</h2></strong>
8-
</a>
9-
</p>
10-
11-
<p align="center">
12-
<a href="https://e2b.dev/startups">
13-
<img src="https://img.shields.io/badge/SPONSORED%20BY-E2B%20FOR%20STARTUPS-ff8800?style=for-the-badge" alt="SPONSORED BY E2B FOR STARTUPS" />
14-
</a>
15-
</p>
16-
174
<p align="center">
185
<a href="https://e2b.dev/research">
19-
<img src="https://img.shields.io/badge/SPONSORED%20BY-E2B%20FOR%20STARTUPS-ff8800?style=for-the-badge" alt="SPONSORED BY E2B FOR RESEARCH" />
6+
<img src="https://img.shields.io/badge/SPONSORED%20BY-E2B%20FOR%20STARTUPS-32CD32?style=for-the-badge" alt="SPONSORED BY E2B FOR RESEARCH" />
207
</a>
218
</p>
229

@@ -262,4 +249,4 @@ npm run build
262249
263250
## Contributing
264251
265-
As an open-source project, we welcome contributions from the community. If you are experiencing any bugs or want to add some improvements, please feel free to open an issue or pull request.
252+
As an open-source project, we welcome contributions from the community. If you are experiencing any bugs or want to add some improvements, please feel free to open an issue or pull request.

components/enhanced-chat-input.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { ArrowUp, Paperclip, Square, X, AlertTriangle, RefreshCw, Github } from
1111
import { type SetStateAction, useEffect, useMemo, useState, useCallback } from "react"
1212
import TextareaAutosize from "react-textarea-autosize"
1313
import { GitHubImportModal } from "./modals/github-import-modal"
14+
import "./rainbow-animations.css"
1415

1516
interface ProjectAnalysis {
1617
structure: {
@@ -281,7 +282,7 @@ export function EnhancedChatInput({
281282
<div className="relative">
282283
<RepoBanner className="absolute bottom-full inset-x-2 translate-y-1 z-0 pb-2" />
283284
<div
284-
className={`rainbow-chat-input shadow-md rounded-2xl relative z-10 bg-background border focus-within:ring-2 focus-within:ring-primary focus-within:ring-offset-2 focus-within:ring-offset-background transition-shadow duration-200 ${
285+
className={`rainbow-chat-input rainbow-border shadow-md rounded-2xl relative z-10 bg-background focus-within:ring-2 focus-within:ring-primary focus-within:ring-offset-2 focus-within:ring-offset-background transition-shadow duration-200 ${
285286
dragActive
286287
? "before:absolute before:inset-0 before:rounded-2xl before:border-2 before:border-dashed before:border-primary"
287288
: ""
@@ -389,4 +390,4 @@ export function EnhancedChatInput({
389390
</p>
390391
</form>
391392
)
392-
}
393+
}

components/navbar.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,11 +175,14 @@ export function NavBar({
175175
<span>Profile</span>
176176
</Link>
177177
</DropdownMenuItem>
178-
178+
179+
<Link href="/settings">
179180
<DropdownMenuItem className="cursor-pointer">
180181
<Settings className="mr-2 h-4 w-4" />
181182
<span>Settings</span>
182183
</DropdownMenuItem>
184+
</Link>
185+
183186

184187
<DropdownMenuSeparator />
185188

@@ -193,10 +196,13 @@ export function NavBar({
193196
About CodinIT
194197
</DropdownMenuItem>
195198

199+
<Link href="https://github.com/Gerome-Elassaad/CodingIT">
196200
<DropdownMenuItem onClick={() => onSocialClick("github")} className="cursor-pointer">
197201
<GitHubLogoIcon className="mr-2 h-4 w-4 text-muted-foreground" />
198202
Star on GitHub
199203
</DropdownMenuItem>
204+
</Link>
205+
200206

201207
<DropdownMenuItem onClick={() => onSocialClick("discord")} className="cursor-pointer">
202208
<DiscordLogoIcon className="mr-2 h-4 w-4 text-muted-foreground" />

components/rainbow-animations.css

Lines changed: 8 additions & 179 deletions
Original file line numberDiff line numberDiff line change
@@ -1,168 +1,3 @@
1-
/* Rainbow Chat Container */
2-
.rainbow-chat-container {
3-
position: relative;
4-
padding: 2px;
5-
border-radius: 12px;
6-
background: linear-gradient(45deg, #ff0000, #ff7f00, #ffff00, #00ff00, #0000ff, #4b0082, #9400d3, #ff0000);
7-
background-size: 400% 400%;
8-
animation: rainbow-border 4s ease-in-out infinite;
9-
}
10-
11-
.rainbow-chat-inner {
12-
background: white;
13-
border-radius: 10px;
14-
overflow: hidden;
15-
}
16-
17-
.dark .rainbow-chat-inner {
18-
background: rgb(23, 23, 23);
19-
}
20-
21-
/* Rainbow Chat Input Hover Effect */
22-
.rainbow-chat-input {
23-
position: relative;
24-
transition: all 0.3s ease;
25-
}
26-
27-
.rainbow-chat-input:hover::before {
28-
content: "";
29-
position: absolute;
30-
inset: -2px;
31-
border-radius: 18px;
32-
background: linear-gradient(45deg, #ff0000, #ff7f00, #ffff00, #00ff00, #0000ff, #4b0082, #9400d3, #ff0000);
33-
background-size: 400% 400%;
34-
animation: rainbow-border 2s ease-in-out infinite;
35-
z-index: -1;
36-
opacity: 0;
37-
transition: opacity 0.3s ease;
38-
}
39-
40-
.rainbow-chat-input:hover::before {
41-
opacity: 0.8;
42-
}
43-
44-
.rainbow-chat-input:hover::after {
45-
content: "";
46-
position: absolute;
47-
inset: -6px;
48-
border-radius: 22px;
49-
background: linear-gradient(45deg, #ff0000, #ff7f00, #ffff00, #00ff00, #0000ff, #4b0082, #9400d3, #ff0000);
50-
background-size: 400% 400%;
51-
animation: rainbow-border 2s ease-in-out infinite;
52-
z-index: -2;
53-
opacity: 0;
54-
filter: blur(8px);
55-
transition: opacity 0.3s ease;
56-
}
57-
58-
.rainbow-chat-input:hover::after {
59-
opacity: 0.4;
60-
}
61-
62-
/* Enhanced glow effect for focus */
63-
.rainbow-chat-input:focus-within::before {
64-
opacity: 1;
65-
animation: rainbow-border 1.5s ease-in-out infinite;
66-
}
67-
68-
.rainbow-chat-input:focus-within::after {
69-
opacity: 0.6;
70-
animation: rainbow-border 1.5s ease-in-out infinite;
71-
}
72-
73-
/* Rainbow Button Border Only */
74-
.rainbow-button-border {
75-
position: relative;
76-
border: 2px solid transparent;
77-
border-radius: 0.5rem;
78-
animation: rainbow-border 3s linear infinite;
79-
overflow: hidden;
80-
}
81-
82-
.rainbow-button-content {
83-
border-radius: 0.375rem;
84-
background: var(--background);
85-
color: var(--foreground);
86-
border: none !important;
87-
color: #374151;
88-
transition: all 0.3s ease;
89-
}
90-
91-
.dark .rainbow-button-content {
92-
background: rgb(23, 23, 23);
93-
color: white;
94-
}
95-
96-
.rainbow-button-content:hover {
97-
background: rgba(0, 0, 0, 0.05) !important;
98-
color: #374151 !important;
99-
}
100-
101-
.dark .rainbow-button-content:hover {
102-
background: rgba(255, 255, 255, 0.1) !important;
103-
color: white !important;
104-
}
105-
106-
/* Submit Button Rainbow Border */
107-
.rainbow-submit-border {
108-
position: relative;
109-
padding: 2px;
110-
border-radius: 8px;
111-
background: linear-gradient(45deg, #ff0000, #ff7f00, #ffff00, #00ff00, #0000ff, #4b0082, #9400d3, #ff0000);
112-
background-size: 400% 400%;
113-
animation: rainbow-border 3s ease-in-out infinite;
114-
}
115-
116-
.rainbow-submit-content {
117-
background: #374151;
118-
border-radius: 6px;
119-
border: none !important;
120-
color: white;
121-
transition: all 0.3s ease;
122-
}
123-
124-
.rainbow-submit-content:hover {
125-
background: #4b5563 !important;
126-
}
127-
128-
.rainbow-submit-content:disabled {
129-
background: #9ca3af !important;
130-
color: #6b7280 !important;
131-
}
132-
133-
/* Sign In Button Rainbow Border */
134-
.rainbow-signin-border {
135-
position: relative;
136-
padding: 2px;
137-
border-radius: 8px;
138-
background: linear-gradient(45deg, #ff0000, #ff7f00, #ffff00, #00ff00, #0000ff, #4b0082, #9400d3, #ff0000);
139-
background-size: 400% 400%;
140-
animation: rainbow-border 3s ease-in-out infinite;
141-
}
142-
143-
.rainbow-signin-content {
144-
background: white;
145-
border-radius: 6px;
146-
border: none !important;
147-
color: #374151;
148-
transition: all 0.3s ease;
149-
}
150-
151-
.dark .rainbow-signin-content {
152-
background: rgb(23, 23, 23);
153-
color: white;
154-
}
155-
156-
.rainbow-signin-content:hover {
157-
background: rgba(0, 0, 0, 0.05) !important;
158-
color: #374151 !important;
159-
}
160-
161-
.dark .rainbow-signin-content:hover {
162-
background: rgba(255, 255, 255, 0.1) !important;
163-
color: white !important;
164-
}
165-
1661
/* Rainbow Border Animation */
1672
@keyframes rainbow-border {
1683
0% {
@@ -195,7 +30,7 @@
19530
}
19631
}
19732

198-
/* Pulse Animation for Enhanced Effect */
33+
/* Pulse Animation for Enhanced Effect (Used by rainbow-chat-container) */
19934
.rainbow-chat-container::before {
20035
content: "";
20136
position: absolute;
@@ -217,12 +52,10 @@
21752
.rainbow-chat-container,
21853
.rainbow-button-border,
21954
.rainbow-submit-border,
220-
.rainbow-signin-border,
221-
.rainbow-chat-input {
55+
.rainbow-signin-border {
22256
padding: 1.5px;
22357
}
224-
225-
.rainbow-chat-input:hover::after {
58+
.rainbow-chat-input::after {
22659
inset: -4px;
22760
filter: blur(6px);
22861
}
@@ -241,6 +74,11 @@
24174
background: linear-gradient(45deg, #6366f1, #8b5cf6);
24275
box-shadow: 0 0 10px rgba(99, 102, 241, 0.3);
24376
}
77+
78+
.rainbow-border {
79+
animation: none;
80+
border-color: #7c3aed;
81+
}
24482
}
24583

24684
.rainbow-border {
@@ -250,12 +88,3 @@
25088
animation: rainbow-border 4s linear infinite;
25189
overflow: hidden;
25290
}
253-
254-
/* For reduced motion preferences */
255-
@media (prefers-reduced-motion) {
256-
.rainbow-border,
257-
.rainbow-button-border {
258-
animation: none;
259-
border-color: #7c3aed;
260-
}
261-
}

0 commit comments

Comments
 (0)