getting-started
Project Structure
Project Structure
deneb-jekyll/
├── _authors/
├── _config.yml
├── _data/
│ └── settings.yml
├── _includes/
├── _layouts/
├── _pages/
├── _portfolio/
├── _posts/
├── _sass/
├── _services/
├── assets/
│ ├── css/
│ ├── js/
│ └── images/
└── index.md
Root Level Files
_config.yml: Primary Jekyll configuration fileGemfile: Ruby gem dependenciesindex.md: Main homepage contentblog.html: Blog listing page404.html: Custom 404 error page
Core Directories
_data/
Configuration and site-wide data files
-
settings.yml: Theme-specific settings- Site information
- Logo configurations
- Social media links
- CTA button settings
-
navigation.yml: Site navigation configuration- Main menu items
- Hierarchical menu structure
- Navigation weights and submenus
- Includes:
- Top navigation menu
- Dropdown submenus
- Page routing
- Supports up to 2 levels of navigation
- Example structure:
navigation: - text: Home url: / weight: 1 - text: Services url: /services submenu: - text: Service Overview url: /services
-
testimonials.yml: Testimonial section configuration- Section heading and description
- Decorative shape images
- Additional background images
- Testimonial list with:
- Client name
- Position
- Profile image
- Testimonial text
- Supports multiple testimonial entries
- Example structure:
testimonials: heading: "What People Say" list: - name: "John Doe" position: "UX Designer" image: "/path/to/image.webp" text: "Client testimonial text"
_includes/
Reusable HTML components
- Modular snippets for headers, footers
- Navigation components
- Utility includes like SEO, analytics
_layouts/
Page layout templates
- Default page structures
- Blog post layouts
- Portfolio and service page layouts
_pages/
Static pages
- About page
- Contact page
- Services overview
- Portfolio listing
_posts/
Blog content
- Markdown files for individual blog posts
- Supports pagination and categorization
_portfolio/
Portfolio project details
- Individual project showcase pages
- Project metadata and descriptions
_services/
Service offerings
- Detailed service description pages
- Service-specific content
_sass/
SCSS style components
- Theme styling
- Responsive design mixins
- Color and typography variables
assets/
Static assets for the theme
assets/css/
style.scss: Main stylesheet- Vendor CSS files (Bootstrap, animations)
assets/js/
custom.js: Theme-specific JavaScriptbootstrap.bundle.min.js: Bootstrap functionalityplugins.js: Additional plugin scriptsprivacy-popup.js: Cookie consent management
assets/images/
- Theme imagery
- Logo variations
- Background and decorative images
- Portfolio and service thumbnails
assets/type/
- Web font files
- Typography CSS
- Font configurations (Nunito, Poppins)
Recommended Workflow
- Modify configuration in
_config.ymland_data/settings.yml - Customize layouts in
_layouts/ - Add content in
_posts/,_portfolio/,_services/ - Adjust styles in
_sass/ - Add custom scripts in
assets/js/
Customization
- Override theme defaults in your local project
- Add custom CSS in
assets/css/ - Modify layouts in
_layouts/ - Customize navigation in
_data/navigation.yml
Running the Site
bundle exec jekyll serve
Troubleshooting
- Ensure all dependencies are installed
- Check Jekyll and Ruby versions
- Verify
Gemfileand_config.ymlconfigurations