commit 3991c627b66f6f9019cf1cab6c93e12706e240b7 Author: Rahul Tiwari Date: Thu Apr 2 15:07:23 2020 +0530 Inception commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/.personalize.toml b/.personalize.toml new file mode 100644 index 0000000..6454a9e --- /dev/null +++ b/.personalize.toml @@ -0,0 +1,20 @@ +Name = "" + +# Supports markdown +About = "" + +# Add only the handle +Github = "" +Twitter = "" + +# Add the absolute links +Goodreads = "" +Linkedin = "" + +Email = "" + +# Add the filename with file extension. +Resume = "" + +# Sets the number of posts to display on the front page +PostLimit = 4 \ No newline at end of file diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..faff36e --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2020 YOUR_NAME_HERE + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..eff7c6a --- /dev/null +++ b/README.md @@ -0,0 +1,83 @@ +# Lekh +Simple, text-focussed and minimal personal portfolio theme based on https://github.com/vegarsti/vegarsti.github.io + +## Screenshot +![Screenshot](./images/screenshot.png) + +## Features +* Social media links +* Markdown supported +* Easy to personalize + - TODO + - Dark mode + - RSS feeds + + +## Installation + +cd into your hugo site's root directory and: + +```sh +cd themes +git clone https://github.com/invinciblycool/lekh.git +``` + +For more information read the [official setup guide](https://gohugo.io/overview/installing/) of Hugo. + + +## Personalization + +To personalize the theme + +`cp themes/lekh/.personalize.toml data/personalize.toml` + +And then customize accordingly. + +Or simply copy the below into a new file called `data/personalize.toml` and customize accordingly. + +```toml + +Name = "" + +# Supports markdown +About = "" + +# Add only the handle +Github = "" +Twitter = "" + +# Add the absolute links +Goodreads = "" +Linkedin = "" + +Email = "" + +# Add the filename with file extension. +Resume = "" + +# Sets the number of posts to display on the front page +PostLimit = 4 + +``` + +## Posts + +Below is a typical post, which defaults to what Hugo expects. + +Specify `draft: true` to avoid publishing the post. + +```md +--- +title: "Rant post" +date: "2020-04-02" +draft: true +--- + +Too much to rant :( +``` + +## Credits + +* Thanks to [Vegard's](https://github.com/vegarsti) personal site from which the theme was heavily inspired. + +Feel free to contribute and open issues. diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..ac36e06 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,2 @@ ++++ ++++ diff --git a/images/screenshot.png b/images/screenshot.png new file mode 100644 index 0000000..7437b49 Binary files /dev/null and b/images/screenshot.png differ diff --git a/images/tn.png b/images/tn.png new file mode 100644 index 0000000..e0d8d78 Binary files /dev/null and b/images/tn.png differ diff --git a/layouts/404.html b/layouts/404.html new file mode 100644 index 0000000..6b8d155 --- /dev/null +++ b/layouts/404.html @@ -0,0 +1,10 @@ + + +{{ partial "head.html" . }} + + +

This page does not exist or as they say, it's a 404 error

+

If you can't find what you're looking for, it's better to sometimes look inside

+ + + \ No newline at end of file diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..a3e5868 --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,23 @@ + + +{{ partial "head.html" . }} + + + {{ partial "page_header.html" . }} + +

Posts

+ +
+ + + {{ range .Pages.ByPublishDate }} +
+ {{ .Title }}
+ +
+
+ {{ end }} +
+ + + \ No newline at end of file diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..e6f7376 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,13 @@ + +{{ partial "head.html" . }} + + +{{ partial "page_header.html" . }} +

{{ .Title }}

+

+

+{{ .Content }} + +{{ partial "footer.html" . }} + + \ No newline at end of file diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..d74095d --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,71 @@ + + +{{ partial "head.html" . }} + + + +

{{ .Site.Data.personalize.Name }}

+ +

{{ .Site.Data.personalize.About| markdownify }}

+ + + + {{ if ne .Site.Data.personalize.Github "" }} + + + {{ end }} + + + {{ if ne .Site.Data.personalize.Twitter "" }} + + + {{ end }} + + + {{ if ne .Site.Data.personalize.Goodreads "" }} + + + {{ end }} + + + {{ if ne .Site.Data.personalize.Linkedin "" }} + + + {{ end }} + + + {{ if ne .Site.Data.personalize.Resume "" }} + + + {{ end }} + + + {{ if ne .Site.Data.personalize.Email "" }} + + + {{ end }} + +
 GitHub
 Twitter +
 Goodreads
 LinkedIn
 Resume
 {{ .Site.Data.personalize.Email }}
+ +

Posts

+ +
+ + + {{ range first .Site.Data.personalize.PostLimit .Pages.ByPublishDate }} +
+ {{ .Title }}
+ +
+
+ {{ end }} + + +

View all posts

+
+ + + + + \ No newline at end of file diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html new file mode 100644 index 0000000..ef6e16b --- /dev/null +++ b/layouts/partials/footer.html @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..0866c36 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,14 @@ + + + + + + + + + + {{ .Site.Data.personalize.Name }} + + + \ No newline at end of file diff --git a/layouts/partials/page_header.html b/layouts/partials/page_header.html new file mode 100644 index 0000000..87200a4 --- /dev/null +++ b/layouts/partials/page_header.html @@ -0,0 +1,13 @@ + + + + + + + + \ No newline at end of file diff --git a/static/css/fonts.css b/static/css/fonts.css new file mode 100644 index 0000000..6c8235e --- /dev/null +++ b/static/css/fonts.css @@ -0,0 +1,36 @@ +--- +--- + +/* Monospace */ +@font-face { + font-family: 'Source Code Pro Light'; + src: url('../assets/fonts/SourceCodePro-Light.otf'); + font-weight: normal; + font-style: normal; +} + +/* Regular */ +@font-face { + font-family: 'Calendas Plus'; + src: url('../assets/fonts/calendas_plus-webfont.eot'); + src: url('../assets/fonts/calendas_plus-webfont.eot?#iefix') format('embedded-opentype'), + url('../assets/fonts/calendas_plus-webfont.woff2') format('woff2'), + url('../assets/fonts/calendas_plus-webfont.woff') format('woff'), + url('../assets/fonts/calendas_plus-webfont.ttf') format('truetype'), + url('../assets/fonts/calendas_plus-webfont.svg#calendas_plusregular') format('svg'); + font-weight: normal; + font-style: normal; +} + +/* Bold */ +@font-face { + font-family: 'Calendas Plus'; + src: url('../assets/fonts/calendas_plus_bold-webfont.eot'); + src: url('../assets/fonts/calendas_plus_bold-webfont.eot?#iefix') format('embedded-opentype'), + url('../assets/fonts/calendas_plus_bold-webfont.woff2') format('woff2'), + url('../assets/fonts/calendas_plus_bold-webfont.woff') format('woff'), + url('../assets/fonts/calendas_plus_bold-webfont.ttf') format('truetype'), + url('../assets/fonts/calendas_plus_bold-webfont.svg#calendas_plusbold') format('svg'); + font-weight: bold; + font-style: normal; +} \ No newline at end of file diff --git a/static/css/style.css b/static/css/style.css new file mode 100644 index 0000000..2139eb7 --- /dev/null +++ b/static/css/style.css @@ -0,0 +1,39 @@ +body { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; + line-height: 1.5em; + font-size: 1.1em; + color: #222; + max-width: 40rem; + padding: 2rem; + margin: auto; + background: #fafafa; } + +img { + max-width: 100%; } + +a { + color: #0074D9; } + +h1, h2, strong { + color: #111; } + +h1 { + font-size: 1.6em; } + +h2 { + font-size: 1.2em; } + +h3 { + font-size: 1.1em; } + +.muted { + color: #aaa; + text-decoration: none; } + +.small { + font-size: .8em; } + +hr { + border: 0px; + border: 1px solid #eee; +} \ No newline at end of file diff --git a/static/css/syntax.scss b/static/css/syntax.scss new file mode 100644 index 0000000..508d9a2 --- /dev/null +++ b/static/css/syntax.scss @@ -0,0 +1,69 @@ +--- +--- + +.highlight { + + background: #fafafa; + + .hll { background-color: #fafafa; } + + .c { color: #998; } // Comment + .err { color: #a61717; background-color: #e3d2d2 } // Error + .k { font-weight: bold } // Keyword + .o { font-weight: bold } // Operator + .cm { color: #998; } // Comment.Multiline + .cp { color: #999; font-weight: bold } // Comment.Preproc + .c1 { color: #998; } // Comment.Single + .cs { color: #999; font-weight: bold; } // Comment.Special + .gd { color: #000; background-color: #fdd } // Generic.Deleted + .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific + .ge { font-style: bold } // Generic.Emph + .gr { color: #a00 } // Generic.Error + .gh { color: #999 } // Generic.Heading + .gi { color: #000; background-color: #dfd } // Generic.Inserted + .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific + .go { color: #888 } // Generic.Output + .gp { color: #555 } // Generic.Prompt + .gs { font-weight: bold } // Generic.Strong + .gu { color: #aaa } // Generic.Subheading + .gt { color: #a00 } // Generic.Traceback + .kc { font-weight: bold } // Keyword.Constant + .kd { font-weight: bold } // Keyword.Declaration + .kp { font-weight: bold } // Keyword.Pseudo + .kr { font-weight: bold } // Keyword.Reserved + .kt { color: #458; font-weight: bold } // Keyword.Type + .m { color: #099 } // Literal.Number + .s { color: #d14 } // Literal.String + .na { color: #008080 } // Name.Attribute + .nb { color: #0086B3 } // Name.Builtin + .nc { color: #458; font-weight: bold } // Name.Class + .no { color: #008080 } // Name.Constant + .ni { color: #800080 } // Name.Entity + .ne { color: #900; font-weight: bold } // Name.Exception + .nf { color: #900; font-weight: bold } // Name.Function + .nn { color: #555 } // Name.Namespace + .nt { color: #000080 } // Name.Tag + .nv { color: #008080 } // Name.Variable + .ow { font-weight: bold } // Operator.Word + .w { color: #bbb } // Text.Whitespace + .mf { color: #099 } // Literal.Number.Float + .mh { color: #099 } // Literal.Number.Hex + .mi { color: #099 } // Literal.Number.Integer + .mo { color: #099 } // Literal.Number.Oct + .sb { color: #d14 } // Literal.String.Backtick + .sc { color: #d14 } // Literal.String.Char + .sd { color: #d14 } // Literal.String.Doc + .s2 { color: #d14 } // Literal.String.Double + .se { color: #d14 } // Literal.String.Escape + .sh { color: #d14 } // Literal.String.Heredoc + .si { color: #d14 } // Literal.String.Interpol + .sx { color: #d14 } // Literal.String.Other + .sr { color: #009926 } // Literal.String.Regex + .s1 { color: #d14 } // Literal.String.Single + .ss { color: #990073 } // Literal.String.Symbol + .bp { color: #999 } // Name.Builtin.Pseudo + .vc { color: #008080 } // Name.Variable.Class + .vg { color: #008080 } // Name.Variable.Global + .vi { color: #008080 } // Name.Variable.Instance + .il { color: #099 } // Literal.Number.Integer.Long +} \ No newline at end of file diff --git a/theme.toml b/theme.toml new file mode 100644 index 0000000..d8996f4 --- /dev/null +++ b/theme.toml @@ -0,0 +1,12 @@ +name = "Lekh" +license = "MIT" +licenselink = "https://github.com/invinciblycool/lekh/blob/master/LICENSE.md" +description = "A text focussed and minimal personal portfolio theme, inspired from https://github.com/vegarsti/vegarsti.github.io" +homepage = "https://github.com/invinciblycool/lekh" +tags = ["minimal", "clean", "blog", "responsive", "personal", "simple", "minimalist", "portfolio", "text-focussed"] +features = ["blog", "Clean and minimal", "Responsive", "Social media links", "Markdown", "Text focussed"] +min_version = "0.38" + +[author] + name = "Rahul Tiwari" + homepage = "https://rtiwari.me/"