diff --git a/htdocs/assets/_footer.php b/htdocs/assets/_footer.php index 094f607..2261832 100644 --- a/htdocs/assets/_footer.php +++ b/htdocs/assets/_footer.php @@ -8,10 +8,10 @@
Site Pages
- Home Page - My Projects - My Blog - Contact Me + Home Page + My Projects + My Blog + Contact Me
Featured
@@ -36,6 +36,6 @@
-

© - All Rights Reserved
Designed with ♥ by Subhamoy

+

© - All Rights Reserved
Developed with ❤ in India

\ No newline at end of file diff --git a/htdocs/assets/extra-style.css b/htdocs/assets/extra-style.css index 4c2975c..e3b4dc0 100644 --- a/htdocs/assets/extra-style.css +++ b/htdocs/assets/extra-style.css @@ -60,4 +60,21 @@ background: #38BDF8; z-index: 2; opacity: 0; transition: opacity 500ms; -} \ No newline at end of file +} + +/* .z-20 rect { + transition: fill 0.3s ease-in-out; +} + +.z-20 rect:hover { + fill: red; +} + +.z-20 path:hover + .z-20 rect { + fill: red; +} + +.z-20 g:hover + .z-20 rect { + fill: red; +} */ + diff --git a/htdocs/assets/images/fantasywalls.jpg b/htdocs/assets/images/fantasywalls.jpg new file mode 100644 index 0000000..4a9bd09 Binary files /dev/null and b/htdocs/assets/images/fantasywalls.jpg differ diff --git a/htdocs/assets/images/prourl.jpg b/htdocs/assets/images/prourl.jpg new file mode 100644 index 0000000..fb257db Binary files /dev/null and b/htdocs/assets/images/prourl.jpg differ diff --git a/htdocs/assets/style.css b/htdocs/assets/style.css index 2449430..946d7bb 100644 --- a/htdocs/assets/style.css +++ b/htdocs/assets/style.css @@ -649,6 +649,11 @@ video { margin-bottom: 0.25rem; } +.my-2 { + margin-top: 0.5rem; + margin-bottom: 0.5rem; +} + .my-3 { margin-top: 0.75rem; margin-bottom: 0.75rem; @@ -659,11 +664,6 @@ video { margin-bottom: 1.75rem; } -.my-2 { - margin-top: 0.5rem; - margin-bottom: 0.5rem; -} - .my-\[0\.30rem\] { margin-top: 0.30rem; margin-bottom: 0.30rem; @@ -725,6 +725,10 @@ video { margin-left: 0.75rem; } +.ml-4 { + margin-left: 1rem; +} + .ml-5 { margin-left: 1.25rem; } @@ -741,6 +745,10 @@ video { margin-left: 2rem; } +.ml-\[0\.30rem\] { + margin-left: 0.30rem; +} + .ml-\[0\.59rem\] { margin-left: 0.59rem; } @@ -781,6 +789,10 @@ video { margin-top: 4rem; } +.mt-20 { + margin-top: 5rem; +} + .mt-3 { margin-top: 0.75rem; } @@ -801,6 +813,14 @@ video { margin-top: 2.2rem; } +.mt-32 { + margin-top: 8rem; +} + +.mt-44 { + margin-top: 11rem; +} + .flex { display: flex; } @@ -853,6 +873,10 @@ video { width: 0px; } +.w-2 { + width: 0.5rem; +} + .w-\[200px\] { width: 200px; } @@ -997,6 +1021,14 @@ video { border-radius: 0.125rem; } +.rounded { + border-radius: 0.25rem; +} + +.rounded-2xl { + border-radius: 1rem; +} + .border-\[2px\] { border-width: 2px; } @@ -1030,6 +1062,16 @@ video { border-color: rgba(255, 255, 255, 0.30); } +.border-l-accent_primary { + --tw-border-opacity: 1; + border-left-color: rgb(56 189 248 / var(--tw-border-opacity)); +} + +.border-l-bg_primary { + --tw-border-opacity: 1; + border-left-color: rgb(15 23 42 / var(--tw-border-opacity)); +} + .border-t-accent_primary { --tw-border-opacity: 1; border-top-color: rgb(56 189 248 / var(--tw-border-opacity)); @@ -1140,6 +1182,10 @@ video { line-height: 2.5rem; } +.text-\[10px\] { + font-size: 10px; +} + .text-base { font-size: 1rem; line-height: 1.5rem; @@ -1177,6 +1223,31 @@ video { font-weight: 400; } +.text-\[\#38BDF8\] { + --tw-text-opacity: 1; + color: rgb(56 189 248 / var(--tw-text-opacity)); +} + +.text-\[\#3FF989\] { + --tw-text-opacity: 1; + color: rgb(63 249 137 / var(--tw-text-opacity)); +} + +.text-\[\#CD6CFB\] { + --tw-text-opacity: 1; + color: rgb(205 108 251 / var(--tw-text-opacity)); +} + +.text-\[\#DCDF3F\] { + --tw-text-opacity: 1; + color: rgb(220 223 63 / var(--tw-text-opacity)); +} + +.text-\[\#EC4B4B\] { + --tw-text-opacity: 1; + color: rgb(236 75 75 / var(--tw-text-opacity)); +} + .text-accent_four { --tw-text-opacity: 1; color: rgb(172 203 222 / var(--tw-text-opacity)); @@ -1206,31 +1277,6 @@ video { color: rgb(15 23 42 / var(--tw-text-opacity)); } -.text-\[\#38BDF8\] { - --tw-text-opacity: 1; - color: rgb(56 189 248 / var(--tw-text-opacity)); -} - -.text-\[\#3FF989\] { - --tw-text-opacity: 1; - color: rgb(63 249 137 / var(--tw-text-opacity)); -} - -.text-\[\#CD6CFB\] { - --tw-text-opacity: 1; - color: rgb(205 108 251 / var(--tw-text-opacity)); -} - -.text-\[\#DCDF3F\] { - --tw-text-opacity: 1; - color: rgb(220 223 63 / var(--tw-text-opacity)); -} - -.text-\[\#EC4B4B\] { - --tw-text-opacity: 1; - color: rgb(236 75 75 / var(--tw-text-opacity)); -} - .opacity-20 { opacity: 0.2; } @@ -1239,6 +1285,10 @@ video { opacity: 0.5; } +.opacity-\[0\.75\] { + opacity: 0.75; +} + .shadow-\[0px_0px_100px_10px\] { --tw-shadow: 0px 0px 100px 10px; --tw-shadow-colored: 0px 0px 100px 10px var(--tw-shadow-color); @@ -1275,11 +1325,58 @@ video { box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } +.shadow-lg { + --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); + --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.shadow-\[10px_10px_20px\] { + --tw-shadow: 10px 10px 20px; + --tw-shadow-colored: 10px 10px 20px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.shadow-\[10px_10px_5px\] { + --tw-shadow: 10px 10px 5px; + --tw-shadow-colored: 10px 10px 5px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.shadow-\[0px_10px_5px\] { + --tw-shadow: 0px 10px 5px; + --tw-shadow-colored: 0px 10px 5px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.shadow-\[0px_10px_20px\] { + --tw-shadow: 0px 10px 20px; + --tw-shadow-colored: 0px 10px 20px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.shadow-\[0px_0px_20px\] { + --tw-shadow: 0px 0px 20px; + --tw-shadow-colored: 0px 0px 20px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.shadow-\[0px_0px_15px\] { + --tw-shadow: 0px 0px 15px; + --tw-shadow-colored: 0px 0px 15px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + .shadow-accent_primary_transparent { --tw-shadow-color: rgba(56, 189, 248, 0.30); --tw-shadow: var(--tw-shadow-colored); } +.shadow-accent_primary { + --tw-shadow-color: #38BDF8; + --tw-shadow: var(--tw-shadow-colored); +} + .blur-2xl { --tw-blur: blur(40px); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); @@ -1290,6 +1387,11 @@ video { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); } +.drop-shadow-lg { + --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1)); + filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); +} + .transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; @@ -1316,6 +1418,10 @@ video { transition-duration: 500ms; } +.last\:mb-3:last-child { + margin-bottom: 0.75rem; +} + .hover\:scale-125:hover { --tw-scale-x: 1.25; --tw-scale-y: 1.25; diff --git a/htdocs/core/connection.php b/htdocs/core/connection.php new file mode 100644 index 0000000..69d51c5 --- /dev/null +++ b/htdocs/core/connection.php @@ -0,0 +1,14 @@ + connect_error) { + die("Database Connection Failed !" . $conn->connect_error); + } + echo ""; +?> \ No newline at end of file diff --git a/htdocs/index.php b/htdocs/index.php index 2e57ba5..f9ad3a7 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -75,7 +75,7 @@ - + @@ -198,7 +198,7 @@

On a mission to!

make the web more interesting.

-
Wanna join the journey with me?  
email to: admin@neosubhamoy.xyz
+
Wanna join the journey with me?  
email to: hey@neosubhamoy.dev
patterns
diff --git a/htdocs/projects.php b/htdocs/projects.php index ae3fb85..fe7a759 100644 --- a/htdocs/projects.php +++ b/htdocs/projects.php @@ -1,3 +1,27 @@ + query($sql); + +if ($result) { + // create a array of all unique years + $years = array(); + while ($row = $result -> fetch_assoc()) { + $years[] = $row['year']; + } + + $result -> free(); +} + +//function to fetch all projects of the given year +function fetch_projects_by_year($conn, $year) { + $sql = "SELECT * FROM projects WHERE year = $year ORDER BY id DESC"; + $result = $conn -> query($sql); + return $result; +} +?> + @@ -17,8 +41,8 @@

I'm just obsessed with side projects and open-source stuffs

You can explore some of them below

- - + +
@@ -28,35 +52,97 @@
-
+
+

Projects by Timeline

+
+ + HTML; + + //apply different styling for first iteration + if($selectedYear === reset($years)) { + echo << + HTML; + } + else { + echo << + HTML; + } + + echo <<$selectedYear +
+
+ HTML; + + //apply different styling for last iteration + if ($selectedYear === end($years)) { + echo <<
+ HTML; + } + else { + echo <<
+ HTML; + } + + echo << + HTML; + + //fetch all projects by year and show it + while ($project = $projects -> fetch_assoc()) { + echo " + ".$project['name']." + "; + } + + echo << +
+ HTML; + } + } + + ?> +
My Profiles
-
+
neosubhamoy
Subhamoy Biswas

Personal Profile

-
+
techishfellow
-
The Techishfellow
+
The TechishFellow

Digital Product Publisher

Featured Projects
-
- fantasywalls +
+ fantasywalls
-
- prourl +
+ prourl
Currently Working On