Skip to content

tonymac129/tonymac129-next

Repository files navigation

Next.js React TypeScript Tailwind CSS Prisma PostgreSQL Vercel

Personal website screenshot

My personal website with my projects, skill, blog, and about, now rewritten (for the fourth time) in Next.js, TypeScript, Tailwind, and Postgres! This rewrite has significantly improved performance, content, navigation, design, and SEO, and added multiple projects and additional content about me as well!

Features

  • Homepage: hero with interactive intro section and Discord status widget, fun testimonials, and comment section
  • Projects: my more complex, technical, and polished projects that best showcase my skills, experiences, and abilities
  • Misc: my less impressive, smaller projects used for learning, experimenting, or fun with sorting, filtering, and searching
  • Skills: my technical, programming, and general skills with description and progress with sorting, filtering, and searching
  • Blog: my very few blog posts about my skills or anything I feel like writing also with sorting, filtering, and searching
  • About: more detailed information and paragraphs about me, current status, contact info, and interactive about widget
  • Admin: admin page where I can manage the site's data and content directly (only I can access because of obvious reasons)
  • Complete with modern responsive design, dark/light mode support and smooth interactive animations throughout the site
  • Powerful search for all my projects, skills, and blog posts, as well as SEO to improve navigation and accessibility

Tech stack

This is a Next.js app hosted on Vercel and Neon, built with React, TypeScript, Prisma, PostgreSQL, and Tailwind, and the libraries Better Auth, Framer Motion, and React Icons. The app folder contains the frontend page routes and the backend API endpoints. The components folder contains frontend layout and UI components. The prisma folder contains the Prisma schema, and the lib and types folders contain extra stuff for setup. Finally, the public folder contains frontend assets like icons and logos.

Quick start

To host my portfolio on your machine (why?) for local development or other purposes, simply follow these steps below:

  1. Clone the GitHub repository using the command

    git clone https://github.com/tonymac129/tonymac129-next.git
  2. Open it with your favorite code editor or through the terminal

  3. If you don't have a local Postgres database or a cloud Neon/Supabase cluster/connection string, only the non-admin pages will be available because of obvious reasons

  4. Open the terminal and run the commands

    npm install
    npm run dev

    to start the Next.js dev server at localhost:3000 and see the magic!

Contribution

Any kind of contribution is welcome (but why?), but please follow the guideline below!

  • Submit an issue if there's a bug/issue or if you want to suggest new features/subscriptions to be added.
  • Submit a pull request if you want to add or improve the code base!
  • Commit messages should be specific and address the issue
  • Please don't submit random issues that aren't specific
  • Please don't submit pull requests that "fix typo" or "improve formatting"

About

My personal website with my projects, blog, and about, now rewritten in Next.js, TypeScript, Tailwind, and Postgres!

Resources

Stars

Watchers

Forks

Contributors

Languages