📖 Scenario: You are building a simple Svelte app that shows a list of fruits. To keep your code clean and easy to understand, you will practice naming your components properly.
🎯 Goal: Create a Svelte component named FruitList.svelte that displays a list of fruits. Follow proper component naming conventions by using PascalCase for the component file and component name.
📋 What You'll Learn
Create a Svelte component file named FruitList.svelte.
Use PascalCase for the component file name and component name.
Inside the component, define a list of fruits as an array.
Render the list of fruits using an each block.
Export the component properly.
💡 Why This Matters
🌍 Real World
Naming components clearly helps teams understand and maintain Svelte apps easily, especially when apps grow larger.
💼 Career
Following naming conventions is a key skill for frontend developers working with Svelte or other component-based frameworks.
Progress0 / 4 steps
1
Create the FruitList component file and define the fruits array
Create a Svelte component file named FruitList.svelte. Inside it, create a script block and define a variable called fruits as an array with these exact values: ['Apple', 'Banana', 'Cherry'].
Svelte
Hint
Remember to use let to declare the fruits array inside the <script> block.
2
Add a configuration variable for the component title
Inside the script block of FruitList.svelte, add a variable called title and set it to the string 'Fruit List'.
Svelte
Hint
Use let title = 'Fruit List' inside the <script> block.
3
Render the title and the list of fruits using an each block
Below the script block, add markup to display the title inside an <h2> tag. Then use an {#each fruits as fruit} block to render each fruit inside an <li> element within a <ul>.
Svelte
Hint
Use {#each fruits as fruit} to loop over the fruits array and display each fruit inside an <li>.
4
Export the FruitList component properly
Ensure the FruitList.svelte component is ready to be imported by other files by keeping the component name in PascalCase and the file named FruitList.svelte. No extra export code is needed in Svelte files.
Svelte
Hint
Remember that in Svelte, the component file name and component usage follow PascalCase naming. No extra export statement is needed inside the file.
Practice
(1/5)
1. Which naming style is recommended for Svelte component files and their names?
easy
A. kebab-case (e.g., my-component.svelte)
B. snake_case (e.g., my_component.svelte)
C. PascalCase (e.g., MyComponent.svelte)
D. all lowercase (e.g., mycomponent.svelte)
Solution
Step 1: Understand Svelte naming conventions
Svelte recommends using PascalCase for component names and file names to clearly distinguish components from regular HTML tags.
Step 2: Compare naming styles
PascalCase capitalizes the first letter of each word, making component names easy to read and recognize, unlike snake_case, kebab-case, or all lowercase.
Final Answer:
PascalCase (e.g., MyComponent.svelte) -> Option C
Quick Check:
Component names use PascalCase [OK]
Hint: Always capitalize each word in component names [OK]
Common Mistakes:
Using kebab-case which is for HTML attributes
Using snake_case which is uncommon in Svelte
Using all lowercase which looks like regular HTML tags
2. Which of the following is a correct Svelte component file name?
easy
A. userprofile.svelte
B. user_profile.svelte
C. user-profile.svelte
D. UserProfile.svelte
Solution
Step 1: Check file naming rules for Svelte components
Svelte components should be named using PascalCase to clearly identify them as components.
Step 2: Identify the PascalCase option
Among the options, only UserProfile.svelte uses PascalCase correctly.
Final Answer:
UserProfile.svelte -> Option D
Quick Check:
PascalCase file name = UserProfile.svelte [OK]
Hint: Look for capital letters starting each word in the file name [OK]
Common Mistakes:
Using lowercase or underscores instead of PascalCase
Confusing kebab-case with component file naming
Mixing styles inconsistently
3. Given the component file named LoginForm.svelte, which is the correct way to import and use it in another Svelte file?
medium
A.
import LoginForm from './LoginForm.svelte';
<LoginForm />
B.
import loginform from './LoginForm.svelte';
<LoginForm />
C.
import LoginForm from './loginform.svelte';
<loginForm />
D.
import loginForm from './LoginForm.svelte';
<loginForm />
Solution
Step 1: Match import name with component file name
The import name should match the PascalCase component file name exactly, including capitalization.
Step 2: Use the imported component with correct casing
In Svelte, component tags must start with uppercase letters matching the import name.
Final Answer:
import LoginForm from './LoginForm.svelte';
<LoginForm /> -> Option A
Quick Check:
Import and usage use PascalCase consistently [OK]
Hint: Import and use components with exact PascalCase names [OK]
Common Mistakes:
Importing with lowercase names
Using lowercase component tags
Mismatching import path casing
4. What is wrong with this Svelte component file name and usage?
A. The filename should be PascalCase to match the component usage.
B. The component tag should be lowercase to match the filename.
C. The filename should use kebab-case instead of lowercase.
D. There is no issue; this is valid Svelte usage.
Solution
Step 1: Check filename casing
The filename userprofile.svelte is all lowercase, which is not recommended for Svelte components.
Step 2: Check component usage casing
The usage <UserProfile /> uses PascalCase, which expects the filename to match in PascalCase.
Final Answer:
The filename should be PascalCase to match the component usage. -> Option A
Quick Check:
Filename and usage casing must match PascalCase [OK]
Hint: Filename and usage must both be PascalCase [OK]
Common Mistakes:
Using lowercase filenames with PascalCase tags
Assuming kebab-case is valid for component files
Ignoring case sensitivity in imports
5. You have two components: NavBar.svelte and navBar.svelte. What problem might this cause in a Svelte project on a case-sensitive file system?
hard
A. The project will fail to compile due to duplicate component names.
B. Only one component will be recognized; the other will be ignored or cause confusion.
C. Both components will work fine since Svelte ignores filename case.
D. The components will merge automatically into one component.
Solution
Step 1: Understand case sensitivity in file systems
On case-sensitive systems (like Linux), NavBar.svelte and navBar.svelte are different files but can cause confusion in imports.
Step 2: Recognize Svelte import and usage issues
Importing components with inconsistent casing can cause one component to be ignored or cause runtime errors because Svelte expects consistent PascalCase naming.
Final Answer:
Only one component will be recognized; the other will be ignored or cause confusion. -> Option B
Quick Check:
Case-sensitive filenames cause import confusion [OK]
Hint: Avoid similar names differing only by case [OK]
Common Mistakes:
Assuming case-insensitive systems behave the same everywhere
Using inconsistent casing in imports and filenames
Expecting automatic merging of components
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.