diff options
Long List of items.
On branch main
Your branch is up to date with 'origin/main'.
You are currently rebasing.
Changes to be committed:
deleted: .browserslistrc
deleted: .eleventy.js
deleted: .eslintrc.js
modified: .gitignore
deleted: .stylelintrc.json
deleted: .vscode/tasks.json
deleted: _headers
modified: assets/index.js
modified: assets/sw.js
renamed: gen-icons.sh -> deploy
new file: eleventy.config.js
new file: license
modified: package-lock.json
modified: package.json
renamed: src/data/env.js -> src/_data/env.js
renamed: src/data/metadata.js -> src/_data/metadata.js
new file: src/_includes/base.njk
new file: src/_includes/page.njk
new file: src/_includes/post.njk
deleted: src/about.md
new file: src/about.njk
deleted: src/blog.11ty.js
new file: src/blog.njk
deleted: src/gen/atom.11ty.js
new file: src/gen/atom.njk
deleted: src/gen/error.11ty.js
new file: src/gen/error.njk
new file: src/gen/feedjson.11ty.js
modified: src/gen/gen.11tydata.js
deleted: src/gen/json.11ty.js
modified: src/gen/metadata.11ty.js
deleted: src/gen/robot.11ty.js
new file: src/gen/robot.njk
deleted: src/gen/sitemap.11ty.js
new file: src/gen/sitemap.njk
renamed: src/index.md -> src/index.njk
deleted: src/layouts/base.11ty.js
deleted: src/layouts/page.11ty.js
deleted: src/layouts/post.11ty.js
Diffstat (limited to 'src')
-rw-r--r-- | src/_data/env.js (renamed from src/data/env.js) | 0 | ||||
-rw-r--r-- | src/_data/metadata.js (renamed from src/data/metadata.js) | 3 | ||||
-rw-r--r-- | src/_includes/base.njk | 52 | ||||
-rw-r--r-- | src/_includes/page.njk | 7 | ||||
-rw-r--r-- | src/_includes/post.njk | 9 | ||||
-rw-r--r-- | src/about.md | 11 | ||||
-rw-r--r-- | src/about.njk | 14 | ||||
-rw-r--r-- | src/blog.11ty.js | 23 | ||||
-rw-r--r-- | src/blog.njk | 17 | ||||
-rw-r--r-- | src/gen/atom.11ty.js | 30 | ||||
-rw-r--r-- | src/gen/atom.njk | 27 | ||||
-rw-r--r-- | src/gen/error.11ty.js | 21 | ||||
-rw-r--r-- | src/gen/error.njk | 13 | ||||
-rw-r--r-- | src/gen/feedjson.11ty.js | 35 | ||||
-rw-r--r-- | src/gen/gen.11tydata.js | 5 | ||||
-rw-r--r-- | src/gen/json.11ty.js | 28 | ||||
-rw-r--r-- | src/gen/metadata.11ty.js | 12 | ||||
-rw-r--r-- | src/gen/robot.11ty.js | 13 | ||||
-rw-r--r-- | src/gen/robot.njk | 6 | ||||
-rw-r--r-- | src/gen/sitemap.11ty.js | 17 | ||||
-rw-r--r-- | src/gen/sitemap.njk | 12 | ||||
-rw-r--r-- | src/index.njk (renamed from src/index.md) | 2 | ||||
-rw-r--r-- | src/layouts/base.11ty.js | 51 | ||||
-rw-r--r-- | src/layouts/page.11ty.js | 14 | ||||
-rw-r--r-- | src/layouts/post.11ty.js | 17 |
25 files changed, 203 insertions, 236 deletions
diff --git a/src/data/env.js b/src/_data/env.js index a497313..a497313 100644 --- a/src/data/env.js +++ b/src/_data/env.js diff --git a/src/data/metadata.js b/src/_data/metadata.js index a38e344..7f07bb6 100644 --- a/src/data/metadata.js +++ b/src/_data/metadata.js @@ -12,7 +12,8 @@ module.exports = { name: "Marc Pervaz Boocha", email: "mboocha@sudomsg.xyz", github: "https://github.com/marcthe12", + linkedin: "https://www.linkedin.com/in/marc-pervaz-boocha-200706236/", image: "/favicon/512.png", url: "/about/#marc-pervaz-boocha" } -};
\ No newline at end of file +}; diff --git a/src/_includes/base.njk b/src/_includes/base.njk new file mode 100644 index 0000000..19cf0d8 --- /dev/null +++ b/src/_includes/base.njk @@ -0,0 +1,52 @@ +--- +nav: + Home: "/" + Blog: "/blog" + About: "/about" + Git: "/cgit" +--- +<!DOCTYPE html> +<html lang="{{ metadata.language }}"> + <head> + <meta charset="utf-8"> + <meta property="og:locale content=en_GB"> + <title property="og:title">{{ title or metadata.title }}</title> + <meta property="og:site_name" content="{{ metadata.title }}"> + <meta name="author" content="{{ metadata.author.name }}"> + <meta name="description" property="og:description content="{{ description or data.metadata }}"> + <meta property="og:type" content="website"> + {% if keywords %} + <meta name="keywords" contents="{{ keywords | join }}"> + {% endif %} + <meta name="viewport" content="width=device-width, initial-scale=1"> + <meta name="twitter:card" content="summary"> + <meta property=og:url content="{{ page.url | absoluteUrl(metadata.url)}}"> + <link rel="canonical" href="{{ page.url | absoluteUrl(metadata.url)}}"> + <link rel="alternate" href="{{ metadata.feed.atom }}" type="application/atom+xml" title="{{ metadata.title }}"> + <link rel="alternate" href="{{ metadata.feed.json }}" type="application/feed+json" title="{{ metadata.title }}"> + <meta property="og:image" content="/favicon/1024.png"> + <link rel="icon" href="/favicon.ico" sizes="any"> + <link rel="icon" href="/favicon/icon.svg" type="image/svg+xml"> + <link rel="apple-touch-icon" href="/favicon/192.png"> + <link rel="manifest" href="/app.webmanifest"> + <link rel="stylesheet" href="/assets/index.css"> + <link rel="stylesheet" href="/vendor/prism.css"> + <script type="module" src="/assets/index.js" defer></script> + </head> + <body> + <header> + <nav> + <a href="#" id="nav-toogle">Sudomsg</a> + {% for name, location in nav %} + <a class="navlinks" href="{{location}}" >{{name}}</a> + {% endfor %} + </nav> + </header> + <main> + {{ content | safe }} + </main> + <footer> + Subscribe: <a href="{{metadata.feed.atom}}">RSS</a> <a href="{{ metadata.feed.json }}">JSON</a> + </footer> + </body> +</html> diff --git a/src/_includes/page.njk b/src/_includes/page.njk new file mode 100644 index 0000000..263e09c --- /dev/null +++ b/src/_includes/page.njk @@ -0,0 +1,7 @@ +--- +layout: base +--- +<article> + <h1 id="{{title | slug }}">{{title}}</h1> + {{content|safe}} +</article> diff --git a/src/_includes/post.njk b/src/_includes/post.njk new file mode 100644 index 0000000..f613809 --- /dev/null +++ b/src/_includes/post.njk @@ -0,0 +1,9 @@ +--- +layout: page +tags: + - posts +--- +<small> + <time datetime="{{page.date | htmlDateString }}">{{ page.date | readableDate}}</time> - <a rel=author href="{{ metadata.author.url }}">{{ metadata.author.name }}</a> +</small> +{{content|safe}} diff --git a/src/about.md b/src/about.md deleted file mode 100644 index a0beb69..0000000 --- a/src/about.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -layout: page -title: About Me ---- -## {{ metadata.author.name }} - -{.side} - -Email: <{{ metadata.author.email }}> - -Github: <{{ metadata.author.github}}> diff --git a/src/about.njk b/src/about.njk new file mode 100644 index 0000000..ee867fd --- /dev/null +++ b/src/about.njk @@ -0,0 +1,14 @@ +--- +layout: page +title: About Me +--- + +<h2>{{ metadata.author.name }}</h2> +<img alt="A Photo of me" src="{{ metadata.author.image}}" class="side"> +<p>I am an analytical and passionate second year CHRIST University student pursuing B. Tech in Computer Engineering in Bengaluru. I am eager to further my knowledge, develop my skills and gain experience to convert my interest in computers into a fulfilling career. +<p>Contact Details +<ul> +<li><a href="mailto:{{ metadata.author.email }}">Email</a> +<li><a href="{{ metadata.author.github}}">Github</a> +<li><a href="{{ metadata.author.linkedin}}">LinkedIn</a> +</ol> diff --git a/src/blog.11ty.js b/src/blog.11ty.js deleted file mode 100644 index eb79089..0000000 --- a/src/blog.11ty.js +++ /dev/null @@ -1,23 +0,0 @@ -module.exports = class { - data() { - return { - layout: "base", - title: "Blog" - }; - } - - render(data) { - return `<div role="feed" aria-busy="false"> - ${(data.collections.posts || []).map((post, index, array) => `<article aria-posinset="${index}" aria-setsize="${array.len}"> - <h1> - <a href="${post.url}">${post.data.title}</a> - </h1> - <small> - <time datetime="${data.page.date.toISOString()}">${data.page.date.toDateString()}</time> - <a rel=author href="${data.metadata.author.url}">${data.metadata.author.name}</a> - </small> - <p>${post.data.description}</p> - </article> - `).join()} - </div>`; - } -}; diff --git a/src/blog.njk b/src/blog.njk new file mode 100644 index 0000000..9998e70 --- /dev/null +++ b/src/blog.njk @@ -0,0 +1,17 @@ +--- +layout: base +title: Blog +--- +<div role="feed" aria-busy="false"> +{% for post in collections.posts %} + <article aria-posinset="{{loop.index}}" aria-setsize="{{loop.len}}"> + <h1> + <a href="{{post.url}}">{{post.data.title}}</a> + </h1> + <small> + <time datetime="{{page.date.toISOString()}}">{{page.date.toDateString()}}</time> - <a rel=author href="{{metadata.author.url}}">{{ metadata.author.name }}</a> + </small> + <p>{{post.data.description}}</p> + </article> +{% endfor %} +</div> diff --git a/src/gen/atom.11ty.js b/src/gen/atom.11ty.js deleted file mode 100644 index 0184018..0000000 --- a/src/gen/atom.11ty.js +++ /dev/null @@ -1,30 +0,0 @@ -module.exports = class { - async data() { - return { - permalink: "/feed.xml" - }; - } - - async render(data) { - return `<?xml version="1.0" encoding="utf-8"?> - <feed xmlns="http://www.w3.org/2005/Atom"> - <title>${data.metadata.title}</title> - <subtitle>${data.metadata.description}</subtitle> - <link href="${new URL(data.url, data.metadata.url)}" rel="self"/> - <link href="${data.metadata.url}"/> - <updated>${this.getNewestCollectionItemDate((data.collections.posts) || []).toISOString()}</updated> - <id>${data.metadata.url}</id> - <author> - <name>${data.metadata.author.name}</name> - <email>${data.metadata.author.email}</email> - </author> - ${(await Promise.all((data.collections.posts || []).map(async post => `<entry> - <title>${post.data.title}</title> - <link href="${new URL(post.url, data.metadata.url)}"/> - <updated>${post.date.toISOString()}</updated> - <id>${new URL(post.url, data.metadata.url)}</id> - <content type="html"><![CDATA[${await this.convertHtmlToAbsoluteUrls(post.templateContent, new URL(post.url, data.metadata.url)) || ""}]]></content> - </entry>`))).join()} - </feed>`; - } -}; diff --git a/src/gen/atom.njk b/src/gen/atom.njk new file mode 100644 index 0000000..a603195 --- /dev/null +++ b/src/gen/atom.njk @@ -0,0 +1,27 @@ +--- +permalink: "/feed.xml" +--- +<?xml version="1.0" encoding="utf-8"?> +<feed xmlns="http://www.w3.org/2005/Atom"> + <title>{{ metadata.title }}</title> + <subtitle>${data.metadata.description}</subtitle> + {% set absoluteUrl %}{{ metadata.feed.path | url | absoluteUrl(metadata.url) }}{% endset %} + <link href="{{ metadata.feed.path | absoluteUrl(metadata.url) }}" rel="self"/> + <link href="{{ metadata.url }}"/> + <updated>{{ collections.posts | getNewestCollectionItemDate | dateToRfc3339 }}</updated> + <id>{{ metadata.feed.id }}</id> + <author> + <name>{{ metadata.author.name }}</name> + <email>{{ metadata.author.email }}</email> + </author> + {% for post in collections.posts | reverse %} + {% set absolutePostUrl %}{{ post.url | absoluteUrl(metadata.url) }}{% endset %} + <entry> + <title>{{ post.data.title }}</title> + <link href="{{ absolutePostUrl }}"/> + <updated>{{ post.date | dateToRfc3339 }}</updated> + <id>{{ absolutePostUrl }}</id> + <content type="html">{{ post.templateContent | htmlToAbsoluteUrls(absolutePostUrl) }}</content> + </entry> + {% endfor %} +</feed> diff --git a/src/gen/error.11ty.js b/src/gen/error.11ty.js deleted file mode 100644 index 6c7105e..0000000 --- a/src/gen/error.11ty.js +++ /dev/null @@ -1,21 +0,0 @@ -module.exports = class { - data() { - return { - layout: "base", - pagination: { - data: "err", - size: 1, - }, - err: { - offline: "The Page is offline", - 404: "Not Found" - }, - permalink: data => `/${data.pagination.items}.html` - }; - } - - render(data) { - return `<h1 style="color: rgb(139 0 0)">ERROR: ${data.pagination.items}</h1> - <p>${data.err[data.pagination.items]}</p>`; - } -}; diff --git a/src/gen/error.njk b/src/gen/error.njk new file mode 100644 index 0000000..dc5599c --- /dev/null +++ b/src/gen/error.njk @@ -0,0 +1,13 @@ +--- +layout: base +pagination: + data: err + size: 1 +err: + offline: The Page is offline + 404: Not Found +permalink: "/{{pagination.items}}.html" +--- + +<h1 style="color: rgb(139 0 0)">ERROR: {{pagination.items}}</h1> +<p>{{err[pagination.items]}}</p> diff --git a/src/gen/feedjson.11ty.js b/src/gen/feedjson.11ty.js new file mode 100644 index 0000000..7ddbf51 --- /dev/null +++ b/src/gen/feedjson.11ty.js @@ -0,0 +1,35 @@ +module.exports = class { + data() { + return { + permalink: "/feed.json" + }; + } + + async render(data) { + const out = { + version: "https://jsonfeed.org/version/1.1", + title: data.metadata.title, + language: data.metadata.language, + home_page_url: data.metadata.url, + feed_url: data.page.url, + description: data.metadata.description, + author: { + name: data.metadata.author.name, + url: data.metadata.author.url + }, + items: (data.collections.posts || []).map( + async function (e) { + const absolutePostUrl = this.absoluteUrl(this.url(e.url), data.metadata.url) + return { + id: absolutePostUrl, + url: absolutePostUrl, + title: e.data.title, + date_published: this.dateToRfc3339(e.date), + content_html: htmlToAbsoluteUrls(e.templateContent, absolutePostUrl), + } + } + ) + } + return JSON.stringify(out) + } +} diff --git a/src/gen/gen.11tydata.js b/src/gen/gen.11tydata.js index 52b6ced..5694649 100644 --- a/src/gen/gen.11tydata.js +++ b/src/gen/gen.11tydata.js @@ -2,7 +2,8 @@ const path = require("path"); module.exports = { eleventyExcludeFromCollections: true, + permalink: false, eleventyComputed: { - permalink: data => data.permalink || `/${path.relative("/gen", data.page.filePathStem)}.${data.page.outputFileExtension}` + //permalink: data => data.permalink || `/${path.relative("/gen", data.page.filePathStem)}.${data.page.outputFileExtension}` } -};
\ No newline at end of file +} diff --git a/src/gen/json.11ty.js b/src/gen/json.11ty.js deleted file mode 100644 index 017b69c..0000000 --- a/src/gen/json.11ty.js +++ /dev/null @@ -1,28 +0,0 @@ -module.exports = class { - async data() { - return { - permalink: "/feed.json" - }; - } - - async render(data) { - return JSON.stringify({ - version: "https://jsonfeed.org/version/1.1", - title: data.metadata.title, - language: data.metadata.language, - home_page_url: data.metadata.url, - feed_url: new URL(data.page.url, data.metadata.url), - description: data.metadata.description, - author: { - name: data.metadata.author.name - }, - items: await Promise.all((data.collections.posts || []).map(async post => ({ - id: new URL(post.url, data.metadata.url), - url: new URL(post.url, data.metadata.url), - title: new URL(post.url, data.metadata.url), - content_html: await this.convertHtmlToAbsoluteUrls(post.templateContent, new URL(post.url, data.metadata.url)), - date_published: post.date.toISOString() - })).reverse()) - }); - } -};
\ No newline at end of file diff --git a/src/gen/metadata.11ty.js b/src/gen/metadata.11ty.js index 87d7997..56bf6af 100644 --- a/src/gen/metadata.11ty.js +++ b/src/gen/metadata.11ty.js @@ -1,15 +1,13 @@ module.exports = class { data() { return { - permalink: "/assets/metadata.js" + //permalink: "/assets/metadata.js" + permalink: false }; } render() { - const obj = JSON.stringify({ - version: new Date().toISOString() - }); - return `const obj = '${obj}' - export default () => JSON.parse(obj);`; + const date = new Date() + return `export default = ${date.toISOString()}` } -};
\ No newline at end of file +}; diff --git a/src/gen/robot.11ty.js b/src/gen/robot.11ty.js deleted file mode 100644 index 289d3b6..0000000 --- a/src/gen/robot.11ty.js +++ /dev/null @@ -1,13 +0,0 @@ -module.exports = class { - data() { - return { - permalink: "/robot.txt" - }; - } - - render(data) { - return `User-agent: * - Disallow: - Sitemap: ${new URL("/sitemap.xml",data.metadata.url)}`; - } -};
\ No newline at end of file diff --git a/src/gen/robot.njk b/src/gen/robot.njk new file mode 100644 index 0000000..faf9e2f --- /dev/null +++ b/src/gen/robot.njk @@ -0,0 +1,6 @@ +--- +permalink: /robot.txt +--- +User-agent: * +Disallow: +Sitemap: {{ "/sitemap.xml" | absoluteUrl(data.metadata.url)}} diff --git a/src/gen/sitemap.11ty.js b/src/gen/sitemap.11ty.js deleted file mode 100644 index 02b285f..0000000 --- a/src/gen/sitemap.11ty.js +++ /dev/null @@ -1,17 +0,0 @@ -module.exports = class { - data() { - return { - permalink: "/sitemap.xml" - }; - } - - render(data) { - return `<?xml version="1.0" encoding="utf-8"?> - <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> - ${(data.collections.all || []).map(page => `<url> - <loc>${new URL(page.url, data.metadata.url)}</loc> - <lastmod>${page.date.toISOString()}</lastmod> - </url>`).join()} - </urlset>`; - } -}; diff --git a/src/gen/sitemap.njk b/src/gen/sitemap.njk new file mode 100644 index 0000000..c2030de --- /dev/null +++ b/src/gen/sitemap.njk @@ -0,0 +1,12 @@ +--- +permalink: "/sitemap.xml" +--- +<?xml version="1.0" encoding="utf-8"?> +<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> +{% for page in collections.all %} + <url> + <loc>{{ page.url | absoluteUrl(metadata.url) }}</loc> + <lastmod>{{ page.date | htmlDateString }}</lastmod> + </url> +{% endfor %} +</urlset> diff --git a/src/index.md b/src/index.njk index c4d3ed6..a56bc07 100644 --- a/src/index.md +++ b/src/index.njk @@ -3,4 +3,4 @@ layout: page title: Welcome --- - +<p> Hello diff --git a/src/layouts/base.11ty.js b/src/layouts/base.11ty.js deleted file mode 100644 index a42b15f..0000000 --- a/src/layouts/base.11ty.js +++ /dev/null @@ -1,51 +0,0 @@ -const {oneLine} = require("common-tags") - -module.exports = class { - render(data) { - return oneLine`<!DOCTYPE html> - <html lang="${data.metadata.language}"> - <head> - <meta charset="utf-8"> - <meta property="og:locale content=en_GB"> - <title property="og:title">${data.title || data.metadata.title}</title> - <meta property="og:site_name" content="${data.metadata.title}"> - <meta name="author" content="${data.metadata.author.name}"> - <meta name="description" property="og:description content="${data.description || data.metadata.description}"> - <meta property="og:type" content="website"> - ${data.keywords ? `<meta name="keywords" contents="${data.keywords.join()}>`: ""} - <meta name="generator" contents="Eleventy v${data.pkg.dependencies["@11ty/eleventy"].replace("^", "")}"> - <meta name="viewport" content="width=device-width, initial-scale=1"> - <meta name="twitter:card" content="summary"> - <meta property=og:url content="${new URL(data.page.url, data.metadata.url)}"> - <link rel="canonical" href="${new URL(data.page.url, data.metadata.url)}"> - <link rel="alternate" href="${data.metadata.feed.atom}" type="application/atom+xml" title="${data.metadata.title}"> - <link rel="alternate" href="${data.metadata.feed.json}" type="application/feed+json" title="${data.metadata.title}"> - <meta property="og:image" content="/favicon/1024.png"> - <link rel="icon" href="/favicon.ico" sizes="any"> - <link rel="icon" href="/favicon/icon.svg" type="image/svg+xml"> - <link rel="apple-touch-icon" href="/favicon/192.png"> - <link rel="manifest" href="/app.webmanifest"> - <link rel="stylesheet" href="/assets/index.css"> - <link rel="stylesheet" href="/vendor/prism.css"> - <script type="module" src="/assets/index.js" defer></script> - </head> - <body> - <header> - <nav> - <a href="#" id="nav-toogle">Sudomsg</a> - <a class="navlinks" href="/" >Home</a> - <a class="navlinks" href="/blog/">Blog</a> - <a class="navlinks" href="/about/">About</a> - </nav> - </header> - <main> - ${data.content} - </main> - <footer> - Subscribe: <a href="${data.metadata.feed.atom}">RSS</a> - <a href="${data.metadata.feed.json}">JSON</a> - </footer> - </body> - </html>`; - } -}; diff --git a/src/layouts/page.11ty.js b/src/layouts/page.11ty.js deleted file mode 100644 index 53b0bd8..0000000 --- a/src/layouts/page.11ty.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = class { - data() { - return { - layout: "base", - }; - } - - render(data) { - return `<article> - <h1>${data.title}</h1> - ${data.content} - </article>`; - } -}; diff --git a/src/layouts/post.11ty.js b/src/layouts/post.11ty.js deleted file mode 100644 index 2cd725d..0000000 --- a/src/layouts/post.11ty.js +++ /dev/null @@ -1,17 +0,0 @@ -module.exports = class { - data() { - return { - layout: "page", - tags: [ - "posts" - ] - }; - } - - render(data) { - return `<small> - <time datetime="${data.page.date.toISOString()}">${data.page.date.toDateString()}</time> - <a rel=author href="${data.metadata.author.url}">${data.metadata.author.name}</a> - </small> - ${data.content}`; - } -}; |