Professional Documents
Culture Documents
WT Project
WT Project
WT Project
In today's fast-paced world, owning a car has become more of a necessity than a
luxury. However, with the convenience of owning a vehicle comes the responsibility of
its maintenance. Neglecting regular maintenance not only decreases the lifespan of
your car but also poses safety risks to you and other road users.
Whether it's commuting to work, running errands, or embarking on road trips, cars
play a significant role in facilitating mobility and convenience. However, with the
privilege of vehicle ownership comes the responsibility of proper maintenance to
ensure safety, reliability, and longevity. Unfortunately, keeping track of regular
maintenance tasks, service schedules, and repairs can be daunting and often
overlooked, leading to potential safety hazards and costly repairs down the line.
Keeping track of past maintenance and repair records is crucial for understanding
your vehicle's history and identifying recurring issues. AutoCare enables users to
maintain a comprehensive service history log, including details such as dates, mileage,
services performed, and associated costs. This feature not only facilitates better
decision-making but also enhances resale value by demonstrating diligent upkeep.
1
PROBLEM STATEMENT
Many busy dads struggle to stay organized and proactive when it comes to
maintaining their vehicles due to time constraints, competing priorities, and a lack of
streamlined tools and resources. Without a convenient and efficient way to manage
car maintenance tasks, these individuals risk overlooking essential services, leading to
potential safety hazards, costly repairs, and unnecessary stress.
AutoCare will provide busy dads with a centralized platform to manage all aspects of
car maintenance, including scheduling, reminders, service history tracking, and
expense management.Enhance Accessibility: The app will offer intuitive features and a
user-friendly interface accessible via smartphones, ensuring convenience and ease of
use for dads on the go.
2
IMPLEMENTATION
MAIN SCREEN:
class Car:
def _init_(self, make, model, year):
self.make = make
self.model = model
self.year = year
self.mileage = 0
self.service_history = []
def get_service_history(self):
return self.service_history
class MaintenanceApp:
def _init_(self):
self.cars = {}
3
self.cars[car_name].add_service(service)
else:
print("Car not found.")
# Example usage:
app = MaintenanceApp()
app.add_car("Toyota", "Camry", 2015)
app.add_car("Honda", "Accord", 2018)
app.show_service_history("Toyota Camry")
app.show_service_history("Honda Accord")
HOME SCREEN:
4
class CarMaintenanceApp:
def _init_(self, root):
self.root = root
self.root.title("Car Maintenance App")
def add_new_car(self):
# Add functionality to add a new car
pass
def record_service(self):
# Add functionality to record a service
pass
5
def show_service_history(self):
# Add functionality to show service history
pass
root = tk.Tk()
app = CarMaintenanceApp(root)
root.mainloop()
}
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
darkTheme: darkTheme,
theme: lightTheme,
home: home(),
)
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Theme.of(context).colorScheme.primary,
appBar: AppBar(
title: Text("Home"),
),
6
Padding(padding: EdgeInsets.fromLTRB(90, 400, 90, 0)),
ListTile(
title: const Text('About'),
onTap: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => aboutus()),
);
},
),
ListView.builder(
itemCount: users.length,
itemBuilder: (context, index) {
final user = users[index];
return Container(
margin: const EdgeInsets.all(7.0),
width: double.infinity,
decoration: BoxDecoration(
color: Theme.of(context).colorScheme.background,
borderRadius: BorderRadius.all(
Radius.circular(20),
),
),
icon: Icon(Icons.arrow_forward_ios),
onPressed: () async {
var url = Uri.parse(user.homeurl);
if (await canLaunchUrl(url)) {
await launchUrl(url,
mode: LaunchMode.externalApplication);
} else {
7
throw 'Could not launch $url';
}
8
),
child: ListTile(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(20),
),
title: Text(
Result[index]['title']['__cdata'],
style: TextStyle(
fontSize: 16, fontWeight: FontWeight.w500),
),
subtitle:
Text(Result[index]['description']['__cdata']),
trailing: Padding(
padding: EdgeInsets.fromLTRB(0, 0, 0, 0),
child: IconButton(
icon: Icon(Icons.arrow_forward_ios),
onPressed: () async {
var url = Uri.parse(
Result[index]['guid']['\$t'].toString());
if (await canLaunchUrl(url)) {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
WebPageViewer(url: url.toString())),
);
} else {
throw 'Could not launch $url';
}
9
},
color: Color.fromARGB(143, 60, 177, 231),
),
)));
}
NAVIGATION SCREEN:
import 'package:flutter/material.dart';
import 'package:practicenews/facts.dart';
import 'package:practicenews/news.dart';
import 'package:practicenews/home.dart';
10
backgroundColor: Theme.of(context).colorScheme.secondary,
),
BottomNavigationBarItem(
icon: Icon(Icons.newspaper),
label: 'News',
backgroundColor: Theme.of(context).colorScheme.secondary,
),
BottomNavigationBarItem(
icon: Icon(Icons.strikethrough_s),
label: 'Tricks',
backgroundColor: Theme.of(context).colorScheme.secondary,
}
}
SETTINGS SCREEN:
import 'package:flutter/material.dart';
import 'package:practicenews/about.dart';
import 'package:practicenews/login.dart';
import 'package:firebase_auth/firebase_auth.dart'
class settings extends StatefulWidget {
const settings({super.key});
@override
State<settings> createState() => _settingsState();
}
@override
Widget build(BuildContext context) {
bool isEmailverified = false;
11
void initState() {
super.initState();
isEmailverified = FirebaseAuth.instance.currentUser!.emailVerified;
if (!isEmailverified) {}
}
return Scaffold(
backgroundColor: Theme.of(context).colorScheme.primary,
appBar: AppBar(
title: Text("Settings"),
),
const Divider(
thickness: 1,
color: Colors.black,
),
Padding(padding: EdgeInsets.fromLTRB(90, 440, 90, 0)),
ListTile(
title: const Text('About'),
onTap: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => aboutus()),
);
},
),
body: SingleChildScrollView(
child: Column(
children: [
Container(
12
padding: EdgeInsets.fromLTRB(0, 20, 150, 0),
child: Text(
"Account",
style: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w500,
color: const Color.fromARGB(151, 33, 149, 243)),
),
),
Container(
padding: EdgeInsets.fromLTRB(0, 20, 150, 0),
child: Text(
"Email",
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w400),
),
),
Container(
padding: EdgeInsets.fromLTRB(0, 10, 0, 0),
child: Text(
email.toString(),
style: TextStyle(
fontSize: 16,
color: const Color.fromARGB(178, 33, 149, 243)),
),
),
Container(
padding: EdgeInsets.fromLTRB(10, 20, 150, 0),
child: Text(
"Sign out",
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w400),
),
13
),
Container(
padding: EdgeInsets.fromLTRB(10, 20, 140, 0),
child: ElevatedButton(
onPressed: () {
FirebaseAuth.instance.signOut();
displayToastMessage(
"SignOut was done successfully", context);
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (context) => Login()),
(route) => false);
},
child: Text('SignOut'),
style: ElevatedButton.styleFrom(
backgroundColor: Theme.of(context).colorScheme.secondary,
),
)),
SizedBox(
height: 50,
),
Container(
padding: EdgeInsets.fromLTRB(30, 20, 110, 0),
child: ElevatedButton(
child: Text("Reset Password"),
onPressed: passwordReset,
style: ElevatedButton.styleFrom(
backgroundColor: Theme.of(context).colorScheme.secondary,
),
)),
Container(
14
padding: EdgeInsets.fromLTRB(20, 20, 110, 0),
child: Text(
"Delete Account",
style: TextStyle(fontSize: 16, fontWeight: FontWeight.w400),
),
),
Container(
padding: EdgeInsets.fromLTRB(20, 20, 110, 0),
child: ElevatedButton(
onPressed: Delete,
child: Text(
"Delete Account",
),
style: ElevatedButton.styleFrom(
backgroundColor: Theme.of(context).colorScheme.secondary,
}
ABOUT SCREEN:
import 'package:flutter/material.dart';
import 'package:practicenews/settings.dart';
@override
State<aboutus> createState() => _aboutusState();
}
15
backgroundColor: Theme.of(context).colorScheme.primary,
appBar: AppBar(
title: Text("BtechNews"),
),
drawer: Drawer(
width: 220,
child: ListView(
padding: EdgeInsets.all(0),
children: [
Container(
height: 200,
child: DrawerHeader(
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.fill,
image: AssetImage('assets/image/logo.jpeg'))),
child: Text(""),
),
),
body: Padding(
padding: const EdgeInsets.all(0),
child: Center(
child: SingleChildScrollView(
child: Column(children: [
Container(
padding: EdgeInsets.fromLTRB(0, 20, 0, 0),
child: Text("About ",
style: TextStyle(
fontWeight: FontWeight.w500,
fontSize: 20,
))),
16
TextSpan(
text: 'HOME:',
style: TextStyle(
fontSize: 20,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
text:
"The central hub of the app, where students can find updates, announcements,
and featured content related to the Btech field. This section provides easy navigation to other
sections within the app.\n\n",
style: TextStyle(
fontSize: 15,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
text: 'NEWS:',
style: TextStyle(
fontSize: 20,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
style: TextStyle(
fontSize: 15,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
17
text: 'TRICKS:',
style: TextStyle(
fontSize: 20,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
style: TextStyle(
fontSize: 15,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
text: 'TIPS:',
style: TextStyle(
fontSize: 20,
color: Theme.of(context).colorScheme.secondary,
),
),
TextSpan(
TextSpan(
text ),
18
19
20
CONCLUSION
21
In conclusion, the development of a car maintenance app offers a practical solution to the
challenges faced by busy individuals in managing their vehicle upkeep effectively. Through
the integration of intuitive features, streamlined processes, and accessible technology, the
app aims to empower users to prioritize safety, reliability, and longevity in their vehicle
ownership experience.
By leveraging the capabilities of modern mobile platforms and web technologies, the car
maintenance app provides a user-friendly interface that simplifies tasks such as scheduling
maintenance, tracking service history, receiving reminders, and managing expenses. This not
only saves valuable time and effort but also promotes proactive maintenance practices,
ultimately leading to cost savings and enhanced vehicle performance.
Furthermore, the app serves as a valuable educational resource, offering maintenance tips,
guidelines, and resources to empower users with the knowledge needed to make informed
decisions about their vehicle care. By fostering a culture of awareness and responsibility, the
app contributes to safer roads, reduced environmental impact, and improved overall vehicle
maintenance standards.
In summary, the car maintenance app represents a significant step towards modernizing and
optimizing the way individuals manage their vehicles. Whether it's for busy parents,
professionals, or automotive enthusiasts, the app serves as a trusted companion in ensuring
that vehicles remain safe, reliable, and well-maintained for years to come. As technology
continues to evolve, so too will the capabilities and effectiveness of car maintenance apps,
driving positive change in the automotive industry and beyond.
FUTURE WORK
22
1. Integration of IoT Devices: Incorporate Internet of Things (IoT) technology to
enable real-time monitoring of vehicle diagnostics, performance metrics, and
sensor data. This would allow for predictive maintenance, early fault detection,
and remote troubleshooting, enhancing overall vehicle health management.
2. Enhanced Analytics and Reporting: Develop advanced analytics capabilities to
analyze maintenance trends, identify patterns, and generate insightful reports.
This would help users make data-driven decisions, optimize maintenance
schedules, and identify areas for improvement.
3. Augmented Reality (AR) Features: Integrate AR functionality to provide
interactive guides and tutorials for performing DIY maintenance tasks. Users
could visualize step-by-step instructions overlaid onto their vehicle
components, facilitating easier and more accurate repairs.
REFERENCES
Here are some reference books on car maintenance that cover various aspects of vehicle care,
repair, and maintenance:
*"Haynes Repair Manuals"*: These manuals are renowned for providing detailed
instructions and illustrations for repairing and maintaining specific vehicle models. They
cover topics ranging from basic maintenance tasks to complex repairs. You can find Haynes
manuals for most car makes and models.
*"Auto Repair For Dummies" by Deanna Sclar*: This book is designed for beginners and
covers a wide range of topics, including basic maintenance, troubleshooting common
problems, and performing simple repairs. It's written in an easy-to-understand language with
clear explanations and illustrations.
23