Skip to content

Conversation

@IamLRBA
Copy link
Collaborator

@IamLRBA IamLRBA commented Dec 18, 2025

Summary

Migrating a website from static HTML to Next.js improves performance, SEO, and long-term scalability by enabling pre-rendering, dynamic routing, and component-based development. It allows better code reuse, optimized assets, built-in routing, and flexible rendering strategies while maintaining fast load times. Overall, Next.js transforms a simple static site into a maintainable, future-ready web application without sacrificing speed.

So I figured my first step into modifying the website is to complete the migration, then other changes shall follow.

Changes

Removed Old Files and Folders

The following old files and folders have been removed since migrating to Next.js:

Deleted:

  • index.html - Old HTML file (replaced by Next.js pages)
  • assets/ folder - Old CSS, JS, SASS files (replaced by Next.js structure)
    • assets/css/ - Old compiled CSS
    • assets/js/ - Old jQuery and JavaScript files
    • assets/sass/ - Old SASS source files
    • assets/webfonts/ - Old Font Awesome fonts
  • images/ folder - Old images directory (already copied to public/images/)
  • scripts/download-fonts-debug.js - Debug script (no longer needed)
  • scripts/download-josefin-sans.js - Duplicate script (kept download-fonts.js)

Moved to public/:

  • favicon.ico → public/favicon.ico
  • favicon-16x16.png → public/favicon-16x16.png
  • favicon-32x32.png → public/favicon-32x32.png
  • apple-touch-icon.png → public/apple-touch-icon.png
  • android-chrome-192x192.png → public/android-chrome-192x192.png
  • android-chrome-512x512.png → public/android-chrome-512x512.png
  • site.webmanifest → public/site.webmanifest

Kept:

  • CNAME - GitHub Pages custom domain configuration
  • LICENSE.txt - License file
  • README.md - Project documentation
  • scripts/download-fonts.js - Font download utility
  • scripts/setup-assets.ps1 - Asset setup script
  • All Next.js configuration files (next.config.js, tsconfig.json, package.json)

Current Project Structure

.
├── public/ # Static assets
│ ├── fonts/ # Self-hosted fonts
│ ├── images/ # Image assets
│ └── *.ico, *.png # Favicons and icons
├── src/ # Next.js source code
│ ├── app/ # App Router pages
│ ├── components/ # React components
│ ├── design-system/ # Design tokens
│ └── styles/ # Global styles
├── scripts/ # Utility scripts
└── [config files] # Next.js, TypeScript, etc.

Build Status

The project builds successfully:

  • ✓ All pages compile without errors
  • ✓ TypeScript types are valid
  • ✓ SCSS modules compile correctly
  • ✓ Static pages generated successfully

Verification:

  1. Run the development server:
    npm run dev

  2. Open your browser to:
    http://localhost:3000

Screenshot:

Capture

The website successfully loads with zero errors and from here on modifications can be made to individual pages, one at a time.

- Replace static HTML site with Next.js 14
- Add TypeScript and SCSS support
- Implement self-hosted Josefin Sans font
- Migrate all pages to Next.js App Router
- Update README with new project structure
@IamLRBA IamLRBA requested a review from r0ssing December 18, 2025 12:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant