Skip to content

🌟 My portfolio / blog - Next.js, Tailwindcss, Vercel

License

Notifications You must be signed in to change notification settings

MiadV/miadv.dev

Repository files navigation

My Portfolio / Blog

Website

My Portfolio/Blog built using React.js, Next.js, Tailwind CSS, Typescript.

πŸ‘‰View Live

MiadV.dev

Folder Structure

Project directories are structured as follows:

root
    β”œβ”€β”€ /public
        β”œβ”€β”€ /fonts
        β”œβ”€β”€ /static
            β”œβ”€β”€ /favicons
            β”œβ”€β”€ /images
                β”œβ”€β”€ /blogs
                β”œβ”€β”€ /projects
        β”œβ”€β”€ robots.txt
    β”œβ”€β”€ /scripts
    β”œβ”€β”€ /src
        β”œβ”€β”€ /components
        β”œβ”€β”€ /hooks
        β”œβ”€β”€ /layouts
        β”œβ”€β”€ /pages
        β”œβ”€β”€ /styles
        β”œβ”€β”€ /utils
        β”œβ”€β”€ types.ts
        β”œβ”€β”€ /data
            β”œβ”€β”€ /blog
            β”œβ”€β”€ projects.js
package.json
tsconfig.json
next.config.js
postcss.config.js
tailwind.config.js
README.md

Running Locally

  1. Clone this reposiroty git clone https://github.com/MiadV/miadv.dev.git
  2. Navigate to project folder and install the dependencies.
npm install
npm run dev
  1. Create a .env.local file similar to .env.example.

Open http:https://localhost:3000 in your browser to see the result.

New Blog

Bootstrap new blog frontmatter the template provided. New blog should be inside /data/blog directory.

---
draft: false // if set to true it won't be accessible on website.
title: 'I am a new article'
publishedAt: '2022-01-01'
modifiedAt: '2022-01-01'
summary: "I'm the summary of the article."
image: '/static/images/blogs/new-article/banner.png' // optional
tags: ['tag-1', 'tag-2] // or empty array []
---
  • File name will be used as post slug i.e. new-article.mdx.
  • If you are using apostrophe ('), the sentence should be wrapped by double quotes (" ").
  • Each post can have an optional banner located at /public/static/images/blogs/{post-slug}/banner.png.

New Project

New projects should be defined inside /data/projects.js file.

module.exports = [
  {...Other Projects},
  {
    id: 1, // remember to update the id
    title: 'Title ...',
    tags: ['reactjs', 'nextjs', 'typescript'],
    thumbnail: '/static/images/projects/...',
    github: 'https://github.com/MiadV/...', // optional
    youtube: 'https://youtu.be/...', // optional
    live: 'https://test.com', // optional
  },
];

Cloning / Forking

Please review the license and remove all client information (logo, address, images, branding content, etc.).

Social Media