create-flexireact 1.3.1 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.js +137 -22
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -1230,29 +1230,115 @@ export default function HomePage() {
1230
1230
  // Styles
1231
1231
  // ============================================================================
1232
1232
 
1233
- 'app/styles/globals.css': () => `@tailwind base;
1234
- @tailwind components;
1235
- @tailwind utilities;
1233
+ 'app/styles/globals.css': () => `/* Flexi UI Template Styles */
1236
1234
 
1237
1235
  :root {
1238
1236
  --bg: #0a0a0a;
1239
1237
  --fg: #fafafa;
1240
1238
  --primary: #00FF9C;
1239
+ --primary-dark: #10b981;
1241
1240
  --muted: #94a3b8;
1242
1241
  --border: #1e293b;
1243
1242
  --card: #0f0f0f;
1244
1243
  }
1245
1244
 
1246
- * { box-sizing: border-box; margin: 0; padding: 0; }
1245
+ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
1246
+
1247
+ html { scroll-behavior: smooth; }
1247
1248
 
1248
1249
  body {
1249
- font-family: 'Inter', system-ui, sans-serif;
1250
+ font-family: 'Inter', system-ui, -apple-system, sans-serif;
1250
1251
  background: var(--bg);
1251
1252
  color: var(--fg);
1252
1253
  min-height: 100vh;
1254
+ -webkit-font-smoothing: antialiased;
1255
+ line-height: 1.6;
1256
+ }
1257
+
1258
+ a { color: inherit; text-decoration: none; transition: color 0.2s; }
1259
+ a:hover { color: var(--primary); }
1260
+
1261
+ /* Buttons */
1262
+ button {
1263
+ font-family: inherit;
1264
+ cursor: pointer;
1265
+ }
1266
+
1267
+ .btn, [class*="btn-"] {
1268
+ display: inline-flex;
1269
+ align-items: center;
1270
+ justify-content: center;
1271
+ gap: 0.5rem;
1272
+ padding: 0.75rem 1.5rem;
1273
+ font-size: 0.9375rem;
1274
+ font-weight: 600;
1275
+ border-radius: 8px;
1276
+ transition: all 0.2s;
1277
+ border: none;
1278
+ cursor: pointer;
1253
1279
  }
1254
1280
 
1255
- a { color: inherit; text-decoration: none; }
1281
+ .btn-primary, button[class*="primary"] {
1282
+ background: linear-gradient(135deg, var(--primary), var(--primary-dark));
1283
+ color: #000;
1284
+ }
1285
+
1286
+ .btn-primary:hover, button[class*="primary"]:hover {
1287
+ transform: translateY(-2px);
1288
+ box-shadow: 0 8px 25px rgba(0, 255, 156, 0.3);
1289
+ }
1290
+
1291
+ .btn-outline, button[class*="outline"] {
1292
+ background: transparent;
1293
+ border: 1px solid var(--border);
1294
+ color: var(--fg);
1295
+ }
1296
+
1297
+ .btn-outline:hover, button[class*="outline"]:hover {
1298
+ border-color: var(--primary);
1299
+ background: rgba(0, 255, 156, 0.1);
1300
+ }
1301
+
1302
+ .btn-ghost, button[class*="ghost"] {
1303
+ background: transparent;
1304
+ border: 1px solid var(--border);
1305
+ color: var(--fg);
1306
+ }
1307
+
1308
+ .btn-ghost:hover, button[class*="ghost"]:hover {
1309
+ background: rgba(255, 255, 255, 0.05);
1310
+ border-color: var(--muted);
1311
+ }
1312
+
1313
+ .btn-sm, button[class*="sm"] {
1314
+ padding: 0.5rem 1rem;
1315
+ font-size: 0.875rem;
1316
+ }
1317
+
1318
+ /* Badge */
1319
+ [class*="badge"], .badge {
1320
+ display: inline-flex;
1321
+ align-items: center;
1322
+ padding: 0.25rem 0.75rem;
1323
+ font-size: 0.75rem;
1324
+ font-weight: 600;
1325
+ border-radius: 9999px;
1326
+ background: rgba(0, 255, 156, 0.1);
1327
+ color: var(--primary);
1328
+ border: 1px solid rgba(0, 255, 156, 0.2);
1329
+ }
1330
+
1331
+ /* Card */
1332
+ [class*="card"], .card {
1333
+ background: var(--card);
1334
+ border: 1px solid var(--border);
1335
+ border-radius: 12px;
1336
+ transition: all 0.3s;
1337
+ }
1338
+
1339
+ [class*="card"]:hover, .card:hover {
1340
+ border-color: var(--primary);
1341
+ }
1256
1342
 
1257
1343
  /* Navbar */
1258
1344
  .navbar {
@@ -1262,7 +1348,7 @@ a { color: inherit; text-decoration: none; }
1262
1348
  right: 0;
1263
1349
  z-index: 50;
1264
1350
  border-bottom: 1px solid var(--border);
1265
- background: rgba(10,10,10,0.8);
1351
+ background: rgba(10,10,10,0.85);
1266
1352
  backdrop-filter: blur(12px);
1267
1353
  }
1268
1354
  .navbar-inner {
@@ -1277,16 +1363,17 @@ a { color: inherit; text-decoration: none; }
1277
1363
  .logo-icon {
1278
1364
  width: 32px;
1279
1365
  height: 32px;
1280
- background: linear-gradient(135deg, var(--primary), #10b981);
1366
+ background: linear-gradient(135deg, var(--primary), var(--primary-dark));
1281
1367
  border-radius: 8px;
1282
1368
  display: flex;
1283
1369
  align-items: center;
1284
1370
  justify-content: center;
1285
1371
  font-weight: 900;
1372
+ font-size: 1rem;
1286
1373
  color: #000;
1287
1374
  }
1288
- .logo-text { font-weight: 700; }
1289
- .nav-links { display: flex; gap: 0.5rem; }
1375
+ .logo-text { font-weight: 700; font-size: 1.125rem; }
1376
+ .nav-links { display: flex; gap: 0.75rem; align-items: center; }
1290
1377
 
1291
1378
  /* Hero */
1292
1379
  .hero {
@@ -1295,44 +1382,51 @@ a { color: inherit; text-decoration: none; }
1295
1382
  display: flex;
1296
1383
  align-items: center;
1297
1384
  justify-content: center;
1298
- padding-top: 4rem;
1385
+ padding: 6rem 1.5rem;
1386
+ overflow: hidden;
1299
1387
  }
1300
1388
  .hero-glow {
1301
1389
  position: absolute;
1302
1390
  top: 50%;
1303
1391
  left: 50%;
1304
1392
  transform: translate(-50%, -50%);
1305
- width: 600px;
1306
- height: 600px;
1307
- background: radial-gradient(circle, rgba(0,255,156,0.15), transparent 70%);
1393
+ width: 700px;
1394
+ height: 700px;
1395
+ background: radial-gradient(circle, rgba(0,255,156,0.12), transparent 70%);
1308
1396
  pointer-events: none;
1309
1397
  }
1310
1398
  .hero-content {
1399
+ position: relative;
1400
+ z-index: 1;
1311
1401
  text-align: center;
1312
1402
  padding: 2rem;
1313
1403
  max-width: 800px;
1314
1404
  }
1315
1405
  .hero-title {
1316
- font-size: clamp(2.5rem, 6vw, 4rem);
1406
+ font-size: clamp(2.5rem, 7vw, 4.5rem);
1317
1407
  font-weight: 800;
1318
1408
  line-height: 1.1;
1409
+ letter-spacing: -0.02em;
1319
1410
  margin-bottom: 1.5rem;
1320
1411
  }
1321
1412
  .gradient-text {
1322
- background: linear-gradient(90deg, var(--primary), #10b981);
1413
+ background: linear-gradient(135deg, var(--primary), var(--primary-dark));
1323
1414
  -webkit-background-clip: text;
1324
1415
  -webkit-text-fill-color: transparent;
1416
+ background-clip: text;
1325
1417
  }
1326
1418
  .hero-subtitle {
1327
1419
  font-size: 1.125rem;
1328
1420
  color: var(--muted);
1329
1421
  line-height: 1.7;
1330
- margin-bottom: 2rem;
1422
+ max-width: 600px;
1423
+ margin: 0 auto 2.5rem;
1331
1424
  }
1332
1425
  .hero-buttons {
1333
1426
  display: flex;
1334
1427
  gap: 1rem;
1335
1428
  justify-content: center;
1429
+ flex-wrap: wrap;
1336
1430
  }
1337
1431
 
1338
1432
  /* Features */
@@ -1349,17 +1443,28 @@ a { color: inherit; text-decoration: none; }
1349
1443
  }
1350
1444
  .features-grid {
1351
1445
  display: grid;
1352
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
1446
+ grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
1353
1447
  gap: 1.5rem;
1354
1448
  }
1355
1449
  .feature-card {
1356
- padding: 1.5rem;
1450
+ padding: 1.75rem;
1357
1451
  text-align: center;
1452
+ background: var(--card);
1453
+ border: 1px solid var(--border);
1454
+ border-radius: 16px;
1455
+ transition: all 0.3s;
1456
+ }
1457
+ .feature-card:hover {
1458
+ border-color: var(--primary);
1459
+ transform: translateY(-4px);
1460
+ }
1461
+ .feature-icon {
1462
+ font-size: 2rem;
1463
+ margin-bottom: 1rem;
1464
+ display: block;
1358
1465
  }
1359
- .feature-card:hover { border-color: var(--primary); }
1360
- .feature-icon { font-size: 2rem; margin-bottom: 1rem; }
1361
1466
  .feature-card h3 { font-weight: 600; margin-bottom: 0.5rem; }
1362
- .feature-card p { color: var(--muted); font-size: 0.875rem; }
1467
+ .feature-card p { color: var(--muted); font-size: 0.9375rem; line-height: 1.6; }
1363
1468
 
1364
1469
  /* Footer */
1365
1470
  .footer {
@@ -1367,12 +1472,22 @@ a { color: inherit; text-decoration: none; }
1367
1472
  padding: 2rem 1.5rem;
1368
1473
  display: flex;
1369
1474
  justify-content: space-between;
1475
+ align-items: center;
1370
1476
  max-width: 1200px;
1371
1477
  margin: 0 auto;
1372
1478
  color: var(--muted);
1373
1479
  font-size: 0.875rem;
1374
1480
  }
1375
1481
  .footer a:hover { color: var(--primary); }
1482
+
1483
+ /* Responsive */
1484
+ @media (max-width: 768px) {
1485
+ .nav-links { display: none; }
1486
+ .hero { min-height: auto; padding: 8rem 1.5rem 4rem; }
1487
+ .hero-buttons { flex-direction: column; align-items: center; }
1488
+ .hero-buttons button, .hero-buttons a { width: 100%; }
1489
+ .footer { flex-direction: column; gap: 1rem; text-align: center; }
1490
+ }
1376
1491
  `,
1377
1492
 
1378
1493
  // ============================================================================
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-flexireact",
3
- "version": "1.3.1",
3
+ "version": "1.3.2",
4
4
  "description": "Create FlexiReact apps with one command - The Modern React Framework",
5
5
  "author": "FlexiReact Team",
6
6
  "license": "MIT",