yasinates.com

My personal website via Next.js + SSG 😎 πŸ’ͺ

MIT License

Stars
6
Committers
3

πŸ“– About

This project is my personal website. My articles on Medium and dev.to are here 😎. My repositories on github are here too. πŸ˜‹

πŸ’‘Idea

I wanted to create a copy of my Github repositories, Medium and dev.to articles and show them on my website.

I wanted to copy it, I wrote the data to static json files, using Next.js's Static Site Generator feature, requesting the APIs of Github, Medium and dev.to. After publish a new github repository or article. I am making requests to APIs on my Admin panel, with my admin panel I only send requests to APIs when I share a github repository or an article, I don't always send request the APIs. So my website opens very fast. πŸ’ͺ

πŸ“šTech Stack

Getting Started

πŸ“¦ Prerequisites

  • Node (v12.0.0+)
  • Npm (v6.00+)

βš™οΈ How To Use

  1. Clone this repository
git clone https://github.com/yasinatesim/yasinates.com.git
  1. Add .env file on root
NEXT_PUBLIC_MEDIUM_URL =  'https://api.rss2json.com/v1/api.json?rss_url=https://medium.com/feed/@{{medium-username}}'
NEXT_PUBLIC_DEV_URL =  'https://dev.to/api/articles'
NEXT_PUBLIC_DEV_USERNAME =  '?username={{dev-username}}'
NEXT_PUBLIC_GITHUB_URL =  'https://api.github.com/users/{{github-username}}/repos'
NEXT_PUBLIC_POSTS_API_URL =  'http://localhost:3000/api/posts'
NEXT_PUBLIC_REPOS_API_URL =  'http://localhost:3000/api/repos'
NEXT_PUBLIC_ADMIN_PASSWORD =  '{{your-admin-password}}'
NEXT_PUBLIC_GH_USERNAME =  '{{your-github-username}}'
NEXT_PUBLIC_GH_TOKEN =  '{{your-github-access-token}}'
NEXT_PUBLIC_GH_REPOSITORY =  'https://api.github.com/repos/{{your-github-username}}/{{your-github-repository}}'

You can create your NEXT_PUBLIC_ADMIN_PASSWORD with the Encrypt function,

Usage the Encrypt function

Go to the pages/admin/index.js file and write this in the render function

{Encrypt('{{ your admin password }}')}

Note: Don't forget to delete the encrypt function added 🀣

  1. Install the project dependencies
yarn install

For Development

yarn dev

For Production Build & Build Start

yarn build

and

yarn start

For Export SSG

yarn export

For Lint & Format

yarn lint
yarn format

πŸ”‘ License

  • Copyright Β© 2020 - MIT License.
    See LICENSE for more information.
Related Projects