Git Product home page Git Product logo

aulianza / aulianza.id Goto Github PK

View Code? Open in Web Editor NEW
209.0 3.0 19.0 4.73 MB

๐Ÿ”ฅ Personal website & portfolio, built from scratch using Next.js, TypeScript, Tailwind CSS, SWR, MDX, Firebase and Prisma.

Home Page: https://aulianza.id

License: GNU General Public License v3.0

JavaScript 1.66% TypeScript 86.26% CSS 0.24% Shell 0.06% MDX 11.77%
nextjs react tailwindcss blog mdx personal-website portfolio prisma swr typescript

aulianza.id's Introduction

aulianza.id

๐Ÿ”ฅ Personal website was built originally from scratch using Next.js, TypeScript, Tailwind CSS, SWR, Firebase and Prisma with PostgreSQL

GitHub Repo stars Depfu Depfu Depfu Last Update


image

Introduction

This website was carefully crafted from the ground using Next.js and other helpful tools, starting in June 2023.

I'm constantly making improvements to add more features and content. This website is where I share what I've learned and offer insights to others.

Feel free to use this website as a reference, for inspiration, or as a template, following the provided license. You can access the source code to customize it to your needs.

If you find this website helpful, please consider leaving a rating. ๐Ÿ˜Ž๐Ÿ‘๐Ÿป

If you have any questions, suggestions, or anything else, don't hesitate to reach out to me! ๐Ÿง‘โ€๐Ÿ’ป

Tech Stack

This website is built using these technologies:

  • โ—ผ๏ธ Next.js 13.5.6
  • โš›๏ธ React 18
  • ๐Ÿ”ฐ TypeScript
  • ๐Ÿ’  Tailwind CSS 3
  • ๐Ÿ—‚ Prisma Client
  • ๐Ÿ”ฅ Firebase
  • ๐Ÿฆซ Zustand
  • ใ€ฐ๏ธ SWR
  • โžฐ Framer Motion
  • ๐Ÿ’ข React Icons
  • ๐Ÿ›ข Jest
  • ๐Ÿงฟ Absolute Import and Path Alias
  • ๐Ÿ“ ESLint
  • โœจ Prettier
  • ๐Ÿถ Husky & Lint Staged
  • ๐Ÿ“Œ Conventional Commit Lint

Features

On this website there are several features that will continue to be updated and added in the future.

  • ๐Ÿค– ChatGPT AI (Unavailable)

You can access this feature by opening the command palette [cmd+k], then typing whatever you want to search/ask for. (Currently not available, but you can configure it on your machine with your own OpenAI api key)

  • ๐Ÿ’ป JavaScript Playground

A no-fuss pure JavaScript playground with a live feedback loop.

  • ๐Ÿ’ฌ Realtime Guestbook

Realtime guestbook chat is powered by Firebase. Anyone can leave me a message in this website.

  • ๐ŸŽง Spotify Status

Displays song information being played on spotify in real time using the Spotify API and SWR.

  • ๐Ÿ•— Wakatime Statistics

Data is retrieved using the Wakatime API and then displayed on the dashboard, built with Next.js API routes deployed as serverless functions.

  • ๐Ÿ“ Blogs

The content on this blog is meticulously managed and sourced from a self-hosted headless CMS powered by WordPress, exemplifying our commitment to a streamlined and efficient content delivery system. The data fetching technique used to retrieve articles from WordPress CMS API involves using Client-Side Rendering (CSR) for the blog list and Server-Side Rendering (SSR) for the blog details.

  • ๐Ÿ—ณ Projects

The data projects on this blog are taken from the PostgreSQL database connected through the Prisma Client. The database for this application is hosted on Supabase DB.The data fetching method used to retrieve data projects is Incremental Static Regeneration (ISR) with 1 second revalidation and Server-Side Rendering (SSR) for the project details..

Performance

  • PageSpeed Insights

Report URL: https://pagespeed.web.dev/analysis/https-aulianza-id/pk0y6xcz25?form_factor=desktop

image

  • GTmetrix

Report URL: https://pagespeed.web.dev/analysis/https-aulianza-id/pk0y6xcz25?form_factor=desktop

image

Getting Started

If you are interested in running this project on your local machine, you can do so in just 3 easy steps below. Additionally, remember to update the ".env.example" file to ".env" and replace the variables with your own in the ".env" file.

1. Clone this template using one of the three ways:

  1. Clone using git

    git clone https://github.com/aulianza/aulianza.id
  2. Using create-next-app

    npx create-next-app -e https://github.com/aulianza/aulianza.id project-name
  3. Using degit

    npx degit aulianza/aulianza.id YOUR_APP_NAME
  4. Deploy to Vercel or Netlify, etc

    Deploy with Vercel Deploy to Netlify

2. Install dependencies

It is encouraged to use yarn so the husky hooks can work properly.

yarn install

3. Config .env

This repository uses several environment variables. Please copy .env.example into .env, then fill in the values with your own. For third-party environment variables such as Spotify, Wakatime, Firebase, and others, please refer to the official documentation provided by each provider.

BUNDLE_ANALYZER=false
SITE_URL=https://aulianza.id

# Blog
BLOG_API_URL=

# OpenAI
OPENAI_API_KEY=

# DEV.to
DEVTO_KEY=

# Spotify
SPOTIFY_CLIENT_ID=
SPOTIFY_CLIENT_SECRET=
SPOTIFY_REFRESH_TOKEN=

# WakaTime
WAKATIME_API_KEY=

# GitHub
GITHUB_READ_USER_TOKEN_PERSONAL=
GITHUB_READ_USER_TOKEN_WORK=

# Prisma Database
DATABASE_URL='postgres://USER:PASSWORD@HOST:5432/postgres'

# Contact Form
CONTACT_FORM_API_KEY=

# Firebase
NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_DB_URL=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=
NEXT_PUBLIC_FIREBASE_CHAT_DB=

# Next-Auth SSO
NEXTAUTH_URL=http://localhost:3000
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=

4. Run the development server

You can start the server using this command:

yarn dev

Open http://localhost:3000 with your browser to see the result. You can start editing the page by modifying src/pages/index.tsx.

License

Licensed under the GPL-3.0 license.

aulianza.id's People

Contributors

aulianza avatar dependabot[bot] avatar depfu[bot] avatar dev-dz27 avatar restyled-commits avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

aulianza.id's Issues

How to write on the blog?

Hi, could you please write me an in-depth tutorial on how to write on the blog.

Don't mean to bug you. Anyways, thanks!

Wakatime & Spotify refresh token strategy problems

I am able to stay authenticated with Spotify and Wakatime through the refresh token until its expiration time, but unfortunately, it cannot be automatically renewed after that. For Spotify, I took an alternative route by storing access and secret tokens in my own database and wrote an authentication backend service. This allows me to reactivate these tokens at any time with a single operation. However, following the same approach for Wakatime doesn't seem ideal because I want to show my data as always active. What approach should I take for this? Is it possible to always display this data without a refresh token, just using the client ID and secret key?

.ENV issue

hei i love you code but i need to more information to getting .env token the env sourece how to get token from can you send it to me? thx

Depfu Error: No dependency files found

Hello,

We've tried to activate or update your repository on Depfu and couldn't find any supported dependency files. If we were to guess, we would say that this is not actually a project Depfu supports and has probably been activated by error.

Monorepos

Please note that Depfu currently only searches for your dependency files in the root folder. We do support monorepos and non-root files, but don't auto-detect them. If that's the case with this repo, please send us a quick email with the folder you want Depfu to work on and we'll set it up right away!

How to deactivate the project

  • Go to the Settings page of either your own account or the organization you've used
  • Go to "Installed Integrations"
  • Click the "Configure" button on the Depfu integration
  • Remove this repo (aulianza/aulianza.id) from the list of accessible repos.

Please note that using the "All Repositories" setting doesn't make a lot of sense with Depfu.

If you think that this is a mistake

Please let us know by sending an email to [email protected].


This is an automated issue by Depfu. You're getting it because someone configured Depfu to automatically update dependencies on this project.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.