Skip to content
Type something to search...

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 with draft:true or exclude_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, and keywords for metadata.
  • robots_txt and sitemap settings for search engines.
  • opengraph.image for social media previews.
🎨 Theme Customization
  • blog_folder, services_folder, and portfolio_folder define content structure.
  • sticky_header, brand_name, and pagination 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.