TKK_E32231651/lib/early_screen.dart

228 lines
8.4 KiB
Dart

import 'package:flutter/material.dart';
import 'login_screen.dart';
import 'register_screen.dart';
class EarlyScreen extends StatelessWidget {
const EarlyScreen({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
decoration: const BoxDecoration(
image: DecorationImage(
image: AssetImage("assets/coffe.jpg"),
fit: BoxFit.cover,
),
),
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [
Colors.black.withOpacity(0.6),
Colors.black.withOpacity(0.4),
Colors.transparent,
Colors.black.withOpacity(0.3),
Colors.black.withOpacity(0.7),
],
stops: const [0.0, 0.2, 0.5, 0.8, 1.0],
),
),
child: SafeArea(
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 24),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const SizedBox(height: 60),
// Logo atau Brand dengan efek
Container(
padding: const EdgeInsets.all(12),
decoration: BoxDecoration(
border: Border.all(
color: Colors.white.withOpacity(0.3),
width: 1,
),
borderRadius: BorderRadius.circular(20),
),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
Container(
padding: const EdgeInsets.all(8),
decoration: BoxDecoration(
color: Colors.white.withOpacity(0.2),
borderRadius: BorderRadius.circular(12),
),
child: const Icon(
Icons.coffee,
color: Colors.white,
size: 24,
),
),
const SizedBox(width: 12),
const Text(
"Kopikaocare",
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.bold,
color: Colors.white,
letterSpacing: 1,
),
),
],
),
),
const Spacer(),
// Main Title
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"Welcome to",
style: TextStyle(
fontSize: 16,
color: Colors.white70,
letterSpacing: 2,
),
),
const SizedBox(height: 8),
ShaderMask(
shaderCallback: (bounds) => const LinearGradient(
colors: [Colors.white, Colors.white70],
).createShader(bounds),
child: const Text(
"Kopikaocare",
style: TextStyle(
fontSize: 48,
fontWeight: FontWeight.bold,
color: Colors.white,
letterSpacing: 1,
),
),
),
const SizedBox(height: 16),
Container(
width: 60,
height: 3,
color: Colors.white.withOpacity(0.5),
),
const SizedBox(height: 16),
const Text(
"Smart Care for Coffee & Cocoa",
style: TextStyle(
fontSize: 18,
color: Colors.white70,
letterSpacing: 0.5,
),
),
],
),
const SizedBox(height: 40),
// Tombol Sign In
SizedBox(
width: double.infinity,
height: 55,
child: ElevatedButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const LoginScreen(),
),
);
},
style: ElevatedButton.styleFrom(
backgroundColor: Colors.white,
foregroundColor: Colors.red.shade700,
elevation: 0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(15),
),
),
child: const Text(
"Sign In",
style: TextStyle(
fontSize: 16,
fontWeight: FontWeight.bold,
letterSpacing: 1,
),
),
),
),
const SizedBox(height: 16),
// Tombol Create Account
SizedBox(
width: double.infinity,
height: 55,
child: OutlinedButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const RegisterScreen(),
),
);
},
style: OutlinedButton.styleFrom(
foregroundColor: Colors.white,
side: BorderSide(
color: Colors.white.withOpacity(0.5),
width: 1.5,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(15),
),
),
child: const Text(
"Create Account",
style: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w500,
letterSpacing: 1,
),
),
),
),
const SizedBox(height: 30),
// Footer text
Center(
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
width: 30,
height: 1,
color: Colors.white.withOpacity(0.3),
),
const SizedBox(width: 10),
Text(
"Kopi Kesehatan Anda",
style: TextStyle(
fontSize: 12,
color: Colors.white.withOpacity(0.5),
letterSpacing: 1,
),
),
const SizedBox(width: 10),
Container(
width: 30,
height: 1,
color: Colors.white.withOpacity(0.3),
),
],
),
),
const SizedBox(height: 30),
],
),
),
),
),
),
);
}
}