Skip to content

davidagustin/davidagustin.github.io

Repository files navigation

David Agustin - Portfolio Website

A modern, responsive portfolio website showcasing 19+ diverse projects and 50+ technologies across full-stack development, AI/ML, and modern web applications. Built with React, TypeScript, and Tailwind CSS featuring smooth animations and clean design.

πŸš€ Features

  • Modern Design: Clean, professional design with smooth animations
  • Responsive: Fully responsive across all devices
  • TypeScript: Type-safe development with TypeScript
  • Tailwind CSS: Utility-first CSS framework for styling
  • Framer Motion: Smooth animations and transitions
  • GitHub Pages: Deployed on GitHub Pages
  • Performance Optimized: Fast loading and optimized for performance
  • Reliable Contact Form: EmailJS integration for cross-browser email functionality
  • Diverse Tech Stack: Showcases projects built with React, Angular, Vue.js, SvelteKit, Astro.js, and AI/ML technologies
  • AI/ML Focus: Specialized in machine learning applications and AI integration

πŸ› οΈ Tech Stack

  • Frontend: React 18, TypeScript, Tailwind CSS
  • Animations: Framer Motion
  • Icons: React Icons
  • Email Service: EmailJS (reliable contact form functionality)
  • Build Tool: Create React App
  • Linting: Biome
  • Deployment: GitHub Pages

🎯 Featured Projects

This portfolio showcases 19+ diverse projects built with modern web technologies and AI/ML frameworks:

⚑ TechStore - Computer Hardware Store - E-commerce Platform

πŸ€– 20 Newsgroups ML Analysis Dashboard - Machine Learning Dashboard

πŸ“š Rules of Machine Learning - Memorization App - ML Education Platform

🧠 MLI Learning Quiz App - AI Education Platform

❀️ Hope Foundation - Charity Website

πŸ” Historigal - Historical Events Search Engine

🧠 AI Learning Hub - Interactive AI Education Platform

πŸ›’ A Very Nice Grocery List - Modern Shopping App

🏠 Luxury Realty - Angular Real Estate Application

πŸͺ‘ Elegant Furniture Store - Vue.js E-commerce

βš–οΈ Law & Associates - Professional Law Firm Website

🍽️ FoodRater - Restaurant Rating App - Food & Rating Platform

🧩 Sudoku Game - Interactive Puzzle Game

🀟 Sign Language Learning App - AI-Powered ASL Education

🧠 System Design Learning Application - Comprehensive Learning Platform

🎨 UI Patterns React - Component Library

⚑ React Interview Code Sandbox - Development Tool

πŸ“ Project Structure

src/
β”œβ”€β”€ components/          # React components
β”‚   β”œβ”€β”€ About.tsx       # About section with 50+ tech chips
β”‚   β”œβ”€β”€ Contact.tsx     # Contact form
β”‚   β”œβ”€β”€ Footer.tsx      # Footer component
β”‚   β”œβ”€β”€ Hero.tsx        # Hero section with stats
β”‚   β”œβ”€β”€ Navbar.tsx      # Navigation bar
β”‚   └── Projects.tsx    # Projects showcase (19+ projects)
β”œβ”€β”€ hooks/              # Custom React hooks
β”œβ”€β”€ types/              # TypeScript type definitions
β”œβ”€β”€ utils/              # Utility functions
β”‚   β”œβ”€β”€ constants.ts    # App constants and project data
β”‚   └── scroll.ts       # Scroll utilities
β”œβ”€β”€ App.tsx             # Main app component
β”œβ”€β”€ index.tsx           # App entry point
└── index.css           # Global styles

πŸš€ Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn

Installation

  1. Clone the repository:
git clone https://github.com/davidagustin/davidagustin.github.io.git
cd davidagustin.github.io
  1. Install dependencies:
npm install
  1. Start the development server:
npm start
  1. Open http://localhost:3000 to view it in the browser.

πŸ“ Available Scripts

  • npm start - Runs the app in development mode
  • npm run build - Builds the app for production
  • npm test - Launches the test runner
  • npm run lint - Runs Biome linter
  • npm run format - Formats code with Biome
  • npm run check - Runs Biome check (lint + format)
  • npm run deploy - Deploys to GitHub Pages

🎨 Customization

Colors

The project uses a custom color palette defined in tailwind.config.js:

  • Primary: Blue gradient (#0284c7 to #c026d3)
  • Secondary: Purple gradient

Components

Each section is a separate component in the src/components/ directory:

  • Update content in the respective component files
  • Modify styling using Tailwind CSS classes
  • Add new sections by creating new components

Constants

App-wide constants are defined in src/utils/constants.ts:

  • Navigation items
  • Social links
  • Project data (19+ projects)
  • Contact information

πŸš€ Deployment

The project is configured for GitHub Pages deployment:

  1. Build the project:
npm run build
  1. Deploy to GitHub Pages:
npm run deploy

The site will be available at: https://davidagustin.github.io

πŸ“± Responsive Design

The website is fully responsive with breakpoints:

  • Mobile: < 768px
  • Tablet: 768px - 1024px
  • Desktop: > 1024px

πŸ”§ Development

Code Quality

  • Biome: Used for linting and formatting
  • TypeScript: Type safety and better development experience
  • ESLint: Additional linting rules

File Organization

  • Components are organized by feature
  • Utility functions are separated into dedicated files
  • Types are centralized in the types/ directory
  • Constants are managed in utils/constants.ts

πŸ› οΈ Technologies & Frameworks

This portfolio demonstrates expertise across 50+ modern web technologies:

Frontend Frameworks & Libraries

  • Next.js - React framework for production
  • React.js - Modern applications with hooks and patterns
  • Angular - Full-featured applications with TypeScript
  • Vue.js - Progressive framework with Composition API
  • Astro.js - Static site generation for performance
  • Gatsby - React-based static site generator

Email & Communication

  • EmailJS - Frontend email service for contact forms

Languages & Type Safety

  • TypeScript - Type-safe JavaScript development
  • JavaScript - Modern ES6+ features
  • HTML5 - Semantic markup
  • CSS3 - Modern styling with Flexbox and Grid
  • Python - Backend development and AI/ML

Styling & UI

  • Tailwind CSS - Utility-first CSS framework
  • Material-UI - React component library
  • Material Design - Design system and components
  • Sass - CSS preprocessor
  • Google Fonts - Typography

Backend & APIs

  • Node.js - JavaScript runtime
  • Express.js - Web application framework
  • Firebase - Backend-as-a-Service platform
  • Firestore - NoSQL cloud database
  • REST APIs - API development
  • React Hooks - Modern React state management

State Management & Routing

  • Pinia - Vue.js state management
  • Vue Router - Vue.js routing solution
  • RxJS - Reactive programming library

Build Tools & Development

  • Vite - Next-generation frontend tooling
  • Webpack - Module bundler

AI/ML & Data Science

  • Scikit-learn - Machine learning library
  • XGBoost - Gradient boosting framework
  • LightGBM - Light gradient boosting machine
  • Machine Learning - Algorithm development
  • Deep Learning - Neural networks
  • TensorFlow - Deep learning framework
  • PyTorch - Machine learning framework
  • OpenAI API - AI integration

Databases

  • MongoDB - NoSQL database
  • PostgreSQL - Relational database
  • MySQL - Database management

Cloud & Deployment

  • Vercel - React/Next.js deployment platform
  • Netlify - Static site hosting and deployment
  • Surge.sh - Simple static site deployment
  • Render - Cloud application hosting
  • Heroku - Cloud application platform
  • Digital Ocean - Cloud infrastructure
  • AWS - Cloud computing platform
  • Firebase Hosting - Static site hosting and deployment

DevOps & Tools

  • Docker - Containerization
  • Kubernetes - Container orchestration
  • Git - Version control
  • GitHub - Code hosting and collaboration
  • CI/CD - Continuous integration/deployment

Testing & Quality

  • Jest - JavaScript testing framework
  • Cypress - End-to-end testing
  • Storybook - Component development environment

Additional Skills

  • SEO Optimized - Search engine optimization
  • Responsive Design - Mobile-first development
  • Performance - Optimization and monitoring

πŸ“„ License

This project is open source and available under the MIT License.

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linting
  5. Submit a pull request

πŸ“ž Contact


Full Stack Developer & AI Enthusiast - Built with ❀️ by David Agustin

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published