Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions .eleventy.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
module.exports = function(eleventyConfig) {
// Copy static assets
eleventyConfig.addPassthroughCopy("src/images");
eleventyConfig.addPassthroughCopy("src/styles/main.css");

// Watch CSS files for changes
eleventyConfig.addWatchTarget("src/styles/");

// Ignore README in images directory
eleventyConfig.ignores.add("src/images/README.md");

return {
dir: {
input: "src",
output: "_site",
includes: "_includes",
layouts: "_layouts"
},
templateFormats: ["html", "md", "hbs", "handlebars"],
htmlTemplateEngine: "handlebars",
markdownTemplateEngine: "handlebars"
};
};
3 changes: 0 additions & 3 deletions .eslintrc.json

This file was deleted.

33 changes: 20 additions & 13 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,21 +1,28 @@
# See https://help.github.com/ignore-files/ for more about ignoring files.
# Dependencies
node_modules/
package-lock.json

# dependencies
/node_modules
# Build output
_site/

# testing
/coverage

# production
/build

# misc
# Misc
.DS_Store
.env
.env.local
.env.development.local
.env.test.local
.env.production.local
.env.*.local

# Logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
*.log

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

86 changes: 86 additions & 0 deletions BUILD_SUMMARY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# Noah Prail Website - Complete Rebuild

## Summary
Successfully completed a full rebuild of noahprail.com using modern web technologies.

## Technology Stack
- **Eleventy (11ty) v2.0.1**: Static site generator
- **Handlebars**: Template engine
- **Tailwind CSS v3.4.0**: Utility-first CSS framework (built, no CDN)
- **PostCSS v8**: Modern CSS processing
- **Node.js**: Build environment

## What Was Built
✅ 4 fully functional pages:
- Home (index.hbs)
- About (/about/)
- Work (/work/)
- Contact (/contact/)

✅ Reusable components:
- Base layout (base.hbs)
- Header with responsive navigation (header.hbs)
- Footer with social links (footer.hbs)

✅ Custom styling:
- Green primary color theme (#22c55e)
- Responsive design (mobile, tablet, desktop)
- Custom Tailwind utilities
- Optimized CSS (~20KB)

## Build Commands
```bash
# Install dependencies
npm install

# Development with live reload
npm run dev
# → http://localhost:8080

# Production build
npm run build
# → outputs to _site/
```

## File Structure
```
src/
├── _layouts/
│ └── base.hbs # Base HTML template
├── _includes/
│ ├── header.hbs # Navigation
│ └── footer.hbs # Footer with social links
├── pages/
│ ├── about.hbs # About page
│ ├── contact.hbs # Contact page
│ └── work.hbs # Portfolio page
├── styles/
│ └── tailwind.css # Tailwind configuration
└── index.hbs # Home page
```

## Template Engine: Handlebars Syntax
- Partials: `{{> header }}`
- Unescaped content: `{{{ content }}}`
- Conditionals: `{{#if title}}...{{/if}}`
- Variables: `{{ title }}`

## Deployment Ready
✓ Production build tested
✓ All pages render correctly
✓ All links functional
✓ Responsive design verified
✓ SEO meta tags included
✓ Social media links working
✓ Optimized CSS bundle

## Content
Accurately recreated from noahprail.com:
- Photographer - Videographer - Developer tagline
- Personal bio and mission statement
- Social media integration (Instagram, Twitter, GitHub, YouTube, Flickr)
- Service offerings (Photography, Videography, Development)
- Contact information

---
Built with ❤️ using Eleventy, Handlebars, and Tailwind CSS
Loading