blob: 844083e2e7edf671c0a4fcdd315b1dfb99beac0a [file] [edit]
import 'package:flutter/material.dart';
class ProfileScreen extends StatelessWidget {
const ProfileScreen({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: const Color(0xFFF5F5F5),
appBar: AppBar(
title: const Text('My Profile'),
),
body: Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_buildHeader(),
const SizedBox(height: 20),
_buildSkillsSection(),
const SizedBox(height: 20),
_buildAboutSection(),
],
),
),
);
}
Widget _buildHeader() {
return Container(
padding: const EdgeInsets.all(16),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(12),
boxShadow: const [
BoxShadow(
color: Color(0x0D000000),
blurRadius: 10,
offset: Offset(0, 2),
),
],
),
child: Row(
children: [
const CircleAvatar(
radius: 30,
backgroundColor: Color(0xFF6C63FF),
child: Text(
'AK',
style: TextStyle(color: Colors.white, fontSize: 20),
),
),
const SizedBox(width: 12),
SizedBox(
width: 160,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
'Alexandra Konstantinopoulou',
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.bold,
),
),
const SizedBox(height: 4),
Text(
'Senior Flutter Developer & UX Designer',
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: TextStyle(fontSize: 14, color: Colors.grey[600]),
),
],
),
),
],
),
);
}
Widget _buildSkillsSection() {
return Container(
padding: const EdgeInsets.all(16),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(12),
boxShadow: const [
BoxShadow(
color: Color(0x0D000000),
blurRadius: 10,
offset: Offset(0, 2),
),
],
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
'Skills',
style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
const SizedBox(height: 12),
SingleChildScrollView(
scrollDirection: Axis.horizontal,
physics: const NeverScrollableScrollPhysics(),
child: Row(
children: [
_buildSkillChip('Flutter'),
_buildSkillChip('Dart'),
_buildSkillChip('Firebase'),
_buildSkillChip('UI/UX Design'),
_buildSkillChip('GraphQL'),
_buildSkillChip('State Mgmt'),
_buildSkillChip('CI/CD'),
],
),
),
],
),
);
}
Widget _buildSkillChip(String label) {
return Padding(
padding: const EdgeInsets.only(right: 8),
child: Chip(
label: Text(label, style: const TextStyle(fontSize: 12)),
backgroundColor: const Color(0xFFEDE7F6),
side: BorderSide.none,
padding: const EdgeInsets.symmetric(horizontal: 4),
),
);
}
Widget _buildAboutSection() {
return Container(
height: 120,
clipBehavior: Clip.hardEdge,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(12),
boxShadow: const [
BoxShadow(
color: Color(0x0D000000),
blurRadius: 10,
offset: Offset(0, 2),
),
],
),
child: SingleChildScrollView(
physics: const NeverScrollableScrollPhysics(),
padding: const EdgeInsets.all(16),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
'About Me',
style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
const SizedBox(height: 8),
const Text(
'Passionate Flutter developer with 5+ years of experience '
'building beautiful, responsive mobile applications. I love '
'creating intuitive user interfaces and exploring new design '
'patterns.',
),
const SizedBox(height: 12),
const Text(
'Currently working on cutting-edge projects involving AI '
'integration, real-time collaboration, and cross-platform '
'development.',
),
const SizedBox(height: 12),
Row(
children: [
Icon(Icons.location_on, size: 16, color: Colors.grey[500]),
const SizedBox(width: 4),
Text(
'San Francisco, CA',
style: TextStyle(color: Colors.grey[600], fontSize: 13),
),
],
),
],
),
),
);
}
}