File Structure
After unzipping the theme zip file, you will find the following folder and file structure:
Directorythemes/
Directorylooka/ (π Main theme folder)
- β¦
- changelog.html (π Links to online changelog)
- documentation.html (π Links to online documentation)
Main Theme Directory Structure
Our theme follows a modular structure for easy customization and scalability.
Directorylooka/
Directory.vscode/ (βοΈ VSCode settings & extensions)
- β¦
Directorypublic/ (π Static assets: images, videos, fonts)
- β¦
Directoryscripts/ (π Automation scripts)
- β¦
Directorysrc/ (π Core source code)
- __tests__ (π§ͺ Unit & integration tests)
Directoryassets/
Directoryimages/
- β¦
Directoryconfig/ (βοΈ Site-wide settings)
- config.toml (π Global config)
- language.json (π Language settings)
- menu.en.json (π English menu)
- menu.fr.json (π French menu)
- social.json (π Social links)
- theme.json (π¨ Theme settings)
Directorycontent/ (π Content management)
Directoryabout/ (βΉοΈ About page)
Directoryenglish/ (π¬π§ English version)
- β¦
Directoryfrench/ (π«π· French version)
- β¦
Directoryhomepage/ (π Homepage)
- β¦
Directorypages/ (π Static pages: terms, privacy)
- β¦
Directorysections/ (π Reusable sections: hero, testimonials)
- β¦
Directorywidgets/ (πΉ Widget content: recent posts)
- β¦
- _file_format.md (π Frontmatter docs)
Directoryi18n/ (π Translations)
- en.json (π¬π§ English)
- fr.json (π«π· French)
Directorylayouts/ (π Page layouts & UI components)
Directorycomponents/ (π οΈ Reusable UI elements)
Directorybuttons/
- β¦
Directorycards/
- β¦
Directoryglobal/
- β¦
Directorysections/
- β¦
Directoryseo/
- β¦
Directorysocial/
- β¦
Directoryutilities/
- β¦
Directorywidgets/
- β¦
- LayoutWrapper.astro
- SinglePageLayout.astro
Directoryhelpers/
- β¦
Directoryshortcodes/ (βοΈ Custom MDX components)
- β¦
- Base.astro
Directorylib/ (π Shared utilities & hooks)
- β¦
Directorypages/ (π Dynamic & static pages)
Directory[β¦lang]/ (π Multi-language support)
Directorycareer/
- β¦
Directoryservices/
- β¦
- about.astro
- contact.astro
- index.astro (π Homepage)
- 404.astro
- robots.txt.ts (π€ Robots.txt generator)
Directoryplugins/
Directoryodometer/ (π Number animations)
- β¦
Directorystyles/
- animation.scss
- base.scss
- components.scss
- navigation.scss
- utilities.scss
Directorytypes/ (π‘ TypeScript definitions)
- β¦
- content.config.ts (π Content settings)
- env.d.ts (π Env variable types)
- .editorconfig (βοΈ Code style rules)
- .gitignore (π« Ignore files in Git)
- .markdownlint.json (β Markdown linting)
- .prettierrc (π¨ Code formatting)
- astro.config.mjs (π§ Astro config)
- netlify.toml (π Netlify settings)
- package.json (π¦ Project dependencies & scripts)
- postcss.config.js (π¨ PostCSS settings)
- tailwind.config.js (π¨ Tailwind settings)
- tsconfig.json (π‘ TypeScript config)
- vercel.json (π Vercel settings)
- vercel.sh (π Vercel deployment script)
Key Directories & Their Purpose
/public
βΆ Static Assets
- Stores images, icons, fonts, and other static files.
- Files inside this folder are accessible via direct URLs (
/images/logo.svg
).
/src
βΆ Main Codebase
- Contains all Astro components, pages, content, and styles.
- Customize layouts, pages, and components here.
/scripts
βΆ Automation Scripts
- Optimizes workflows with utilities like:
generate-favicons.mjs
β Generates favicons for all devices.remove-draft-from-sitemap.mjs
β Removes pages withdraft:true
orexclude_from_sitemap:true
.remove-multilingual.mjs
β Removes all multilingual content & i18n files.
βοΈ Key Configuration Files
astro.config.mjs
** - Astro Configuration
- Manages integrations, build settings, and markdown processing.
- For general site settings, modify
config.toml
instead.
config.toml
** - Global Settings
- Primary configuration file for theme settings.
- Controls SEO, multilingual options, header navigation button, branding, and content structure.
π SEO & OpenGraph
title
,description
, andkeywords
for metadata.robots_txt
andsitemap
settings for search engines.opengraph.image
for social media previews.
π¨ Theme Customization
blog_folder
,services_folder
, andportfolio_folder
define content structure.sticky_header
,brand_name
, andpagination
settings.
π Multilingual Settings
enable
β Enables/disables multilingual support.default_language
β Defines the primary language.disable_languages
β Lists languages to - disable.
theme.json
- Styling & Typography
- Defines color schemes, font settings, and UI styles.
π¨ Theme Colors
theme_color.primary
β Main brand color.theme_color.body
β Background color.
π Typography
font_family.primary
β Main font.font_size.base
β Base font size.
Other Important Files
package.json
β Manages dependencies & npm scripts (npm run dev
).tailwind.config.js
&postcss.config.js
β Customize Tailwind CSS & PostCSS.vercel.json
/netlify.toml
β Configuration for deployments.
π Now that you understand the project structure, itβs time to customize the siteβs identity and logo.