diff --git a/lib/main.dart b/lib/main.dart
index 9501fd9..d4a79ae 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -1,7 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter/services.dart';
+import 'package:hacktoberxmlsa_app/providers/theme_provider.dart';
 import 'package:hacktoberxmlsa_app/providers/userProfile.dart';
 import 'package:hacktoberxmlsa_app/services/colors.dart';
+import 'package:hacktoberxmlsa_app/theme.dart';
 import 'package:hacktoberxmlsa_app/views/homePage.dart';
 import 'package:hacktoberxmlsa_app/views/splashScreen.dart';
 import 'package:provider/provider.dart';
@@ -14,6 +16,7 @@ void main() {
   runApp(
     MultiProvider(
       providers: [
+        ChangeNotifierProvider(create: (_) => ThemeProvider()),
         ChangeNotifierProvider(create: (_) => UserProfileProvider()),
       ],
       child: MyApp(),
@@ -26,18 +29,18 @@ class MyApp extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    final ThemeData systemDarkTheme = ThemeData.dark();
-
-    return MaterialApp(
-      debugShowCheckedModeBanner: false,
-      theme: systemDarkTheme.copyWith(
-        primaryColor: primaryColorDark,
-      ),
-      initialRoute: '/splash',
-      routes: {
-        '/': (context) => const HomePage(),
-        '/splash': (context) => SplashScreen(),
-      },
-    );
+    return Consumer<ThemeProvider>(builder: (context, themeProvider, child) {
+      return MaterialApp(
+        debugShowCheckedModeBanner: false,
+        theme: lightTheme,
+        darkTheme: darkTheme,
+        themeMode: themeProvider.currentTheme,
+        initialRoute: '/splash',
+        routes: {
+          '/': (context) => const HomePage(),
+          '/splash': (context) => SplashScreen(),
+        },
+      );
+    });
   }
 }
diff --git a/lib/providers/theme_provider.dart b/lib/providers/theme_provider.dart
new file mode 100644
index 0000000..533122a
--- /dev/null
+++ b/lib/providers/theme_provider.dart
@@ -0,0 +1,15 @@
+import 'package:flutter/material.dart';
+
+class ThemeProvider extends ChangeNotifier {
+  bool _isLightTheme = true;
+
+  bool get isLightTheme => _isLightTheme;
+
+  ThemeMode get currentTheme =>
+      _isLightTheme ? ThemeMode.light : ThemeMode.dark;
+
+  void toggleTheme() {
+    _isLightTheme = !_isLightTheme;
+    notifyListeners();
+  }
+}
diff --git a/lib/theme.dart b/lib/theme.dart
new file mode 100644
index 0000000..859f6d1
--- /dev/null
+++ b/lib/theme.dart
@@ -0,0 +1,21 @@
+import 'package:flutter/material.dart';
+
+final ThemeData lightTheme = ThemeData(
+  primaryColor: Colors.blue,
+  scaffoldBackgroundColor: Colors.white,
+  brightness: Brightness.light,
+  appBarTheme: AppBarTheme(
+    color: Colors.blue,
+    iconTheme: IconThemeData(color: Colors.white),
+  ),
+);
+
+final ThemeData darkTheme = ThemeData(
+  primaryColor: Colors.black,
+  scaffoldBackgroundColor: Colors.grey[900],
+  brightness: Brightness.dark,
+  appBarTheme: AppBarTheme(
+    color: Colors.black,
+    iconTheme: IconThemeData(color: Colors.white),
+  ),
+);
diff --git a/lib/views/homePage.dart b/lib/views/homePage.dart
index 391b9ff..421d14c 100644
--- a/lib/views/homePage.dart
+++ b/lib/views/homePage.dart
@@ -1,8 +1,10 @@
 import 'package:flutter/material.dart';
+import 'package:hacktoberxmlsa_app/providers/theme_provider.dart';
 import 'package:hacktoberxmlsa_app/services/colors.dart';
 import 'package:hacktoberxmlsa_app/views/noteCard.dart';
 import 'package:hacktoberxmlsa_app/views/notePage.dart';
 import 'package:hacktoberxmlsa_app/views/profile.dart';
+import 'package:provider/provider.dart';
 
 class HomePage extends StatefulWidget {
   const HomePage({super.key});
@@ -37,18 +39,32 @@ class _HomePageState extends State<HomePage> {
               ),
               GestureDetector(
                 onTap: () {
-                  Navigator.pushReplacement(context, MaterialPageRoute(builder: (context) {
+                  Navigator.pushReplacement(context,
+                      MaterialPageRoute(builder: (context) {
                     return ProfilePage();
                   }));
                 },
                 child: CircleAvatar(
-                  foregroundImage: NetworkImage('https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRnDNmpgYnTP4ELmIob69uKE1O0Rbrotna00g&s'),
+                  foregroundImage: NetworkImage(
+                      'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRnDNmpgYnTP4ELmIob69uKE1O0Rbrotna00g&s'),
                   radius: screenWidth * 0.05,
                 ),
               ),
             ],
           ),
         ),
+        actions: [
+          IconButton(
+            icon: Icon(
+              Provider.of<ThemeProvider>(context).isLightTheme
+                  ? Icons.light_mode
+                  : Icons.dark_mode,
+            ),
+            onPressed: () {
+              Provider.of<ThemeProvider>(context, listen: false).toggleTheme();
+            },
+          ),
+        ],
       ),
       body: Stack(
         children: [
@@ -68,7 +84,8 @@ class _HomePageState extends State<HomePage> {
                   },
                   decoration: InputDecoration(
                       filled: false,
-                      contentPadding: EdgeInsets.symmetric(vertical: 10, horizontal: 20),
+                      contentPadding:
+                          EdgeInsets.symmetric(vertical: 10, horizontal: 20),
                       labelStyle: TextStyle(
                         color: Colors.white,
                       ),
@@ -78,7 +95,9 @@ class _HomePageState extends State<HomePage> {
                         borderSide: BorderSide(width: 2, color: purple),
                       ),
                       hintText: 'Search your notes here',
-                      hintStyle: TextStyle(color: Colors.white60, fontWeight: FontWeight.normal)),
+                      hintStyle: TextStyle(
+                          color: Colors.white60,
+                          fontWeight: FontWeight.normal)),
                 ),
                 SizedBox(
                   height: screenHeight * 0.02,
@@ -102,14 +121,16 @@ class _HomePageState extends State<HomePage> {
                         padding: const EdgeInsets.all(8.0),
                         child: NoteCard(
                             noteTitle: 'Note ${index + 1}',
-                            noteContent: 'This is the content of note ${index + 1}',
+                            noteContent:
+                                'This is the content of note ${index + 1}',
                             onTap: () {
                               Navigator.push(
                                   context,
                                   MaterialPageRoute(
                                       builder: (context) => NotePage(
                                             title: 'Note ${index + 1}',
-                                            content: 'This is the content of note ${index + 1}',
+                                            content:
+                                                'This is the content of note ${index + 1}',
                                           )));
                             }),
                       );
@@ -141,11 +162,13 @@ class _HomePageState extends State<HomePage> {
                               MaterialPageRoute(
                                   builder: (context) => NotePage(
                                         title: 'Note ${index + 1}',
-                                        content: 'This is the content of note ${index + 1}',
+                                        content:
+                                            'This is the content of note ${index + 1}',
                                       )));
                         },
                         noteTitle: 'Quick Note ${index + 1}',
-                        noteContent: 'This is a quick note. Content preview for note ${index + 1}.',
+                        noteContent:
+                            'This is a quick note. Content preview for note ${index + 1}.',
                       );
                     },
                   ),
@@ -169,7 +192,8 @@ class _HomePageState extends State<HomePage> {
               right: screenWidth * 0.05,
               child: FloatingActionButton(
                 onPressed: () {
-                  Navigator.push(context, MaterialPageRoute(builder: (context) => NotePage()));
+                  Navigator.push(context,
+                      MaterialPageRoute(builder: (context) => NotePage()));
                 },
                 child: Icon(Icons.add),
                 backgroundColor: purple,
diff --git a/lib/views/notePage.dart b/lib/views/notePage.dart
index a44a014..b04f6d6 100644
--- a/lib/views/notePage.dart
+++ b/lib/views/notePage.dart
@@ -1,9 +1,10 @@
 import 'package:flutter/material.dart';
+import 'package:hacktoberxmlsa_app/providers/theme_provider.dart';
 import 'package:hacktoberxmlsa_app/views/homePage.dart';
 import 'package:hacktoberxmlsa_app/views/intivePopPage.dart';
+import 'package:provider/provider.dart';
 
 class NotePage extends StatefulWidget {
-
   final String? title;
   final String? content;
 
@@ -14,13 +15,12 @@ class NotePage extends StatefulWidget {
 }
 
 class _NotePageState extends State<NotePage> {
-
   late TextEditingController titleController;
   late TextEditingController contentController;
 
   FocusNode noteFocus = FocusNode();
 
-   @override
+  @override
   void initState() {
     super.initState();
     titleController = TextEditingController(text: widget.title ?? '');
@@ -34,7 +34,7 @@ class _NotePageState extends State<NotePage> {
         leading: IconButton(
           onPressed: () {
             Navigator.pop(context);
-          }, 
+          },
           icon: Icon(Icons.arrow_back_ios_new_rounded),
         ),
         actions: [
@@ -44,8 +44,17 @@ class _NotePageState extends State<NotePage> {
             },
             icon: const Icon(Icons.more_horiz_rounded),
           ),
+          IconButton(
+            icon: Icon(
+              Provider.of<ThemeProvider>(context).isLightTheme
+                  ? Icons.light_mode
+                  : Icons.dark_mode,
+            ),
+            onPressed: () {
+              Provider.of<ThemeProvider>(context, listen: false).toggleTheme();
+            },
+          ),
         ],
-        
       ),
       body: SafeArea(
         child: Padding(
@@ -57,27 +66,19 @@ class _NotePageState extends State<NotePage> {
             children: [
               TextField(
                 controller: titleController,
-                style: const TextStyle(
-                  fontSize: 30,
-                  fontWeight: FontWeight.bold
-                ),
+                style:
+                    const TextStyle(fontSize: 30, fontWeight: FontWeight.bold),
                 decoration: const InputDecoration(
-                  hintText: "Title",
-                  border: InputBorder.none
-                ),
+                    hintText: "Title", border: InputBorder.none),
               ),
               Expanded(
                 child: TextField(
                   controller: contentController,
                   focusNode: noteFocus,
                   maxLines: null,
-                  style: const TextStyle(
-                    fontSize: 20
-                  ),
+                  style: const TextStyle(fontSize: 20),
                   decoration: const InputDecoration(
-                    hintText: "Note",
-                    border: InputBorder.none
-                  ),
+                      hintText: "Note", border: InputBorder.none),
                 ),
               ),
             ],
@@ -86,4 +87,4 @@ class _NotePageState extends State<NotePage> {
       ),
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/views/profile.dart b/lib/views/profile.dart
index 3d1338e..fbd1149 100644
--- a/lib/views/profile.dart
+++ b/lib/views/profile.dart
@@ -1,5 +1,6 @@
 import 'dart:io';
 import 'package:flutter/material.dart';
+import 'package:hacktoberxmlsa_app/providers/theme_provider.dart';
 import 'package:hacktoberxmlsa_app/providers/userProfile.dart';
 import 'package:hacktoberxmlsa_app/services/colors.dart';
 import 'package:hacktoberxmlsa_app/utils/auth_utils.dart';
@@ -7,7 +8,7 @@ import 'package:hacktoberxmlsa_app/views/homePage.dart';
 import 'package:hacktoberxmlsa_app/widgets/button.dart';
 import 'package:hacktoberxmlsa_app/widgets/textfield.dart';
 import 'package:provider/provider.dart';
-import 'package:image_picker/image_picker.dart'; 
+import 'package:image_picker/image_picker.dart';
 
 class ProfilePage extends StatefulWidget {
   const ProfilePage({super.key});
@@ -67,7 +68,7 @@ class _ProfilePageState extends State<ProfilePage> {
   @override
   Widget build(BuildContext context) {
     final userProfile = Provider.of<UserProfileProvider>(context);
-    
+
     double screenWidth = MediaQuery.of(context).size.width;
     double screenHeight = MediaQuery.of(context).size.height;
 
@@ -82,8 +83,14 @@ class _ProfilePageState extends State<ProfilePage> {
         ),
         actions: [
           IconButton(
-            onPressed: () {},
-            icon: const Icon(Icons.light_mode),
+            onPressed: () {
+              Provider.of<ThemeProvider>(context, listen: false).toggleTheme();
+            },
+            icon: Icon(
+              Provider.of<ThemeProvider>(context).isLightTheme
+                  ? Icons.light_mode
+                  : Icons.dark_mode,
+            ),
           ),
         ],
       ),