source-code/
portofolio-neo-gruv
Public
codeCodeinfoIssues 0call_splitPull Requestsplay_circleActions
portofolio-neo-gruv/src/ui/Input.tsx
typescript15 lines692 B
import React from 'react';

interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {
    focusColorClass?: string;
}

export const Input: React.FC<InputProps> = ({ className = '', focusColorClass = 'focus:bg-theme-red', ...props }) => {
    return (
        <input 
            className={`w-full bg-surface text-on-surface placeholder:text-on-surface-variant font-label-bold text-lg p-6 neo-border-heavy focus:ring-0 focus:outline-none focus:text-surface-container-lowest focus:-translate-y-1 focus:shadow-[8px_8px_0px_0px_#1e1b19] transition-all duration-300 shadow-[4px_4px_0px_0px_#1e1b19] ${focusColorClass} ${className}`} 
            {...props} 
        />
    );
};

About

Custom portfolio frontend designed using retro Neo-Brutalist styling. Features server-rendered pages, persistent codebase layout, interactive file explorer tree, and Shiki code syntax highlighting.

TypeScriptNext.jsReact 19Tailwind CSSShiki

Contributors

1