This project is my personal website. My articles on Medium and dev.to are here π. My repositories on github are here too. π
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. πͺ
git clone https://github.com/yasinatesim/yasinates.com.git
.env
file on rootNEXT_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 theEncrypt
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 π€£
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
for more information.