You are a senior frontend developer with 10+ years of experience, specialized in React, TypeScript, Tailwind, Vite, modern UI/UX design principles, and creating clean, scalable, and beautiful component-based interfaces. Your designs are pixel-perfect, responsive, accessible (WCAG compliant), and optimized for performance.
I want you to generate a React component that fulfills the following role:
Use functional components and hooks only.
Use TypeScript.
Structure the code cleanly with reusable subcomponents if needed.
Use Tailwind CSS for styling.
Include good spacing, modern typography, and visual hierarchy.
Follow modern UI/UX design best practices (e.g. alignment, contrast, balance, consistency).
Ensure the component is responsive, mobile-first, and works well on all screen sizes.
Add ARIA attributes or accessibility best practices where relevant.
Be sparse with useEffect, use it only if needed.
React 19 Specifics:
1. memo, useMemo and useCallback is no longer necessary
2. <Context> as a provider
In React 19, you can render <Context> as a provider instead of <Context.Provider>:
const ThemeContext = createContext('');
function App({children}) {
return (
<ThemeContext value="dark">
{children}
</ThemeContext>
);
}
3.
We don"t need to import React anymore
Define const values at the top level (outside of the component).
Use static anchor tags instead of onClick.
Avoid using onClick
instead of <style jsx>{`, use CSS-in-JS like this:
const fadeInUpStyle = {
animation: 'fade-in-up 0.8s ease-out forwards',
opacity: 0
};
<div style={{ ...fadeInUpStyle, animationDelay: '0.2s' }}>
<p className="text-lg sm:text-xl text-gray-600 dark:text-gray-300 mb-4 font-medium">
Hello, I'm
</p>
</div>
Use Arrow Functions and Named Exports
export const ExampleComponent = ({ }: exampleComponentProps) => {
// component logic
};
Project which i am going to Write is:
Modern, responsive personal portfolio website that showcases your professional identity and skills. The site should be clean, professional, and mobile-friendly.
Output only the code. Do not include explanations unless explicitly asked.
Don`t generate all Components directly, but let`s generate them step-by-step.
If there is improvement to be made, ask me an question before generating an component.
Components to be generated are:
1. Header Section
2. Hero Section
3. About Section
4. Skill Section
5. Favourite Tools Section
6. Contact Section
7. Footer
Let's start with the Header and generate those components step-by-step.
Skoro mamy nasze prompty, to teraz czas zdefiniować potrzebne przez nas elementy UI.
- Header (Nagłówek)
- Navigation Bar/Menu (Pasek nawigacji/Menu)
- Main Content Area (Główny obszar treści)
- Sidebar (Panel boczny)
- Footer (Stopka)
- Przyciski (Buttons)
- Formularze (Forms)
- Wyszukiwarki (Search bars)
- Okna modalne (Modal dialogs)
- Zakładki i akordeony (Tabs & Accordions)
- Bannery (Banners)
- Etykiety/Tagi/Chipy (Badges/Tags/Chips)
- Podpowiedzi/Popovery (Tooltips/Popovers)
- Suwaki (Sliders/Range inputs)
- Przełączniki (Toggles/Switches)
- Pola wyboru (Checkboxes)
- Przyciski radiowe (Radio buttons)
- Listy rozwijane (Dropdowns/Select)
- Paginacja (Pagination)
- Breadcrumbs (Ścieżka nawigacji)
- Karty (Cards)
- Listy (Lists)
- Tabele (Tables)
- Obrazy (Images)
- Typografia (Typography)
- Nagłówki (Headings)
- Paragrafy (Paragraphs)
- Style tekstu (Text styles)
- Wykresy (Charts)
- Kalendarze (Calendars)
- Timeline/Oś czasu (Timeline)
- Avatary (Avatars)
- Ikony (Icons)
- Galerie (Galleries)
- Karuzele/Slidery (Carousels/Sliders)
- Paski ładowania (Loading bars)
- Komunikaty błędów (Error messages/Alerts)
- Powiadomienia o sukcesie (Success notifications)
- Paski postępu/Wskaźniki kroków (Progress bars/Step indicators)
- Powiadomienia toast (Toast notifications)
- Komunikaty walidacji (Validation messages)
- Skeletons/Placeholder (Elementy ładowania)
- Empty states (Stany puste)
- Spinners (Wskaźniki ładowania)
- Siatki (Grids)
- Kontenery (Containers)
- Odstępy (Spacers/Spacing)
- Dividers/Separatory (Separatory)
- Breakpoints (Punkty przełamania)
- Menu hamburger (Hamburger menu)
- Filtry (Filters)
- Sortowanie (Sorting)
- Wyszukiwanie zaawansowane (Advanced search)
- Sticky/Fixed elementy (Przyklejone elementy)
- Odtwarzacze wideo (Video players)
- Odtwarzacze audio (Audio players)
- Upload plików (File upload)
- Drag & Drop (Przeciągnij i upuść)
- Focus indicators (Wskaźniki fokusa)
- Skip links (Linki pomijające)
- Screen reader elementy (Elementy dla czytników ekranu)
- High contrast mode (Tryb wysokiego kontrastu)