Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Freddy-Nader/Portfolio

Open more actions menu

Repository files navigation

Portfolio

This project is Alfredo Nader's personal portfolio website. It is a small Next.js application that presents core profile information, experiments, writing, and a downloadable CV.

Stack

  • Next.js 16 with the App Router
  • React 19
  • TypeScript
  • Tailwind CSS 4
  • Font Awesome and Lucide icons
  • Vercel Analytics and Speed Insights

Requirements

  • Node.js 20+ recommended
  • pnpm
  • A LaTeX distribution with latexmk if you want to rebuild the CV PDF

Install

pnpm install

Development

Run the local dev server:

pnpm dev

Then open http://localhost:3000.

Available Commands

pnpm dev
pnpm build
pnpm start
pnpm lint
pnpm tex -- src/cv/cv.tex
npm run tex -- src/cv/cv.tex
pnpm tex -- --once src/cv/cv.tex
npm run tex -- --watch src/cv/cv.tex
pnpm cv

pnpm tex -- path/to/file.tex watches the file and recompiles it automatically when it changes.

npm run tex -- path/to/file.tex runs the same executable through npm.

--watch is explicit watch mode. It is also the default.

--once disables watching and performs a single compile.

If you run pnpm tex with no file argument, the script scans the repository for .tex files, writes the index to /tmp/tex_files.json, and opens an fzf picker so you can choose one interactively.

pnpm cv compiles src/cv/cv.tex and copies the generated PDF to public/f/cv.pdf.

Direct executable usage:

./src/scripts/tex src/cv/cv.tex
./src/scripts/tex --watch src/cv/cv.tex
./src/scripts/tex --once src/cv/cv.tex
./src/scripts/tex

Dependency installs on macOS:

brew install --cask mactex-no-gui
brew install fzf
brew install ripgrep
brew install node

Project Structure

src/          Next.js routes, UI, CV source, and supporting components
public/       Static assets such as images and downloadable files

Notable paths:

  • src/app/(main)/page.tsx: homepage content
  • src/cv/cv.tex: LaTeX source for the CV
  • src/cv/resume.cls: custom LaTeX class used by the CV
  • public/f/cv.pdf: built CV PDF served by the site

Dependencies

Main runtime dependencies:

  • next, react, react-dom
  • tailwind-merge, class-variance-authority, clsx
  • @fortawesome/*, lucide-react
  • @vercel/analytics, @vercel/speed-insights
  • sharp, next-themes, react-wrap-balancer

Main development dependencies:

  • typescript
  • eslint, eslint-config-next
  • tailwindcss, @tailwindcss/postcss
  • @types/node, @types/react, @types/react-dom

About

Personal Portfolio Page

Resources

Stars

Watchers

Forks

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.