Skip to content

Contributing

dagustin415 edited this page Feb 7, 2026 · 1 revision

Contributing

Guidelines for contributing to the portfolio project.

Getting Started

  1. Fork the repository
  2. Clone your fork:
    git clone https://github.com/YOUR_USERNAME/davidagustin.github.io.git
  3. Install dependencies:
    npm install
  4. Create a feature branch:
    git checkout -b feature/your-feature

Code Standards

TypeScript

  • All new code must be TypeScript
  • Define interfaces in src/types/index.ts
  • Use strict mode — no any types

Styling

  • Use Tailwind CSS utility classes
  • Follow the existing color system (surface-* for neutrals, primary-* for accents)
  • No inline styles
  • Mobile-first responsive design

Components

  • One component per file
  • Use functional components with hooks
  • Keep components focused — if it's doing too much, split it

Design Guidelines

  • No emoji icons in UI elements
  • No decorative gradients on cards
  • Typography hierarchy over visual decoration
  • Subtle borders and shadows, not bold colors

Pull Request Process

  1. Ensure npm run build succeeds with no errors
  2. Run npm run check for linting
  3. Write a clear PR description explaining what changed and why
  4. Keep PRs focused — one feature or fix per PR

Project Data

To add or modify project entries, edit src/utils/constants.ts. Each project follows the Project interface:

interface Project {
  id: number;
  title: string;
  description: string;
  technologies: string[];
  githubUrl: string;
  liveUrl?: string;
  category: string;
  features: string[];
}

Commit Messages

Use conventional commit format:

  • feat: — New feature
  • fix: — Bug fix
  • docs: — Documentation
  • style: — Formatting, no code change
  • refactor: — Code restructuring

Questions?

Open an issue or email davidsyagustin@gmail.com.

Clone this wiki locally