commit 8badd3f3e7455913fec68110d9f215d0826c3c1d Author: somrat sorkar Date: Mon Apr 17 12:50:29 2023 +0600 initialize project diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..896e0d7 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,14 @@ +; https://editorconfig.org + +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_size = 2 +indent_style = space +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100755 index 0000000..6b0733f --- /dev/null +++ b/.gitignore @@ -0,0 +1,26 @@ +# build output +dist/ +.output/ +.json/ + +# dependencies +node_modules/ + +# logs +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +yarn.lock +package-lock.json + + +# environment variables +.env +.env.production + +# macOS-specific files +.DS_Store + +# ignore .astro directory +.astro diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100755 index 0000000..ae399b8 --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,4 @@ +{ + "MD033": false, + "MD013": false +} diff --git a/.prettierrc b/.prettierrc new file mode 100755 index 0000000..21b54aa --- /dev/null +++ b/.prettierrc @@ -0,0 +1,10 @@ +{ + "overrides": [ + { + "files": ["*.astro"], + "options": { + "parser": "astro" + } + } + ] +} diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..30810fa --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["astro-build.astro-vscode"] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..766f97d --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "files.associations": { + "*.mdx": "markdown" + } +} diff --git a/astro.config.mjs b/astro.config.mjs new file mode 100755 index 0000000..4d88f46 --- /dev/null +++ b/astro.config.mjs @@ -0,0 +1,55 @@ +import image from "@astrojs/image"; +import mdx from "@astrojs/mdx"; +import react from "@astrojs/react"; +import sitemap from "@astrojs/sitemap"; +import tailwind from "@astrojs/tailwind"; +import AutoImport from "astro-auto-import"; +import { defineConfig } from "astro/config"; +import remarkCollapse from "remark-collapse"; +import remarkToc from "remark-toc"; +import config from "./src/config/config.json"; + +// https://astro.build/config +export default defineConfig({ + site: config.site.base_url ? config.site.base_url : "http://examplesite.com", + base: config.site.base_path ? config.site.base_path : "/", + trailingSlash: config.site.trailing_slash ? "always" : "never", + integrations: [ + react(), + sitemap(), + tailwind({ + config: { + applyBaseStyles: false, + }, + }), + image({ + serviceEntryPoint: "@astrojs/image/sharp", + }), + AutoImport({ + imports: [ + "@shortcodes/Button", + "@shortcodes/Accordion", + "@shortcodes/Notice", + "@shortcodes/Video", + "@shortcodes/Youtube", + ], + }), + mdx(), + ], + markdown: { + remarkPlugins: [ + remarkToc, + [ + remarkCollapse, + { + test: "Table of contents", + }, + ], + ], + shikiConfig: { + theme: "one-dark-pro", + wrap: true, + }, + extendDefaultPlugins: true, + }, +}); diff --git a/netlify.toml b/netlify.toml new file mode 100755 index 0000000..809704f --- /dev/null +++ b/netlify.toml @@ -0,0 +1,12 @@ +[build] +publish = "dist" +command = "yarn build" + +[[headers]] +for = "/*" # This defines which paths this specific [[headers]] block will cover. + +[headers.values] +X-Frame-Options = "DENY" +X-XSS-Protection = "1; mode=block" +Referrer-Policy = "same-origin" +Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload" diff --git a/package.json b/package.json new file mode 100755 index 0000000..4607543 --- /dev/null +++ b/package.json @@ -0,0 +1,52 @@ +{ + "name": "astroplate", + "version": "1.0.0", + "description": "Astro and Tailwindcss boilerplate", + "author": "zeon.studio", + "license": "MIT", + "scripts": { + "dev": "astro dev", + "build": "astro build", + "json": "node scripts/jsonGenerator.js", + "format": "prettier -w ." + }, + "dependencies": { + "@astrojs/image": "^0.16.6", + "@astrojs/mdx": "^0.19.0", + "@astrojs/rss": "^2.3.2", + "astro": "^2.3.0", + "astro-auto-import": "^0.2.1", + "date-fns": "^2.29.3", + "date-fns-tz": "^2.0.0", + "disqus-react": "^1.1.5", + "fuse.js": "^6.6.2", + "github-slugger": "^2.0.0", + "gray-matter": "^4.0.3", + "marked": "^4.3.0", + "prop-types": "^15.8.1", + "react-icons": "^4.8.0", + "react-lite-youtube-embed": "^2.3.52", + "remark-collapse": "^0.1.2", + "remark-toc": "^8.0.1", + "swiper": "^9.2.2" + }, + "devDependencies": { + "@astrojs/react": "^2.1.1", + "@astrojs/sitemap": "^1.2.2", + "@astrojs/tailwind": "^3.1.1", + "@tailwindcss/forms": "^0.5.3", + "@tailwindcss/typography": "^0.5.9", + "@types/marked": "^4.0.8", + "@types/react": "^18.0.35", + "postcss": "^8.4.21", + "prettier": "^2.8.7", + "prettier-plugin-astro": "^0.8.0", + "prettier-plugin-tailwindcss": "^0.2.7", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.62.0", + "sharp": "^0.32.0", + "tailwind-bootstrap-grid": "^5.0.1", + "tailwindcss": "^3.3.1" + } +} diff --git a/postcss.config.js b/postcss.config.js new file mode 100755 index 0000000..12a703d --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/public/.htaccess b/public/.htaccess new file mode 100755 index 0000000..cf0c6ba --- /dev/null +++ b/public/.htaccess @@ -0,0 +1,88 @@ +##### Optimize default expiration time - BEGIN + + + ## Enable expiration control + ExpiresActive On + + ## CSS and JS expiration: 1 week after request + ExpiresByType text/css "now plus 1 week" + ExpiresByType application/javascript "now plus 1 week" + ExpiresByType application/x-javascript "now plus 1 week" + + ## Image files expiration: 1 month after request + ExpiresByType image/bmp "now plus 1 month" + ExpiresByType image/gif "now plus 1 month" + ExpiresByType image/jpeg "now plus 1 month" + ExpiresByType image/webp "now plus 1 month" + ExpiresByType image/jp2 "now plus 1 month" + ExpiresByType image/pipeg "now plus 1 month" + ExpiresByType image/png "now plus 1 month" + ExpiresByType image/svg+xml "now plus 1 month" + ExpiresByType image/tiff "now plus 1 month" + ExpiresByType image/x-icon "now plus 1 month" + ExpiresByType image/ico "now plus 1 month" + ExpiresByType image/icon "now plus 1 month" + ExpiresByType text/ico "now plus 1 month" + ExpiresByType application/ico "now plus 1 month" + ExpiresByType image/vnd.wap.wbmp "now plus 1 month" + + ## Font files expiration: 1 month after request + ExpiresByType application/x-font-ttf "now plus 1 month" + ExpiresByType application/x-font-opentype "now plus 1 month" + ExpiresByType application/x-font-woff "now plus 1 month" + ExpiresByType font/woff2 "now plus 1 month" + ExpiresByType image/svg+xml "now plus 1 month" + + ## Audio files expiration: 1 month after request + ExpiresByType audio/ogg "now plus 1 month" + ExpiresByType application/ogg "now plus 1 month" + ExpiresByType audio/basic "now plus 1 month" + ExpiresByType audio/mid "now plus 1 month" + ExpiresByType audio/midi "now plus 1 month" + ExpiresByType audio/mpeg "now plus 1 month" + ExpiresByType audio/mp3 "now plus 1 month" + ExpiresByType audio/x-aiff "now plus 1 month" + ExpiresByType audio/x-mpegurl "now plus 1 month" + ExpiresByType audio/x-pn-realaudio "now plus 1 month" + ExpiresByType audio/x-wav "now plus 1 month" + + ## Movie files expiration: 1 month after request + ExpiresByType application/x-shockwave-flash "now plus 1 month" + ExpiresByType x-world/x-vrml "now plus 1 month" + ExpiresByType video/x-msvideo "now plus 1 month" + ExpiresByType video/mpeg "now plus 1 month" + ExpiresByType video/mp4 "now plus 1 month" + ExpiresByType video/quicktime "now plus 1 month" + ExpiresByType video/x-la-asf "now plus 1 month" + ExpiresByType video/x-ms-asf "now plus 1 month" + +##### Optimize default expiration time - END + +##### 1 Month for most static resources + + Header set Cache-Control "max-age=2592000, public" + + +##### Enable gzip compression for resources + + mod_gzip_on Yes + mod_gzip_dechunk Yes + mod_gzip_item_include file .(html?|txt|css|js|php)$ + mod_gzip_item_include handler ^cgi-script$ + mod_gzip_item_include mime ^text/.* + mod_gzip_item_include mime ^application/x-javascript.* + mod_gzip_item_exclude mime ^image/.* + mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* + + +##### Or, compress certain file types by extension: + + SetOutputFilter DEFLATE + + +##### Set Header Vary: Accept-Encoding + + + Header append Vary: Accept-Encoding + + \ No newline at end of file diff --git a/public/images/404.png b/public/images/404.png new file mode 100755 index 0000000..fd799aa Binary files /dev/null and b/public/images/404.png differ diff --git a/public/images/avatar-sm.png b/public/images/avatar-sm.png new file mode 100755 index 0000000..98483e3 Binary files /dev/null and b/public/images/avatar-sm.png differ diff --git a/public/images/avatar.png b/public/images/avatar.png new file mode 100755 index 0000000..387b035 Binary files /dev/null and b/public/images/avatar.png differ diff --git a/public/images/banner.png b/public/images/banner.png new file mode 100755 index 0000000..3bbbfed Binary files /dev/null and b/public/images/banner.png differ diff --git a/public/images/call-to-action.png b/public/images/call-to-action.png new file mode 100755 index 0000000..ec2d625 Binary files /dev/null and b/public/images/call-to-action.png differ diff --git a/public/images/favicon.png b/public/images/favicon.png new file mode 100644 index 0000000..94774af Binary files /dev/null and b/public/images/favicon.png differ diff --git a/public/images/image-placeholder.png b/public/images/image-placeholder.png new file mode 100755 index 0000000..a61a0c0 Binary files /dev/null and b/public/images/image-placeholder.png differ diff --git a/public/images/logo-darkmode.png b/public/images/logo-darkmode.png new file mode 100644 index 0000000..9f5fa53 Binary files /dev/null and b/public/images/logo-darkmode.png differ diff --git a/public/images/logo.png b/public/images/logo.png new file mode 100644 index 0000000..6ef4aec Binary files /dev/null and b/public/images/logo.png differ diff --git a/public/images/no-search-found.png b/public/images/no-search-found.png new file mode 100755 index 0000000..1e1e6e1 Binary files /dev/null and b/public/images/no-search-found.png differ diff --git a/public/images/service-1.png b/public/images/service-1.png new file mode 100755 index 0000000..5842791 Binary files /dev/null and b/public/images/service-1.png differ diff --git a/public/images/service-2.png b/public/images/service-2.png new file mode 100755 index 0000000..2cc116a Binary files /dev/null and b/public/images/service-2.png differ diff --git a/public/images/service-3.png b/public/images/service-3.png new file mode 100755 index 0000000..cf690b7 Binary files /dev/null and b/public/images/service-3.png differ diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 0000000..9ea0e6f --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,4 @@ +User-agent: * +Allow: / + +Disallow: /api/* \ No newline at end of file diff --git a/readme.md b/readme.md new file mode 100755 index 0000000..3858d8e --- /dev/null +++ b/readme.md @@ -0,0 +1,20 @@ +# Astro Tailwind Boilerplate + +## Dependency + +- astro 2.3+ +- node v18+ +- npm v9.5+ +- tailwind v3.3+ + +## Development Command + +``` +npm run dev +``` + +## Build Command + +``` +npm run build +``` diff --git a/scripts/jsonGenerator.js b/scripts/jsonGenerator.js new file mode 100644 index 0000000..6c2d20b --- /dev/null +++ b/scripts/jsonGenerator.js @@ -0,0 +1,44 @@ +const fs = require("fs"); +const path = require("path"); +const matter = require("gray-matter"); +const config = require("../src/config/config.json"); +const { blog_folder } = config.settings; +const jsonDir = "./.json"; + +// get data from markdown +const getData = (folder) => { + const getPath = fs.readdirSync(path.join(folder)); + const sanitizeData = getPath.filter((item) => item.includes(".md")); + const filterData = sanitizeData.filter((item) => item.match(/^(?!_)/)); + const getData = filterData.map((filename) => { + const file = fs.readFileSync(path.join(folder, filename), "utf-8"); + const { data } = matter(file); + const content = matter(file).content; + const slug = data.slug ? data.slug : filename.replace(".md", ""); + + return { + frontmatter: data, + content: content, + slug: slug, + }; + }); + const publishedPages = getData.filter( + (page) => !page.frontmatter?.draft && page + ); + return publishedPages; +}; + +// get post data +const posts = getData(`src/content/${blog_folder}`); + +try { + // creare folder if it doesn't exist + if (!fs.existsSync(jsonDir)) { + fs.mkdirSync(jsonDir); + } + + // create posts.json file + fs.writeFileSync(`${jsonDir}/posts.json`, JSON.stringify(posts)); +} catch (err) { + console.error(err); +} diff --git a/src/config/config.json b/src/config/config.json new file mode 100755 index 0000000..794b4ef --- /dev/null +++ b/src/config/config.json @@ -0,0 +1,47 @@ +{ + "site": { + "title": "Astroplate", + "base_url": "https://astroplate.netlify.app", + "base_path": "/", + "trailing_slash": false, + "favicon": "/images/favicon.png", + "logo": "/images/logo.png", + "logo_darkmode": "/images/logo-darkmode.png", + "logo_width": "150", + "logo_height": "30", + "logo_text": "Astroplate" + }, + + "settings": { + "search": true, + "sticky_header": true, + "theme_switcher": true, + "default_theme": "system", + "pagination": 2, + "summary_length": 200, + "blog_folder": "posts" + }, + + "params": { + "contact_form_action": "#", + "copyright": "Designed And Developed by [Zeon Studio](https://zeon.studio)" + }, + + "navigation_button": { + "enable": true, + "label": "Get Started", + "link": "#" + }, + + "disqus": { + "enable": true, + "shortname": "themefisher-template", + "settings": {} + }, + + "metadata": { + "meta_author": "zeon.studio", + "meta_image": "/images/og-image.png", + "meta_description": "astro and tailwind boilerplate" + } +} diff --git a/src/config/menu.json b/src/config/menu.json new file mode 100755 index 0000000..7fe7d5c --- /dev/null +++ b/src/config/menu.json @@ -0,0 +1,61 @@ +{ + "main": [ + { + "name": "Home", + "url": "/" + }, + { + "name": "About", + "url": "/about" + }, + { + "name": "Elements", + "url": "/elements" + }, + { + "name": "Pages", + "url": "", + "hasChildren": true, + "children": [ + { + "name": "Contact", + "url": "/contact" + }, + { + "name": "Blog", + "url": "/posts" + }, + { + "name": "Authors", + "url": "/authors" + }, + { + "name": "Categories", + "url": "/categories" + }, + { + "name": "Search", + "url": "/search" + }, + { + "name": "404 Page", + "url": "/404" + } + ] + } + ], + "footer": [ + { + "name": "About", + "url": "/about" + }, + { + "name": "Elements", + "url": "/elements" + }, + { + "name": "Privacy Policy", + "url": "/privacy-policy" + } + ] +} diff --git a/src/config/social.json b/src/config/social.json new file mode 100644 index 0000000..a42c360 --- /dev/null +++ b/src/config/social.json @@ -0,0 +1,30 @@ +{ + "facebook": "https://facebook.com/", + "twitter": "https://twitter.com/", + "instagram": "https://instagram.com/", + "youtube": "https://youtube.com/", + "linkedin": "", + "github": "", + "gitlab": "", + "medium": "", + "codepen": "", + "bitbucket": "", + "dribbble": "", + "behance": "", + "pinterest": "", + "soundcloud": "", + "tumblr": "", + "reddit": "", + "vk": "", + "whatsapp": "", + "snapchat": "", + "vimeo": "", + "tiktok": "", + "foursquare": "", + "rss": "", + "email": "", + "phone": "", + "address": "", + "skype": "", + "website": "" +} diff --git a/src/config/theme.json b/src/config/theme.json new file mode 100755 index 0000000..687ed8c --- /dev/null +++ b/src/config/theme.json @@ -0,0 +1,44 @@ +{ + "colors": { + "default": { + "theme_color": { + "primary": "#121212", + "body": "#fff", + "border": "#eaeaea", + "theme_light": "#f6f6f6", + "theme_dark": "" + }, + "text_color": { + "default": "#555", + "dark": "#040404", + "light": "#999" + } + }, + "darkmode": { + "theme_color": { + "primary": "#fff", + "body": "#1c1c1c", + "border": "#3E3E3E", + "theme_light": "#222222", + "theme_dark": "" + }, + "text_color": { + "default": "#B4AFB6", + "dark": "#fff", + "light": "#B4AFB6" + } + } + }, + "fonts": { + "font_family": { + "primary": "Heebo:wght@400;600", + "primary_type": "sans-serif", + "secondary": "Signika:wght@500;700", + "secondary_type": "sans-serif" + }, + "font_size": { + "base": "16", + "scale": "1.250" + } + } +} diff --git a/src/content/authors/_index.md b/src/content/authors/_index.md new file mode 100644 index 0000000..62eae44 --- /dev/null +++ b/src/content/authors/_index.md @@ -0,0 +1,3 @@ +--- +title: "Authors" +--- diff --git a/src/content/authors/john-doe.md b/src/content/authors/john-doe.md new file mode 100644 index 0000000..2b72bd5 --- /dev/null +++ b/src/content/authors/john-doe.md @@ -0,0 +1,12 @@ +--- +title: John Doe +email: johndoe@email.com +image: "/images/avatar.png" +description: this is meta description +social: + facebook: https://www.facebook.com/ + twitter: https://www.twitter.com/ + instagram: https://www.instagram.com/ +--- + +lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostr navigation et dolore magna aliqua. diff --git a/src/content/authors/sam-wilson.md b/src/content/authors/sam-wilson.md new file mode 100644 index 0000000..fd6abc8 --- /dev/null +++ b/src/content/authors/sam-wilson.md @@ -0,0 +1,12 @@ +--- +title: Sam Wilson +email: samwilson@email.com +image: "/images/avatar.png" +description: this is meta description +social: + facebook: https://www.facebook.com/ + twitter: https://www.twitter.com/ + instagram: https://www.instagram.com/ +--- + +lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostr navigation et dolore magna aliqua. diff --git a/src/content/authors/william-jacob.md b/src/content/authors/william-jacob.md new file mode 100644 index 0000000..4f7db81 --- /dev/null +++ b/src/content/authors/william-jacob.md @@ -0,0 +1,12 @@ +--- +title: William Jacob +email: williamjacob@email.com +image: "/images/avatar.png" +description: this is meta description +social: + facebook: https://www.facebook.com/ + twitter: https://www.twitter.com/ + instagram: https://www.instagram.com/ +--- + +lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostr navigation et dolore magna aliqua. diff --git a/src/content/config.ts b/src/content/config.ts new file mode 100755 index 0000000..55ea265 --- /dev/null +++ b/src/content/config.ts @@ -0,0 +1,53 @@ +import { defineCollection, z } from "astro:content"; + +// Post collection schema +const postsCollection = defineCollection({ + schema: z.object({ + title: z.string(), + meta_title: z.string().optional(), + description: z.string().optional(), + date: z.date().optional(), + image: z.string().optional(), + author: z.string().default("Admin"), + categories: z.array(z.string()).default(["others"]), + tags: z.array(z.string()).default(["others"]), + draft: z.boolean().optional(), + }), +}); + +// Author collection schema +const authorsCollection = defineCollection({ + schema: z.object({ + title: z.string(), + meta_title: z.string().optional(), + email: z.string().optional(), + image: z.string().optional(), + description: z.string().optional(), + social: z + .object({ + facebook: z.string().optional(), + twitter: z.string().optional(), + instagram: z.string().optional(), + }) + .optional(), + draft: z.boolean().optional(), + }), +}); + +// Pages collection schema +const pagesCollection = defineCollection({ + schema: z.object({ + title: z.string(), + meta_title: z.string().optional(), + description: z.string().optional(), + image: z.string().optional(), + draft: z.boolean().optional(), + }), +}); + +// Export collections +export const collections = { + posts: postsCollection, + pages: pagesCollection, + authors: authorsCollection, +}; diff --git a/src/content/homepage/index.md b/src/content/homepage/index.md new file mode 100755 index 0000000..29fbecd --- /dev/null +++ b/src/content/homepage/index.md @@ -0,0 +1,53 @@ +--- +# Banner +banner: + title: "The Ultimate Starter Template You Need To Start Your Astro Project" + content: "Astroplate is a free starter template built with Astro and TailwindCSS, providing everything you need to jumpstart your Astro project and save valuable time." + image: "/images/banner.png" + button: + enable: true + label: "Get Started For Free" + link: "#" + +# Features +features: + - title: "What's Included in Astroplate" + image: "/images/service-1.png" + content: "Astroplate is a comprehensive starter template that includes everything you need to get started with your Astro project. What's Included in Astroplate" + bulletpoints: + - "10+ Pre-build pages" + - "95+ Google Pagespeed Score" + - "Build with Astro and TailwindCSS for easy and customizable styling" + - "Fully responsive on all devices" + - "SEO-optimized for better search engine rankings" + - "Open-source and free for personal and commercial use" + button: + enable: false + label: "Get Started Now" + link: "#" + + - title: "Discover the Key Features Of Astro" + image: "/images/service-2.png" + content: "Astro is an all-in-one web framework for building fast, content-focused websites. It offers a range of exciting features for developers and website creators. Some of the key features are:" + bulletpoints: + - "Zero JS, by default: No JavaScript runtime overhead to slow you down." + - "Customizable: Tailwind, MDX, and 100+ other integrations to choose from." + - "UI-agnostic: Supports React, Preact, Svelte, Vue, Solid, Lit and more." + button: + enable: true + label: "Get Started Now" + link: "#" + + - title: "The Top Reasons to Choose Astro for Your Next Project" + image: "/images/service-3.png" + content: "With Astro, you can build modern and content-focused websites without sacrificing performance or ease of use." + bulletpoints: + - "Instantly load static sites for better user experience and SEO." + - "Intuitive syntax and support for popular frameworks make learning and using Astro a breeze." + - "Use any front-end library or framework, or build custom components, for any project size." + - "Built on cutting-edge technology to keep your projects up-to-date with the latest web standards." + button: + enable: false + label: "" + link: "" +--- diff --git a/src/content/pages/404.md b/src/content/pages/404.md new file mode 100644 index 0000000..9ddc5f5 --- /dev/null +++ b/src/content/pages/404.md @@ -0,0 +1,5 @@ +--- +title: "Something Went Wrong!" +--- + +This page doesn't exist or has been removed,
we suggest you go back to Home. diff --git a/src/content/pages/about.md b/src/content/pages/about.md new file mode 100644 index 0000000..5d86a1e --- /dev/null +++ b/src/content/pages/about.md @@ -0,0 +1,9 @@ +--- +title: "Hey, I am John Doe!" +meta_title: "About" +description: "this is meta description" +image: "images/avatar.png" +draft: false +--- + +Lorem ipsum dolor sit amet consectetur adipisicing elit. Corporis illum nesciunt commodi vel nisi ut alias excepturi ipsum, totam, labore tempora, odit ex iste tempore sed. Fugit voluptatibus perspiciatis assumenda nulla ad nihil, omnis vel, doloremque sit quam autem optio maiores, illum eius facilis et quo consectetur provident dolor similique! Enim voluptatem dicta expedita veritatis repellat dolorum impedit, provident quasi at. diff --git a/src/content/pages/contact.md b/src/content/pages/contact.md new file mode 100644 index 0000000..bd6b9f6 --- /dev/null +++ b/src/content/pages/contact.md @@ -0,0 +1,6 @@ +--- +title: "Contact" +meta_title: "" +description: "this is meta description" +draft: false +--- diff --git a/src/content/pages/elements.mdx b/src/content/pages/elements.mdx new file mode 100755 index 0000000..1e14f3e --- /dev/null +++ b/src/content/pages/elements.mdx @@ -0,0 +1,224 @@ +--- +title: "Elements" +meta_title: "" +description: "this is meta description" +draft: false +--- + +# Heading 1 + +## Heading 2 + +### Heading 3 + +#### Heading 4 + +##### Heading 5 + +###### Heading 6 + +--- + +### Paragraph + +Did you come here for something in particular or just general Riker-bashing? And blowing into maximum warp speed, you appeared for an instant to be in two places at once. We have a saboteur aboard. We know you’re dealing in stolen ore. But I wanna talk about the assassination attempt on Lieutenant Worf. Could someone survive inside a transporter buffer for 75 years? Fate. It protects fools, little children, and ships. + +Did you come here for something in particular or just general Riker-bashing? And blowing into maximum warp speed, you appeared for an instant to be in two places at once. We have a saboteur aboard. We know you’re dealing in stolen ore. But I wanna talk about the assassination attempt on Lieutenant Worf. Could someone survive inside a transporter buffer for 75 years? Fate. It protects fools, little children, and ships. + +--- + +### Emphasis + +1. Did you come here for something in **particular** or just general + +2. Did you come here for something in particular + +3. _Did you come here_ + +4. Did you come here for **something** in particular + +5. Did you come here for something in particular + +6. Did you come here for something in particular + +7. URLs and URLs in angle brackets will automatically get turned into links. [http://www.example.com](http://www.example.com) or + +8. [http://www.example.com](http://www.example.com) and sometimes example.com (but not on Github, for example). + +--- + +### Link + +[I'm an inline-style link](https://www.google.com) + +[I'm an inline-style link with title](https://www.google.com "Google's Homepage") + +[I'm a reference-style link][arbitrary case-insensitive reference text] + +[I'm a relative reference to a repository file](../blob/master/LICENSE) + +[You can use numbers for reference-style link definitions][1] + +Or leave it empty and use the [link text itself]. + +example.com (but not on Github, for example). + +Some text to show that the reference links can follow later. + +[arbitrary case-insensitive reference text]: https://www.themefisher.com +[1]: https://gethugothemes.com +[link text itself]: https://www.getjekyllthemes.com + +--- + +### Ordered List + +1. List item +2. List item +3. List item +4. List item +5. List item + +--- + +### Unordered List + +- List item +- List item +- List item +- List item +- List item + +--- + +### Code and Syntax Highlighting + +#### HTML + +```html +`} +``` + +--- + +#### CSS + +```css +img { + vertical-align: middle; + border: 0; + max-width: 100%; + height: auto; +} +``` + +--- + +#### JavaScript + +```javascript +window.addEventListener("load", (e) => { + document.querySelector(".preloader").style.display = "none"; +}) +``` + +--- + +### Button + + + +--- + +### Quote + +> Did you come here for something in particular or just general Riker-bashing? And blowing into maximum warp speed, you appeared for an instant to be in two places at once. + +--- + +### Notice + + + This is a simple note. + + + + This is a simple note. + + + + This is a simple note. + + + + This is a simple note. + + +--- + +### Table + +| # | First | Last | Handle | +| :-- | :----------: | :----------: | -----------: | +| 1 | Row:1 Cell:1 | Row:1 Cell:2 | Row:1 Cell:3 | +| 2 | Row:2 Cell:1 | Row:2 Cell:2 | Row:2 Cell:3 | +| 3 | Row:3 Cell:1 | Row:3 Cell:2 | Row:3 Cell:3 | + +--- + +### Collapse + + + +- This is a thing. +- This is a thing. +- This is a thing. +- This is a thing. +- This is a thing. + + + + + +- This is a thing. +- This is a thing. +- This is a thing. +- This is a thing. +- This is a thing. + + + + + +- This is a thing. +- This is a thing. +- This is a thing. +- This is a thing. +- This is a thing. + + + +--- + +### Image + +![image](/images/image-placeholder.png) + +--- + +### Youtube video + + + +--- + +### Custom video + +