diff --git a/frontend/src/components/landing/About.tsx b/frontend/src/components/landing/About.tsx
new file mode 100644
index 0000000..2d896ce
--- /dev/null
+++ b/frontend/src/components/landing/About.tsx
@@ -0,0 +1,42 @@
+import { motion } from 'framer-motion';
+
+export function About() {
+ return (
+
+
+
+ About The Project
+
+
+
+ An Open Source AI Coding Workspace
+
+
+
+
+ Bolty is a community-driven clone inspired by bolt.new .
+ It empowers developers to build, run, and deploy full-stack applications without leaving the browser.
+ By leveraging advanced AI models, Bolty turns natural language prompts into production-ready code,
+ making rapid prototyping and development accessible to everyone.
+
+
+
+
+ );
+}
diff --git a/frontend/src/components/landing/Features.tsx b/frontend/src/components/landing/Features.tsx
new file mode 100644
index 0000000..3f860e5
--- /dev/null
+++ b/frontend/src/components/landing/Features.tsx
@@ -0,0 +1,80 @@
+import { motion } from 'framer-motion';
+
+// Shadcn-like minimal card with Hover Effect
+function FeatureCard({ title, description, className = "" }: any) {
+ return (
+
- {/* Grid Background */}
-
-
-
-
- {/* ========== NAVIGATION ========== */}
-
- {/* Logo - Left */}
-
-
- {/* Theme Toggle - Right */}
- setIsDarkMode(!isDarkMode)}
- style={{
- width: '40px',
- height: '40px',
- borderRadius: '50%',
- backgroundColor: isDarkMode ? '#27272a' : '#e4e4e7',
- border: 'none',
- display: 'flex',
- alignItems: 'center',
- justifyContent: 'center',
- cursor: 'pointer',
- transition: 'all 0.2s ease',
- }}
- aria-label="Toggle theme"
- >
- {isDarkMode ? (
-
- ) : (
-
- )}
-
-
-
- {/* ========== MAIN CONTENT ========== */}
-
-
-
- {/* ===== HERO TEXT ===== */}
-
-
- What will you build today?
-
-
- Describe your idea and watch it come to life.
-
-
-
- {/* ===== INPUT BOX - ALL INLINE STYLES ===== */}
-
-
- {/* ===== SUGGESTION CHIPS ===== */}
-
- Try:
- {suggestions.map((suggestion, i) => (
- setPrompt(suggestion)}
- style={{
- padding: '4px 12px',
- borderRadius: '8px',
- fontSize: '12px',
- color: isDarkMode ? '#a1a1aa' : '#52525b',
- backgroundColor: isDarkMode ? '#18181b' : '#ffffff',
- border: `1px solid ${isDarkMode ? '#27272a' : '#e4e4e7'}`,
- cursor: 'pointer',
- transition: 'all 0.2s ease',
- }}
- >
- {suggestion}
-
- ))}
-
-
-
-
-
-
+
+
+
+
+ {/* Keeping these sections as they fit the mood, maybe refactor later if requested */}
+
+
+
+
+
);
}
\ No newline at end of file
diff --git a/frontend/tailwind.config.ts b/frontend/tailwind.config.ts
index 35d75f0..d44bd8d 100644
--- a/frontend/tailwind.config.ts
+++ b/frontend/tailwind.config.ts
@@ -19,25 +19,30 @@ const config: Config = {
border: 'rgba(255, 255, 255, 0.1)',
'border-strong': 'rgba(255, 255, 255, 0.15)',
},
- // Primary accent: Burnt Orange
- primary: {
- 50: '#fef7ee',
- 100: '#fdecd3',
- 200: '#fad4a5',
- 300: '#f7b66d',
- 400: '#f48d32',
- 500: '#f17013', // Main burnt orange
- 600: '#e25809',
- 700: '#bb420a',
- 800: '#95350f',
- 900: '#792d10',
+ // Primary accent: Electric Blue & Neon Green
+ electric: {
+ 50: '#eff6ff',
+ 100: '#dbeafe',
+ 200: '#bfdbfe',
+ 300: '#93c5fd',
+ 400: '#60a5fa',
+ 500: '#3b82f6', // Main Electric Blue
+ 600: '#2563eb',
+ 700: '#1d4ed8',
+ 800: '#1e40af',
+ 900: '#1e3a8a',
+ },
+ neon: {
+ 400: '#4ade80',
+ 500: '#22c55e', // Main Neon Green
+ 600: '#16a34a',
},
// Deep charcoal backgrounds
charcoal: {
- 900: '#18181b',
- 800: '#27272a',
- 700: '#3f3f46',
- 600: '#52525b',
+ 900: '#09090b', // Darker base
+ 800: '#18181b',
+ 700: '#27272a',
+ 600: '#3f3f46',
},
},
backdropBlur: {
@@ -55,6 +60,7 @@ const config: Config = {
'slide-up': 'slideUp 0.3s ease-out',
'slide-down': 'slideDown 0.3s ease-out',
'glass-shimmer': 'glassShimmer 2s ease-in-out infinite',
+ 'aurora': 'aurora 6s linear infinite',
},
keyframes: {
fadeIn: {
@@ -73,6 +79,10 @@ const config: Config = {
'0%, 100%': { backgroundPosition: '0% 50%' },
'50%': { backgroundPosition: '100% 50%' },
},
+ aurora: {
+ '0%': { backgroundPosition: '50% 50%, 50% 50%' },
+ '100%': { backgroundPosition: '350% 50%, 350% 50%' },
+ },
},
},
},
diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts
index 80dc95a..57f67a4 100644
--- a/frontend/vite.config.ts
+++ b/frontend/vite.config.ts
@@ -9,6 +9,7 @@ export default defineConfig({
tailwindcss(),
],
server: {
+ port: 3000,
headers: {
"Cross-Origin-Embedder-Policy": "require-corp",
"Cross-Origin-Opener-Policy": "same-origin"