1 Commits
Author SHA1 Message Date
gurusabarish bb8b1e5774 update 2022-08-21 22:39:29 +05:30
37 changed files with 295 additions and 625 deletions
-12
View File
@@ -1,12 +0,0 @@
# These are supported funding model platforms
github: gurusabarish # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: gurusabarish # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: ['https://donate.stripe.com/7sIeWp3aG07vd6o8ww'] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
+1 -1
View File
@@ -16,4 +16,4 @@ hugo.darwin
hugo.linux
# Temporary lock file while building
.hugo_build.lock
/.hugo_build.lock
+51 -92
View File
@@ -1,19 +1,11 @@
baseURL: "https://hugo-profile.netlify.app"
baseURL: "https://example.org"
languageCode: "en-us"
title: "Hugo Profile"
theme: hugo-profile
outputs:
home:
- "HTML"
- "RSS"
- "JSON"
page:
- "HTML"
- "RSS"
Paginate: 3
enableRobotsTXT: true
disqusShortname: gurusabarish
googleAnalytics: G-DWJJVE27WD
markup:
goldmark:
@@ -27,28 +19,24 @@ Menus:
title: Blog posts
url: /blogs
weight: 1
- identifier: gallery
name: Gallery
title: Blog posts
url: /gallery
weight: 2
#Dropdown menu
# - identifier: dropdown
# title: Example dropdown menu
# name: Dropdown
# weight: 3
# - identifier: dropdown1
# title: example dropdown 1
# name: example 1
# url: /#
# parent: dropdown
# weight: 1
# - identifier: dropdown2
# title: example dropdown 2
# name: example 2
# url: /#
# parent: dropdown
# weight: 2
- identifier: dropdown
title: Example dropdown menu
name: Dropdown
weight: 2
- identifier: dropdown1
title: example dropdown 1
name: example 1
url: /#
parent: dropdown
weight: 1
- identifier: dropdown2
title: example dropdown 2
name: example 2
url: /#
parent: dropdown
weight: 2
params:
title: "Hugo Profile"
@@ -56,28 +44,15 @@ params:
# staticPath: "" # The path to serve the static files from
favicon: "/fav.png"
# Whether to serve bootstrap css and js files from CDN or not. Can be set to true, "css" or "js" to choose between
# serving both, only the css, or only the js files through the CDN. Any other value will make so that CDN is not used.
# Note the lack of "" in true, it should be of boolean type.
useBootstrapCDN: false
# If you want to load dynamically responsive images from Cloudinary
# This requires your images to be uploaded + hosted on Cloudinary
# Uncomment and change YOUR_CLOUD_NAME to the Cloud Name in your Cloudinary console
# cloudinary_cloud_name: "YOUR_CLOUD_NAME"
# Whether the fade animations on the home page will be enabled
animate: true
theme:
# disableThemeToggle: true
disableThemeToggle: false
# defaultTheme: "light" # dark
font:
fontSize: 1rem # default: 1rem
fontWeight: 400 # default: 400
lineHeight: 1.5 # default: 1.5
textAlign: left # default: left
# font:
# fontSize: 1.5rem # default: 1rem
# fontWeight: 500 # default: 400
# lineHeight: 1 # default: 1.5
# textAlign: right # default: left
# color preference
# color:
@@ -97,18 +72,18 @@ params:
# secondaryColor:
# If you want to customize the menu, you can change it here
navbar:
align: ms-auto # Left: ms-auto | center: mx-auto | right: me-auto | Default: ms-auto
# brandLogo: "/logo.png" # Logo for the brand | default is the favicon variable
brandName: "Hugo Profile" # Brand name for the brand | default is the title variable
disableSearch: false
menus:
disableAbout: false
disableExperience: false
disableEducation: false
disableProjects: false
disableAchievements: false
disableContact: false
# navbar:
# align: mx-auto # Left: ms-auto | center: mx-auto | right: me-auto | Default: ms-auto
# brandLogo: "/logo.png" # Logo for the brand | default is the favicon variable
# brandName: "Profile" # Brand name for the brand | default is the title variable
# menus:
# disableAbout: true
# disableExperience: true
# disableEducation: true
# disableProjects: true
# disableAchievements: true
# disableContact: true
# Hero
hero:
@@ -122,8 +97,6 @@ params:
enable: true
name: "Resume"
url: "#"
download: true
newPage: false
socialLinks:
fontAwesomeIcons:
- icon: fab fa-github
@@ -157,7 +130,6 @@ params:
# Experience
experience:
enable: true
# title: "Custom Name"
items:
- job: "Senior Software Developer"
company: "Facebook"
@@ -222,8 +194,7 @@ params:
# Education
education:
enable: true
# title: "Custom Name"
index: false
# index: true
items:
- title: "Master of Business Administration"
school:
@@ -265,7 +236,6 @@ params:
# Achievements
achievements:
enable: true
# title: "Custom Name"
items:
- title: Google kickstart runner
content: I solved all problems with optimal solution.
@@ -284,7 +254,6 @@ params:
# projects
projects:
enable: true
# title: "Custom Name"
items:
- title: Hugo Profile
content: A highly customizable and mobile first Hugo template for personal portfolio and blog.
@@ -292,10 +261,10 @@ params:
featured:
name: Demo
link: https://hugo-profile.netlify.app
badges:
- "Hugo"
- "Bootstrap"
- "Javascript"
# badges:
# - "Hugo"
# - "Bootstrap"
# - "Javascript"
links:
- icon: fa fa-envelope
url: mailto:?subject=Hugo%20Profile%20Template&body=Check%20it%20out:%20https%3a%2f%2fhugo-profile.netlify.app%2fblog%2fmarkdown-syntax%2f
@@ -310,9 +279,9 @@ params:
featured:
name: Demo
link: https://django-converter.herokuapp.com
badges:
- "Django"
- "Bootstrap"
# badges:
# - "Django"
# - "Bootstrap"
links:
- icon: fab fa-github
url: https://github.com/gurusabarish/converter
@@ -323,10 +292,10 @@ params:
featured:
name: Demo V2
link: https://hugo-profile-2.netlify.app
badges:
- "Hugo"
- "Bootstrap"
- "Javascript"
# badges:
# - "Hugo"
# - "Bootstrap"
# - "Javascript"
links:
- icon: fab fa-github
url: https://github.com/gurusabarish/HugoProfileV2
@@ -334,25 +303,15 @@ params:
#Contact
contact:
enable: true
# title: "Custom Name"
content: My inbox is always open. Whether you have a question or just want to say hi, Ill try my best to get back to you!
email: [email protected]
btnName: Mail me
footer:
recentPosts:
path: "blogs"
count: 3
title: Recent Posts
enable: true
disableFeaturedImage: false
# recentPosts: false
socialNetworks:
github: https://github.com
linkedin: https://linkedin.com
twitter: https://twitter.com
instagram: https://instagram.com
facebook: https://facebook.com
# List pages like blogs and posts
listPages:
disableFeaturedImage: false
+29
View File
@@ -0,0 +1,29 @@
---
title: "About Me"
date: 2021-04-03T22:53:58+05:30
draft: false
description: ""
name: "Isabella"
image: /images/me.png
socialLinks:
fontAwesomeIcons:
- icon: fab fa-github
url: https://example.com
- icon: fab fa-twitter
url: https://example.com
customIcons:
- icon: /fav.png
url: "https://example.com"
layout: about
---
I am a software developer with a passion for web development. I have a background in computer science and mathematics, and I have a strong interest in the intersection of technology and art. I am currently working as a software developer at [example org.](https://example.com) in San Francisco, CA.
I am currently working on a project that will be used to help people find the best way to get around the city.
Here are a few technologies I've been working with recently:
- React
- Node
- Express
+28 -28
View File
@@ -10,63 +10,70 @@ tags:
- example
image: /images/post.jpg
description: ""
toc:
toc:
---
This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.
<!--more-->
## Paragraph
Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.
Itatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.
## Blockquotes
The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a `footer` or `cite` element, and optionally with in-line changes such as annotations and abbreviations.
### Blockquote without attribution
> Tiam, ad mint andaepu dandae nostion secatur sequo quae.
> **Note** that you can use _Markdown syntax_ within a blockquote.
> **Note** that you can use *Markdown syntax* within a blockquote.
### Blockquote with attribution
> Don't communicate by sharing memory, share memory by communicating.</p>
> — <cite>Rob Pike[^1]</cite>
[^1]: The above quote is excerpted from Rob Pike's [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) during Gopherfest, November 18, 2015.
## Tables
Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box.
| Name | Age |
| ----- | --- |
| Bob | 27 |
| Alice | 23 |
| Name | Age |
| ----- | --- |
| Bob | 27 |
| Alice | 23 |
### Inline Markdown within tables
| Inline&nbsp;&nbsp;&nbsp; | Markdown&nbsp;&nbsp;&nbsp; | In&nbsp;&nbsp;&nbsp; | Table |
| ------------------------ | -------------------------- | ----------------------------------- | ------ |
| _italics_ | **bold** | ~~strikethrough~~&nbsp;&nbsp;&nbsp; | `code` |
| *italics* | **bold** | ~~strikethrough~~&nbsp;&nbsp;&nbsp; | `code` |
## Code Blocks
### Code block with backticks
```html
``` html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
<head>
<meta charset="UTF-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>
```
### Code block indented with four spaces
<!DOCTYPE html>
@@ -81,9 +88,7 @@ Tables aren't part of the core Markdown spec, but Hugo supports supports them ou
</html>
### Code block with Hugo's internal highlight shortcode
{{< highlight html >}}
<!DOCTYPE html>
<html lang="en">
<head>
@@ -106,13 +111,13 @@ Tables aren't part of the core Markdown spec, but Hugo supports supports them ou
### Unordered List
- List item
- Another item
- And another item
* List item
* Another item
* And another item
### Nested list
- Item
* Item
1. First Sub-item
2. Second Sub-item
@@ -121,15 +126,10 @@ Tables aren't part of the core Markdown spec, but Hugo supports supports them ou
The following HTML `<h1>`—`<h6>` elements represent six levels of section headings. `<h1>` is the highest section level while `<h6>` is the lowest.
# H1
## H2
### H3
#### H4
##### H5
###### H6
## Other Elements — abbr, sub, sup, kbd, mark
@@ -142,4 +142,4 @@ X<sup>n</sup> + Y<sup>n</sup> = Z<sup>n</sup>
Press <kbd><kbd>CTRL</kbd>+<kbd>ALT</kbd>+<kbd>Delete</kbd></kbd> to end the session.
Most <mark>salamanders</mark> are nocturnal, and hunt for insects, worms, and other small creatures.
Most <mark>salamanders</mark> are nocturnal, and hunt for insects, worms, and other small creatures.
-38
View File
@@ -1,38 +0,0 @@
---
title: "Render Math With Mathjax"
date: 2022-12-09T19:53:33+05:30
draft: false
author: "Gurusabarish"
tags:
- Markdown syntax
- Mathjax
- example
image: /images/mathjax.png
description: ""
toc: true
mathjax: true
---
## Mathjax
Math equations can be rendered using [Mathjax](https://www.mathjax.org) syntax with AMS symbol support.
Optionally enable this on a per-page basis by adding `mathjax: true` to your frontmatter.
Then, use `$$ ... $$` on a line by itself to render a block equation:
$$ | Pr_{x \leftarrow P_{1}} [A(x) = 1] - Pr_{x \leftarrow P_{2}} [A(x) = 1] | < \text{negligible} $$
The raw version is:
```
$$ | Pr_{x \leftarrow P_{1}} [A(x) = 1] - Pr_{x \leftarrow P_{2}} [A(x) = 1] | < \text{negligible} $$
```
Write in-line equations with `\\( ... \\)` , like \\( x^n / y \\) . It's easy!
```
Write in-line equations with `\\( ... \\)` , like \\( x^n / y \\) . It's easy!
```
-22
View File
@@ -51,25 +51,3 @@ Hugo ships with several [Built-in Shortcodes](https://gohugo.io/content-manageme
<br>
{{< youtube w7Ft2ymGmfc >}}
<br>
## Theme Custom Shortcodes
These shortcodes are not Hugo built-ins, but are provided by the theme.
### Responsive Images with Cloudinary
You can learn more about this [here](https://cloudinary.com/documentation/responsive_images).
Set the `cloudinary_cloud_name` parameter in your site config to use this shortcode.
```
{{</* dynamic-img src="/my/image/on/cloudinary" title="A title for the image" */>}}
```
Note that you do not include the file extension (e.g. `.png`) in the `src` parameter, as the shortcode will automatically determine the best quality and format for the user's device.
Optionally, you can customize the general CSS styles for the image:
```
{{</* dynamic-img src="/my/image/on/cloudinary" title="A title for the image" style="max-width:60%" */>}}
```
+29
View File
@@ -0,0 +1,29 @@
---
title: "About Me"
date: 2021-04-03T22:53:58+05:30
draft: false
description: ""
name: "Isabella"
image: /images/me.png
socialLinks:
fontAwesomeIcons:
- icon: fab fa-github
url: https://example.com
- icon: fab fa-twitter
url: https://example.com
customIcons:
- icon: /fav.png
url: "https://example.com"
layout: experience
---
I am a software developer with a passion for web development. I have a background in computer science and mathematics, and I have a strong interest in the intersection of technology and art. I am currently working as a software developer at [example org.](https://example.com) in San Francisco, CA.
I am currently working on a project that will be used to help people find the best way to get around the city.
Here are a few technologies I've been working with recently:
- React
- Node
- Express
-14
View File
@@ -1,14 +0,0 @@
---
title: "Image Gallery"
date: 2022-06-25T18:35:46+05:30
draft: false
description: "My gallery :earth_asia:"
layout: "gallery"
images:
- src: https://iso.500px.com/wp-content/uploads/2016/03/stock-photo-142984111-1500x1000.jpg
- src: https://img.etimg.com/thumb/msid-68721417,width-650,imgsize-1016106,,resizemode-4,quality-100/nature1_gettyimages.jpg
- src: https://thumbs.dreamstime.com/b/team-ants-council-collective-decision-work-17037482.jpg
- src: https://thumbs.dreamstime.com/b/summer-day-smiling-women-relax-wearing-red-dress-fashion-standing-wooden-bridge-over-sea-blue-sky-background-summer-107411998.jpg
- src: https://thumbs.dreamstime.com/b/young-woman-playing-dog-pet-beach-sunrise-sunset-girl-dog-having-fun-seasid-seaside-cute-neglected-stay-66480218.jpg
- src: https://thumbs.dreamstime.com/b/funny-picture-taken-sunrise-frozen-lake-perspective-rider-retro-bicycle-sunrise-personal-211066044.jpg
---
Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

+1 -1
View File
@@ -1,6 +1,6 @@
{{ define "head" }}
<meta name="description" content="{{ .Params.description }}">
<link rel="stylesheet" href="{{.Site.Params.staticPath}}/css/about.css">
<link rel="stylesheet" href="{{.Site.Params.staticPath}}/css/multipage/about.css">
<!-- fontawesome -->
<script defer src="{{.Site.Params.staticPath}}/fontawesome-5/all-5.15.4.js"></script>
+1 -12
View File
@@ -12,25 +12,14 @@
<body class="light" onload="loading()">
<!-- javascripts -->
<!-- <script src="/js/jquery-3.6.0.min.js"></script> -->
<script src="{{ .Site.Params.staticPath }}/bootstrap-5/js/bootstrap.bundle.js"></script>
{{- partial "sections/header.html" . -}}
<div id="content">
{{- block "main" . }}{{- end }}
</div>
{{- partial "sections/footer/index.html" . -}}
{{- if (or (eq .Site.Params.UseBootstrapCDN true) (eq .Site.Params.UseBootstrapCDN "js")) -}}
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js" integrity="sha384-QJHtvGhmr9XOIpI6YVutG+2QOK9T+ZnN4kzFN1RtK3zEFEIsxhlmWl5/YESvpZ13" crossorigin="anonymous"></script>
{{- else -}}
<script src="{{ .Site.Params.staticPath }}/bootstrap-5/js/bootstrap.bundle.min.js"></script>
{{- end -}}
{{- partial "scripts.html" . -}}
<!-- for search -->
<section id="search-content" class="py-2">
<div class="container" id="search-results"></div>
</section>
</body>
</html>
+86
View File
@@ -0,0 +1,86 @@
{{ define "head" }}
<meta name="description" content="{{ .Params.description }}">
<link rel="stylesheet" href="{{.Site.Params.staticPath}}/css/multipage/about.css">
<!-- fontawesome -->
<script defer src="{{.Site.Params.staticPath}}/fontawesome-5/all-5.15.4.js"></script>
{{ end }}
{{ define "title" }}
{{.Title }} | {{ .Site.Title }}
{{ end }}
{{ define "main" }}
<section id="single">
<div class="container">
<div class="title mb-3">
<h1 class="text-center mb-4">{{ .Title }}</h1>
</div>
<div class="row justify-content-center">
{{ if .Params.image }}
<div class="col-sm-12 col-md-12 col-lg-3 px-3">
<div class="sticky-sidebar">
<aside class="aboutImg">
<div class="text-center">
<img src="{{ .Params.image }}" class="mx-auto rounded" alt="">
</div>
<h2 class="text-center pt-3">
{{ .Params.name }}
</h2>
<div class="aboutImg-content">
<ul class="list-inline pt-3 text-center">
{{ range .Params.socialLinks.fontAwesomeIcons }}
<li class="list-inline-item text-center">
<a href="{{ .url }}" target="_blank">
<i class="{{ .icon }}"></i>
</a>
</li>
{{ end }}
{{ range .Params.socialLinks.customIcons }}
<li class="list-inline-item text-center">
<a href="{{ .url }}" target="_blank" class="img-icon">
<img src="{{ .icon }}">
</a>
</li>
{{ end }}
</ul>
</div>
</aside>
</div>
</div>
{{ end }}
<div class="col-sm-12 col-md-12 col-lg-6 pt-4 p-2">
<div class="pr-lg-4">
<article class="page-content p-2">
{{ .Content | emojify }}
</article>
</div>
</div>
</div>
</div>
<button class="p-2 px-3" onclick="topFunction()" id="topScroll">
<i class="fas fa-angle-up"></i>
</button>
</section>
<script>
var topScroll = document.getElementById("topScroll");
window.onscroll = function () { scrollFunction() };
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
topScroll.style.display = "block";
} else {
topScroll.style.display = "none";
}
}
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
{{ end }}
-29
View File
@@ -1,29 +0,0 @@
{{ define "head" }}
<meta name="description" content="{{ .Title }} of {{ .Site.Title }}">
<!-- <link rel="stylesheet" href="{{ .Site.Params.staticPath }}/css/list.css" media="all"> -->
{{ end }}
{{ define "title" }}
{{.Title }} | {{ .Site.Title }}
{{ end }}
{{ define "main" }}
<div class="container pt-5" id="list-page">
<h2 class="text-center pb-2">{{.Title}}</h2>
<h6 class="text-center">{{ .Params.description | emojify }}</h6>
<div class="row p-4">
{{ .Content | emojify }}
</div>
<div class="card-group p-4">
<div class="row justify-content-center">
{{ range .Params.images }}
<div class="col-md-4 p-0 m-0">
<div class="card p-0 m-0 border-0">
<img class="w-100" height="280px" src="{{ .src }}">
</div>
</div>
{{ end }}
</div>
</div>
</div>
{{ end }}
-5
View File
@@ -1,5 +0,0 @@
{{- $.Scratch.Add "index" slice -}}
{{- range .Site.RegularPages -}}
{{- $.Scratch.Add "index" (dict "title" .Title "description" .Params.description "content" .Content "image" .Params.image "permalink" .Permalink) -}}
{{- end -}}
{{- $.Scratch.Get "index" | jsonify -}}
+11 -20
View File
@@ -13,28 +13,19 @@
<div class="row">
{{ range .Paginator.Pages }}
<div class="col-lg-4 col-md-6 my-3">
<div class="card-columns">
<div class="card h-100">
{{ if and (not (.Site.Params.listPages.disableFeaturedImage | default false)) (.Params.image) }}
<div class="card-header">
<a href="{{ .RelPermalink }}">
<img src="{{ .Params.image }}" class="card-img-top" alt="{{ .Title }}">
</a>
</div>
{{ end }}
<div class="card-body bg-transparent p-4 shadow-sm">
<a href="{{ .RelPermalink }}" class="primary-font card-title">
<h5 class="card-title bg-transparent" title="{{ .Title }}">{{ .Title | truncate 25 }}</h5>
</a>
<div class="card-text secondary-font">
<p>{{ .Summary | truncate 300}}</p>
</div>
</div>
<div class="mt-auto post-footer bg-transparent py-3">
<span class="float-start bg-transparent">{{ .Date.Format "January 2, 2006" }}</span>
<a href="{{ .RelPermalink }}" class="float-end btn btn-outline-info btn-sm">Read</a>
<div class="card h-100">
<div class="card-body bg-transparent p-4 shadow-sm">
<a href="{{ .RelPermalink }}" class="primary-font card-title">
<h5 class="card-title bg-transparent" title="{{ .Title }}">{{ .Title | truncate 25 }}</h5>
</a>
<div class="card-text secondary-font">
<p>{{ .Summary | truncate 300}}</p>
</div>
</div>
<div class="mt-auto post-footer bg-transparent py-3">
<span class="float-start bg-transparent">{{ .Date.Format "January 2, 2006" }}</span>
<a href="{{ .RelPermalink }}" class="float-end btn btn-outline-info btn-sm">Read</a>
</div>
</div>
</div>
{{ end }}
+4 -45
View File
@@ -1,39 +1,25 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta http-equiv="Accept-CH" content="DPR, Viewport-Width, Width">
<link rel="icon" href={{ .Site.Params.favicon | default "/fav.png" }} type="image/gif">
<!-- Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preload"
as="style"
href="https://fonts.googleapis.com/css2?family=Alata&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
>
<link rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Alata&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
media="print" onload="this.media='all'" />
<noscript>
<link
href="https://fonts.googleapis.com/css2?family=Alata&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
rel="stylesheet">
</noscript>
<link
href="https://fonts.googleapis.com/css2?family=Alata&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"
rel="stylesheet">
<!-- font configuration -->
<link rel="stylesheet" href="{{ .Site.Params.staticPath }}/css/font.css" media="all">
<!-- Internal templates -->
{{ template "_internal/google_analytics.html" . }}
{{ template "_internal/google_analytics_async.html" . }}
{{ template "_internal/opengraph.html" . }}
{{ template "_internal/twitter_cards.html" . }}
<!-- stylesheets -->
{{- if (or (eq .Site.Params.UseBootstrapCDN true) (eq .Site.Params.UseBootstrapCDN "css")) -}}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
{{- else -}}
<link rel="stylesheet" href="{{ .Site.Params.staticPath }}/bootstrap-5/css/bootstrap.min.css" media="all">
{{- end -}}
<link rel="stylesheet" href="{{ .Site.Params.staticPath }}/css/header.css" media="all">
<link rel="stylesheet" href="{{ .Site.Params.staticPath }}/css/footer.css" media="all">
@@ -68,31 +54,4 @@
line-height: {{ .Site.Params.font.lineHeight | default "1.5" }};
text-align: {{ .Site.Params.font.textAlign | default "left" }};
}
html {
background-color: var(--background-color) !important;
}
body::-webkit-scrollbar {
width: .5em;
height: .5em;
background-color: var(--background-color);
}
::-webkit-scrollbar-track {
box-shadow: inset 0 0 6px var(--background-color);
border-radius: 1rem;
}
::-webkit-scrollbar-thumb {
border-radius: 1rem;
background-color: var(--secondary-color);
outline: 1px solid var(--background-color);
}
#search-content::-webkit-scrollbar {
width: .5em;
height: .1em;
background-color: var(--background-color);
}
</style>
+1 -37
View File
@@ -61,40 +61,4 @@
document.getElementById("loading-icons").style.display = "block";
} catch(err) {}
}
</script>
{{ if not (.Site.Params.navbar.disableSearch | default false) }}
<script src="/js/search.js"></script>
{{ end }}
{{ if (.Params.mathjax | default false) }}
{{ "<!-- MathJax -->" | safeHTML }}
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.2/es5/tex-mml-chtml.min.js" integrity="sha384-M5jmNxKC9EVnuqeMwRHvFuYUE8Hhp0TgBruj/GZRkYtiMrCRgH7yvv5KY+Owi7TW" crossorigin="anonymous"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['\\(','\\)']],
displayMath: [['$$','$$'], ['\[','\]']],
processEscapes: true,
processEnvironments: true,
skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'],
TeX: { equationNumbers: { autoNumber: "AMS" },
extensions: ["AMSmath.js", "AMSsymbols.js"] }
}
});
</script>
{{ end }}
{{ if (.Site.Params.cloudinary_cloud_name | default false) }}
{{ "<!-- cloudinary -->" | safeHTML }}
<script src="https://unpkg.com/[email protected]/cloudinary-core-shrinkwrap.js" integrity="sha384-0bQduxVhZMs6xfvcPH9osdUIw44hjF8EahHuQBdyN6Rryk8tgyFO80Yz5d14F+5d" crossorigin="anonymous"></script>
<script type="text/javascript">
var cl = cloudinary.Cloudinary.new({cloud_name: "{{- .Site.Params.cloudinary_cloud_name }}"});
cl.responsive();
</script>
{{ end }}
</script>
+1 -1
View File
@@ -1,7 +1,7 @@
{{ if .Site.Params.achievements.enable | default false }}
<section id="achievements" class="py-5">
<div class="container">
<h3 class="text-center">{{ .Site.Params.achievements.title | default "Achievements" }}</h3>
<h3 class="text-center">Achievements</h3>
<div class="px-0 px-md-5 px-lg-5">
<div class="row justify-content-center px-3 px-md-5 px-lg-5">
{{ range .Site.Params.achievements.items }}
+1 -1
View File
@@ -1,7 +1,7 @@
{{ if .Site.Params.contact.enable | default false }}
<section id="contact" class="py-5">
<div class="container">
<h3 class="text-center">{{ .Site.Params.contact.title | default "Get in Touch" }}</h3>
<h3 class="text-center">Get In Touch</h3>
<div class="px-0 px-md-5 px-lg-5">
<div class="row justify-content-center px-md-5">
<div class="col-md-8 py-3">
+1 -1
View File
@@ -1,7 +1,7 @@
{{ if .Site.Params.education.enable | default false }}
<section id="education" class="py-5">
<div class="container">
<h3 class="text-center">{{ .Site.Params.education.title | default "Education" }}</h3>
<h3 class="text-center">Education</h3>
<div class="row justify-content-center py-5">
{{ $indexMenu := .Site.Params.education.index }}
{{ range $index, $element := .Site.Params.education.items }}
+3 -1
View File
@@ -1,7 +1,7 @@
{{ if .Site.Params.experience.enable | default false }}
<section id="experience" class="py-5">
<div class="container">
<h3 class="text-center">{{ .Site.Params.experience.title | default "Experience" }}</h3>
<h3 class="text-center">Experience</h3>
<div class="row justify-content-center">
<div class="col-sm-12 col-md-8 col-lg-8 py-5">
<div class="experience-container px-3 pt-2">
@@ -12,6 +12,7 @@
<div
class="nav-link active bg-transparent"
aria-selected="true"
type="button"
role="tab"
data-bs-toggle="pill"
id='{{ replace .company " " "-" }}-{{ replace .date " " "-" }}-tab'
@@ -26,6 +27,7 @@
<div
class="nav-link bg-transparent"
aria-selected="true"
type="button"
role="tab"
data-bs-toggle="pill"
id='{{ replace .company " " "-" }}-{{ replace .date " " "-" }}-tab'
@@ -1,22 +1,10 @@
<div class="container py-3" id="recent-posts">
{{ if .Site.Params.footer.recentPosts.enable | default false }}
{{ $recentPostsPath := .Site.Params.footer.recentPosts.path | default "blogs" }}
{{ $recentPostsCount := .Site.Params.footer.recentPosts.count | default 3 }}
{{ $recentPosts := where .Site.RegularPages "Section" $recentPostsPath | first $recentPostsCount }}
<div class="h3 text-center text-secondary py-3">
{{ .Site.Params.footer.recentPosts.title | default "Recent Posts" }}
</div>
{{ if .Site.Params.footer.recentPosts | default true }}
<div class="h3 text-center text-secondary py-3">Recent posts</div>
<div class="row justify-content-center">
{{ range $recentPosts }}
{{ range ( where .Site.RegularPages "Type" "blogs" | first 3 ) }}
<div class="col-lg-4 col-md-6 pt-2">
<div class="card h-100">
{{ if and (not (.Site.Params.footer.recentPosts.disableFeaturedImage | default false)) (.Params.image) }}
<div class="card-header">
<a href="{{ .RelPermalink }}">
<img src="{{ .Params.image }}" class="card-img-top" alt="{{ .Title }}">
</a>
</div>
{{ end }}
<div class="card-body bg-transparent p-3 shadow-sm">
<a href="{{ .RelPermalink }}" class="primary-font card-title">
<h5 class="card-title bg-transparent" title="{{ .Title }}">{{ .Title | truncate 25 }}</h5>
+30 -60
View File
@@ -1,5 +1,5 @@
{{- /* theme-toggle is enabled */}}
{{- if (not .Site.Params.theme.disableThemeToggle | default false) }}
{{- if (not .Site.Params.theme.disableThemeToggle) }}
{{- /* theme is auto */}}
<script>
if (localStorage.getItem("pref-theme") === "dark") {
@@ -24,7 +24,7 @@
<!-- Navbar -->
<header>
<nav class="pt-3 navbar navbar-expand-lg {{ if .Site.Params.animate }}animate{{ end }}">
<nav class="pt-3 navbar navbar-expand-lg">
<div class="container-fluid mx-xs-2 mx-sm-5 mx-md-5 mx-lg-5">
<!-- navbar brand -->
<a class="navbar-brand primary-font text-wrap" href="{{ .Site.BaseURL | relURL }}">
@@ -37,13 +37,6 @@
{{ end }}
</a>
{{ if not (.Site.Params.navbar.disableSearch | default false) }}
<div>
<input id="search" autocomplete="off" class="form-control mr-sm-2 d-none d-md-block" placeholder="Search ..."
aria-label="Search" oninput="searchOnChange(event)">
</div>
{{ end }}
<!-- navbar toggler -->
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarContent"
aria-controls="navbarContent" aria-expanded="false" aria-label="Toggle navigation">
@@ -55,64 +48,44 @@
<!-- navbar content -->
<div class="collapse navbar-collapse text-wrap primary-font" id="navbarContent">
<ul class="navbar-nav {{ .Site.Params.navbar.align | default "ms-auto"}} text-center">
{{ if not (.Site.Params.navbar.disableSearch | default false) }}
<li class="nav-item navbar-text d-block d-md-none">
<div class="nav-link">
<input id="search" autocomplete="off" class="form-control mr-sm-2" placeholder="Search ..." aria-label="Search" oninput="searchOnChange(event)">
</div>
</li>
{{ end }}
{{ if and (.Site.Params.about.enable | default false) (not (.Site.Params.navbar.menus.disableAbout | default false)) }}
<li class="nav-item navbar-text">
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#about" aria-label="about">
{{ .Site.Params.about.title | default "About" }}
</a>
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#about" aria-label="about">About</a>
</li>
{{ end }}
{{ if and (.Site.Params.experience.enable | default false) (not (.Site.Params.navbar.menus.disableExperience | default false)) }}
<li class="nav-item navbar-text">
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#experience"
aria-label="experience">
{{ .Site.Params.experience.title | default "Experience" }}
</a>
aria-label="experience">Experience</a>
</li>
{{ end }}
{{ if and (.Site.Params.education.enable | default false) (not (.Site.Params.navbar.menus.disableEducation | default false)) }}
<li class="nav-item navbar-text">
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#education"
aria-label="education">
{{ .Site.Params.education.title | default "Education" }}
</a>
aria-label="education">Education</a>
</li>
{{ end }}
{{ if and (.Site.Params.projects.enable | default false) (not (.Site.Params.navbar.menus.disableEducation | default false)) }}
<li class="nav-item navbar-text">
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#projects"
aria-label="projects">
{{ .Site.Params.projects.title | default "Projects" }}
</a>
aria-label="projects">Projects</a>
</li>
{{ end }}
{{ if and (.Site.Params.achievements.enable | default false) (not (.Site.Params.navbar.menus.disableAchievements | default false)) }}
<li class="nav-item navbar-text">
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#achievements"
aria-label="achievements">
{{ .Site.Params.achievements.title | default "Achievements" }}
</a>
aria-label="achievements">Achievements</a>
</li>
{{ end }}
{{ if and (.Site.Params.contact.enable | default false) (not (.Site.Params.navbar.menus.disableContact | default false)) }}
<li class="nav-item navbar-text">
<a class="nav-link" href="{{ .Site.BaseURL | relURL }}#contact"
aria-label="contact">
{{ .Site.Params.contact.title | default "Contact" }}
</a>
aria-label="contact">Contact</a>
</li>
{{ end }}
@@ -144,33 +117,30 @@
</li>
{{end}}
{{end}}
{{ if (not .Site.Params.theme.disableThemeToggle | default false) }}
<li class="nav-item navbar-text">
<!-- darkmode mode toggle -->
<div class="text-center">
<button id="theme-toggle">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
</div>
</li>
{{ end }}
</ul>
<!-- darkmode mode toggle -->
{{ if (not .Site.Params.theme.disableThemeToggle) }}
<div class="text-center">
<button id="theme-toggle">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
</div>
{{ end }}
</div>
</div>
</nav>
+3 -6
View File
@@ -2,7 +2,7 @@
<section id="hero" class="py-5 align-middle">
<div class="container px-3 px-sm-5 px-md-5 px-lg-5 pt-lg-3">
<div class="row">
<div class="col-sm-12 col-md-12 col-lg-8 content {{ if .Site.Params.animate }}animate{{ end }}" id="primary-font">
<div class="col-sm-12 col-md-12 col-lg-8 content" id="primary-font">
<span class="subtitle">
{{ .Site.Params.hero.intro }}
</span>
@@ -18,10 +18,7 @@
<div class="row">
<div class="col-auto h-100">
{{ if .Site.Params.hero.button.enable }}
<a href="{{ .Site.Params.hero.button.url }}" class="btn" {{ cond .Site.Params.hero.button.download "download" "" }}
{{ if .Site.Params.hero.button.newPage | default true }}
target="_blank"
{{ end }}>
<a href="{{ .Site.Params.hero.button.url }}" class="btn">
{{ .Site.Params.hero.button.name }}
</a>
{{ end }}
@@ -33,7 +30,7 @@
</div>
<div class="col-sm-12 col-md-12 col-lg-4">
<div class="row justify-content-center">
<div class="col-sm-12 col-md-9 pt-5 image {{ if .Site.Params.animate }}animate{{ end }} px-5 px-md-5 px-lg-0 text-center">
<div class="col-sm-12 col-md-9 pt-5 image px-5 px-md-5 px-lg-0 text-center">
<img src="{{ .Site.Params.hero.image }}"
class="img-thumbnail mx-auto"
alt=""
+1 -1
View File
@@ -1,4 +1,4 @@
<span id="loading-icons" style="display: {{ if .Site.Params.animate }}none{{else}}block{{ end }};">
<span id="loading-icons" style="display: none;">
{{ range .Site.Params.hero.socialLinks.fontAwesomeIcons }}
<span class="px-1">
<a href="{{ .url }}" target="_blank" class="btn social-icon">
+1 -1
View File
@@ -1,7 +1,7 @@
{{ if .Site.Params.projects.enable | default false }}
<section id="projects" class="py-5">
<div class="container">
<h3 class="text-center">{{ .Site.Params.projects.title | default "Projects" }}</h3>
<h3 class="text-center">Projects</h3>
<div class="row justify-content-center px-3 px-md-5">
{{ range .Site.Params.projects.items }}
<div class="col-lg-4 col-md-6 my-3">
-5
View File
@@ -1,5 +0,0 @@
{{ $image := .Get "src" }}
{{ $alt := .Get "title" }}
{{ $width := .Get "width" | default "w_auto" }}
{{ $style := .Get "style" | default "max-width:80%" }}
<img alt="{{ $alt }}" title="{{ $alt }}" data-src="https://res.cloudinary.com/{{ $.Site.Params.cloudinary_cloud_name }}/{{ $width }},c_scale,f_auto,q_auto,dpr_auto{{ $image}}" class="cld-responsive" style="padding-bottom: 16px; display: block; margin: auto; {{ $style }}">
+1 -1
View File
@@ -1,6 +1,6 @@
[build]
publish = "exampleSite/public"
command = 'cd exampleSite && echo -e "\ngoogleAnalytics: $GOOGLE_ANALYTICS \ndisqusShortname: $DISQUS_SHORTNAME \n" >> config.yaml && hugo --gc --minify --themesDir ../..'
command = "cd exampleSite && hugo --gc --minify --themesDir ../.."
[context.production.environment]
HUGO_VERSION = "0.92.0"
File diff suppressed because one or more lines are too long
-15
View File
@@ -16,7 +16,6 @@ footer .card {
border-radius: .75rem;
cursor: context-menu;
overflow: hidden;
border: none;
}
footer .card:hover {
@@ -31,7 +30,6 @@ footer .card-text * {
footer .card-footer {
background-color: var(--background-color) !important;
padding: .8em .7em;
border: 1px solid var(--secondary-color);
}
footer .card-footer a {
@@ -48,17 +46,4 @@ footer .card-footer a:hover {
footer .card-footer a:focus {
box-shadow: none !important;
}
footer .card > .card-header {
padding: 0 !important;
border: none !important;
background-color: var(--secondary-color) !important;
}
footer .card > .card-header .card-img-top {
width: 100%;
height: 250px !important;
object-fit: cover;
background-color: transparent !important;
}
-52
View File
@@ -56,56 +56,4 @@ li > .dropdown-toggle:focus{
.dropdown-item:focus, .dropdown-item:active {
background-color: var(--secondary-color) !important;
}
#search {
border-radius: 1rem !important;
background-color: var(--secondary-color);
color: var(--text-color);
border-color: var(--background-color) !important;
transition: none;
}
#search:focus {
box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
#search-content {
-ms-scroll-chaining: none;
scrollbar-width: none;
display: none;
border-radius: 1rem;
box-shadow: 0 0 10px rgba(0,0,0,0.2);
z-index: 9999;
width: 10%;
max-height: 350px;
background-color: var(--secondary-color) !important;
position: absolute;
overflow: scroll;
}
#search-content::-webkit-scrollbar {
display: none;
}
#search-results > .card {
background-color: transparent !important;
border: none;
margin-bottom: 10px;
}
#search-results > .card :hover {
border-radius: 1rem !important;
background-color: var(--background-color) !important;
transition: .2s;
}
#search-results .card a {
opacity: 0.9;
display: inline-block;
text-decoration: none;
color: var(--text-color) !important;
}
#search-results .card a:hover {
color: var(--primary-color) !important;
}
+7 -16
View File
@@ -51,11 +51,10 @@
}
}
header .navbar.animate {
header .navbar {
animation: fade-up 0.5s ease-in;
}
/* ToolTip */
.tooltip {
@@ -76,7 +75,7 @@ header .navbar.animate {
line-height: 2rem;
max-width: 100%;
}
#hero .content.animate {
#hero .content {
animation: fade-left 1s ease-out;
}
@@ -110,22 +109,16 @@ header .navbar.animate {
}
#hero .image img {
box-shadow:0px 8px 56px rgba(15, 80, 100, 0.16);
animation: fade-in 1s ease-out;
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16);
transition: box-shadow 0.3s;
padding: 0;
border: 3px solid var(--secondary-color);
border: 0;
border: 2px solid var(--secondary-color);
border-radius: 1rem;
}
#hero .image.animate img {
animation: fade-in 1s ease-out;
transition: box-shadow 0.3s;
}
#hero .image img:hover {
cursor: pointer;
}
#hero .image.animate img:hover {
box-shadow: 0 0 11px rgb(15 80 100 / 20%);
filter: contrast(1.2);
cursor: pointer;
@@ -301,7 +294,6 @@ header .navbar.animate {
border-bottom: 2px solid transparent;
border-radius: 0%;
transition: none;
cursor: pointer;
}
#experience .nav-item .nav-link.active {
@@ -483,7 +475,6 @@ header .navbar.animate {
}
#achievements .card {
cursor: context-menu;
background-color: var(--secondary-color) !important;
border-radius: 1rem;
box-shadow: 0 0 36px rgba(0,0,0,0.1);
+1 -12
View File
@@ -4,7 +4,6 @@
border-radius: .75rem;
cursor: context-menu;
overflow: hidden;
border: none;
}
#list-page .card a {
@@ -16,6 +15,7 @@
}
#list-page .card:hover {
border: 1px solid var(--secondary-color);
transition: all 0.3s ease-out;
transform: translateY(-7px);
}
@@ -47,17 +47,6 @@
color: var(--primary-color) !important;
}
#list-page .card > .card-header {
padding: 0 !important;
border: none !important;
background-color: var(--secondary-color) !important;
}
#list-page .card > .card-header .card-img-top {
width: 100%;
height: 250px !important;
background-color: transparent !important;
}
/* pagination */
#list-page ul li a {
-1
View File
@@ -22,7 +22,6 @@
border-radius: 1rem;
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16);
margin-bottom: 1rem;
background-color: var(--secondary-color);
}
#single .page-content a {
-73
View File
@@ -1,73 +0,0 @@
async function searchOnChange(evt) {
let searchQuery = evt.target.value;
if (searchQuery !== "") {
const searchButtonEle = document.querySelectorAll("#search");
let searchButtonPosition;
if (window.innerWidth > 768) {
searchButtonPosition = searchButtonEle[0].getBoundingClientRect();
document.getElementById("search-content").style.width = "500px";
} else {
searchButtonPosition = searchButtonEle[1].getBoundingClientRect();
document.getElementById("search-content").style.width = "300px";
}
document.getElementById("search-content").style.top =
searchButtonPosition.top + 50 + "px";
document.getElementById("search-content").style.left =
searchButtonPosition.left + "px";
let searchJson = await fetch("/index.json").then((res) => res.json());
let searchResults = searchJson.filter((item) => {
let res = false;
if (item.title && item.description && item.content) {
res =
item.title.toLowerCase().includes(searchQuery.toLowerCase()) ||
item.description.toLowerCase().includes(searchQuery.toLowerCase()) ||
item.content.toLowerCase().includes(searchQuery.toLowerCase());
} else if (item.title && item.description) {
res =
item.title.toLowerCase().includes(searchQuery.toLowerCase()) ||
item.description.toLowerCase().includes(searchQuery.toLowerCase());
} else if (item.title && item.content) {
res =
item.title.toLowerCase().includes(searchQuery.toLowerCase()) ||
item.content.toLowerCase().includes(searchQuery.toLowerCase());
} else if (item.description && item.content) {
res =
item.description.toLowerCase().includes(searchQuery.toLowerCase()) ||
item.content.toLowerCase().includes(searchQuery.toLowerCase());
} else if (item.title) {
res = item.title.toLowerCase().includes(searchQuery.toLowerCase());
} else if (item.description) {
res = item.description
.toLowerCase()
.includes(searchQuery.toLowerCase());
} else if (item.content) {
res = item.content.toLowerCase().includes(searchQuery.toLowerCase());
}
return res;
});
if (searchResults.length > 0) {
let searchResultsHtml = "";
searchResults.map((item) => {
searchResultsHtml += `<div class="card">
<a href="${item.permalink}">
<div class="p-3">
<h5>${item.title}</h5>
<div>${item.description}</div>
</div>
</a>
</div>`;
});
document.getElementById("search-results").innerHTML = searchResultsHtml;
} else {
let searchResultsHtml = `<p class="text-center py-3">No results found for "${searchQuery}"</p>`;
document.getElementById("search-results").innerHTML = searchResultsHtml;
}
document.getElementById("search-content").style.display = "block";
} else {
document.getElementById("search-content").style.display = "none";
document.getElementById("search-results").innerHTML = "";
}
}