Skip to content
A-Grant-DevPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Dax Salvator — AI-Assisted Full-Stack Developer Portfolio

A modern, production-ready portfolio website built with Django 6.0, HTMX, Alpine.js, and Tailwind CSS v4. Designed to showcase AI-assisted web development services, projects, and technical writing to potential clients.

✨ Features

Pages

  • Home — Full-viewport hero with animated gradient orbs, stats bar, bento grid value proposition, process timeline, featured projects, testimonials, and recent blog posts
  • Services — 7 service cards (Web Dev, REST APIs, HTMX+Alpine.js Frontend, Legacy Migration, AI Integrations, Technical Consultation, Support & Maintenance) with 3-tier pricing (Starter $1.5k, Growth $5k, Enterprise Custom)
  • Projects — Filterable grid (All / AI-Assisted / Web Apps / APIs) with HTMX-powered filtering, detailed STAR case study pages with prev/next navigation
  • About — Bio section, 12-item skills grid, 3-step approach, testimonials, CTA
  • Blog — Paginated listing with cover images, tags, reading time; detail pages with social share buttons (Twitter, LinkedIn), prev/next navigation
  • Contact — Django form with Name, Email, Subject (dropdown), Budget, Message fields; validation, success messages, sidebar with email/social links

Design System

  • Dark/light mode with manual toggle (localStorage-persisted) using class-based Tailwind dark mode
  • Responsive design (mobile hamburger menu, adaptive grids)
  • Custom CSS animations: gradient-shift, floating orbs, fade-up entrance, scroll-triggered reveals
  • Hover micro-interactions on cards, buttons, stats
  • Reusable template partials: button.html, badge.html, card.html, section_header.html

Backend & DevOps

  • RSS feed at /blog/feed/ via django.contrib.syndication
  • Sitemap at /sitemap.xml covering static pages, projects, and blog posts
  • robots.txt at /robots.txt disallowing admin paths
  • JSON-LD structured data (Person + WebSite schemas)
  • Custom error pages for 400, 403, 404, 500 with branded styling
  • Docker multi-stage build (Node.js → Tailwind CSS → Python/Gunicorn)
  • docker-compose.yml with PostgreSQL 16 + health checks
  • 9 unit tests for the contact form (passing)

Support Policy

Every project includes 1 month of post-deployment support at no extra cost. Ongoing support & maintenance is available as a paid service.

🛠️ Tech Stack

Layer Technology
Backend Django 6.0, Python 3.13
Frontend HTMX 2.x, Alpine.js 3.x, Tailwind CSS v4
Database PostgreSQL 16 (production) / SQLite (development)
Static Files Whitenoise
Styling Tailwind CSS v4 (standalone CLI)
Deployment Docker + docker-compose, Gunicorn

🚀 Quick Start

1. Clone & Set Up Virtual Environment

git clone <your-repo-url>
cd freelance
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

2. Install Dependencies

pip install -r requirements.txt
npm install   # Tailwind CSS CLI

3. Configure Environment

cp .env.example .env

Edit .env with your settings. Generate a secret key:

python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"

4. Build Tailwind CSS & Run Migrations

npm run tw:build:once
python manage.py migrate
python manage.py createsuperuser

5. Run the Server

python manage.py runserver

Visit http://127.0.0.1:8000 to see the site. Access the admin at /admin/.

🐳 Docker Deployment

# Set environment variables
cp .env.example .env
# Edit .env with your production values

# Build and run
docker compose up --build

The web service will be available at http://localhost:8000.

📁 Project Structure

.
├── config/              # Django project settings, URLs, WSGI/ASGI
├── portfolio/           # Portfolio app (home, projects, about, services)
│   ├── sitemaps.py      # Sitemap configuration
│   └── context_processors.py  # Navigation context processor
├── blog/                # Blog app (posts, RSS feed)
│   └── feeds.py         # RSS feed configuration
├── contact/             # Contact app (form, model, tests)
├── templates/
│   ├── base.html        # Base template with SEO, JSON-LD, theme
│   ├── partials/        # Reusable UI components
│   └── portfolio/       # Page templates
├── static/
│   └── css/
│       ├── main.css     # Tailwind v4 input with custom theme
│       └── tailwind.css # Compiled output (auto-generated)
├── Dockerfile           # Multi-stage production build
├── docker-compose.yml   # PostgreSQL + Django services
└── .dockerignore

🧪 Running Tests

python manage.py test

📝 Content Management

Add your real content through the Django admin panel:

  1. Go to /admin/ and log in with your superuser credentials
  2. Create Technologies, Projects, and Testimonials under "Portfolio"
  3. Create Blog Posts under "Blog"
  4. View submitted Contact messages under "Contact"

🔒 Production Checklist

Before deploying, update:

  • SECRET_KEY in .env (generate a strong random key)
  • DEBUG=False in .env
  • ALLOWED_HOSTS with your domain
  • Enable CompressedManifestStaticFilesStorage in settings.py
  • Wire up DATABASE_URL parsing (e.g., dj-database-url)
  • Set SECURE_SSL_REDIRECT, SESSION_COOKIE_SECURE, CSRF_COOKIE_SECURE
  • Update social links and email in templates

📄 License

Personal portfolio — all rights reserved.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages