What is PascalCase?
PascalCase (also called UpperCamelCase) is a naming convention where the first letter of every word is capitalized, with no spaces or separators between words.
Examples: MyClass, UserProfile, GetUserById, BackgroundColor
The name comes from the Pascal programming language, which popularized this style.
PascalCase in Programming
PascalCase is the standard convention for class names across virtually all object-oriented languages:
| Language | What Uses PascalCase |
|---|
|---|---|
| Java | Class names, interfaces, enums (`UserService`, `HttpClient`) |
|---|---|
| C# | Classes, methods, properties, enums, namespaces |
| TypeScript | Interfaces, type aliases, enums (`UserProfile`, `ApiResponse`) |
| Python | Class names per PEP 8 (`MyClass`, `DatabaseConnection`) |
| React | Component names (`Button`, `UserCard`, `NavBar`) |
| Swift | Class names, structs, enums, protocols |
PascalCase vs camelCase
| Feature | PascalCase | camelCase |
|---|
|---|---|---|
| First letter | **Uppercase** | Lowercase |
|---|---|---|
| Example | `UserProfile` | `userProfile` |
| Used for | Classes, types, components | Variables, functions, methods |
| Also known as | UpperCamelCase | lowerCamelCase |
Rule of thumb: In most languages, types use PascalCase; values use camelCase.
PascalCase in React
React has a very specific rule: all component names must use PascalCase.
This is not just a convention — it's enforced by React's rendering engine. A component named button would be treated as an HTML element. A component named Button is treated as a React component.
`
✓
✗
`
Best Practices
- Use PascalCase for all class names, even in languages that don't enforce it
- Treat acronyms consistently — prefer
XmlParseroverXMLParserfor readability - In React, always use PascalCase for component file names too —
UserCard.tsx, notuserCard.tsx