Files
mobile-app/lib/features/home/presentation/widgets/features_section.dart

130 lines
4.5 KiB
Dart
Raw Normal View History

import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:real_estate_mobile/core/constants/app_colors.dart';
class FeaturesSection extends StatelessWidget {
const FeaturesSection({super.key});
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 24),
child: Column(
children: [
const Text(
'Find Trusted Real Estate Professionals On Demand',
textAlign: TextAlign.center,
style: TextStyle(
fontFamily: 'Fractul',
fontSize: 25,
fontWeight: FontWeight.w700,
color: AppColors.primaryDark,
),
),
const SizedBox(height: 8),
const Text(
'Quickly connect with the right agents exactly when you need them.',
textAlign: TextAlign.center,
style: TextStyle(
fontFamily: 'SourceSerif4',
fontSize: 14,
fontWeight: FontWeight.w400,
color: AppColors.primaryDark,
),
),
const SizedBox(height: 24),
_buildFeatureCard(
icon: 'assets/icons/hire_quickly_icon.svg',
fallbackIcon: Icons.bolt,
title: 'Hire Quickly',
description:
'Connect with experienced local real estate agents who match your needs and preferences. Our simple process helps you get started quickly and move forward without delays or unnecessary complexity.',
),
const SizedBox(height: 12),
_buildFeatureCard(
icon: 'assets/icons/verified_icon.svg',
fallbackIcon: Icons.verified_user_outlined,
title: 'Verified Agents',
description:
'All agents are carefully identity-verified and background-checked to ensure trust and safety. You can confidently work with professionals who meet quality and reliability standards.',
),
const SizedBox(height: 12),
_buildFeatureCard(
icon: 'assets/icons/top_rated_icon.svg',
fallbackIcon: Icons.star_outline,
title: 'Top Rated',
description:
'Work with highly rated agents known for strong expertise and positive client feedback. Their consistent performance helps you make informed and confident property decisions.',
),
const SizedBox(height: 12),
_buildFeatureCard(
icon: 'assets/icons/trusted_icon.svg',
fallbackIcon: Icons.people_outline,
title: 'Trusted by Thousands',
description:
'Thousands of buyers, sellers, and renters trust our platform to connect with reliable, verified agents. Our experienced professionals support every step of the property journey, helping users make confident decisions with clarity, trust, and ease.',
),
],
),
);
}
Widget _buildFeatureCard({
required String icon,
required IconData fallbackIcon,
required String title,
required String description,
}) {
return Container(
width: double.infinity,
padding: const EdgeInsets.all(20),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15),
border: Border.all(
color: AppColors.primaryDark,
width: 0.1,
),
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
SvgPicture.asset(
icon,
width: 35,
height: 35,
placeholderBuilder: (_) => Icon(
fallbackIcon,
size: 35,
color: AppColors.accentOrange,
),
),
const SizedBox(width: 12),
Text(
title,
style: const TextStyle(
fontFamily: 'Fractul',
fontSize: 20,
fontWeight: FontWeight.w600,
color: AppColors.primaryDark,
),
),
],
),
const SizedBox(height: 12),
Text(
description,
style: const TextStyle(
fontFamily: 'SourceSerif4',
fontSize: 14,
fontWeight: FontWeight.w400,
color: AppColors.primaryDark,
),
),
],
),
);
}
}