Skip to content

docs: add GitHub Pages landing page with MkDocs#203

Merged
j-d-ha merged 14 commits into
mainfrom
docs/add-github-pages-landing-page
Nov 30, 2025
Merged

docs: add GitHub Pages landing page with MkDocs#203
j-d-ha merged 14 commits into
mainfrom
docs/add-github-pages-landing-page

Conversation

@j-d-ha

@j-d-ha j-d-ha commented Nov 30, 2025

Copy link
Copy Markdown
Collaborator

Summary

Implements a comprehensive landing page for the aws-lambda-host documentation site using MkDocs with Material theme. This PR adds the foundational documentation infrastructure and a compelling landing page that showcases the framework's value proposition.

Key Changes

Documentation Infrastructure

  • Initialize MkDocs with Material theme configuration
  • Configure markdown extensions for enhanced formatting (content tabs, admonitions, code highlighting, Material icons)
  • Set up GitHub Pages deployment workflow
  • Add light/dark mode toggle support

Landing Page Content (docs/index.md)

  • Hero Section: Clear value proposition with build badges and CTA buttons
  • Why AwsLambda.Host: Side-by-side comparison of Traditional Lambda vs aws-lambda-host
    • Traditional example shows manual DI scoping, cancellation token creation, and JSON handling (marked with ❌)
    • Modern example shows automatic injection and envelope handling (marked with ✅)
  • Key Features: 7 framework features with Material icons and links to documentation
  • Quick Start: Installation command and runnable code example
  • Packages Overview:
    • Core packages table with NuGet badges and download counts
    • Envelope packages table with descriptions and badges
  • Examples & Use Cases: Links to example projects
  • Community & Resources: Links to GitHub, changelog, documentation sections

Technical Details

  • Material for MkDocs Features Used:

    • Content tabs for code comparisons
    • Admonitions for callouts
    • Material icons for visual hierarchy
    • Styled buttons for CTAs
    • Code highlighting with copy buttons
  • Code Example Highlights:

    • Shows realistic API Gateway Lambda handler
    • Demonstrates manual scope creation, service resolution, and cancellation token handling in traditional approach
    • Contrasts with clean, declarative aws-lambda-host approach using envelopes and automatic injection

Documentation Plan

This landing page is Phase 1 of the comprehensive documentation plan stored in .claude/DOCUMENTATION_PLAN.md. Future phases will add:

  • Getting Started guide
  • Feature guides (middleware, DI, lifecycle)
  • Envelope documentation for each package
  • API reference
  • Advanced topics (AOT, source generators, performance)

Test Plan

  • Verify MkDocs builds successfully locally
  • Validate markdown syntax (content tabs, admonitions, Material icons)
  • Check all internal links resolve correctly
  • Verify NuGet badge URLs are correct
  • Confirm GitHub Pages deployment works
  • Test mobile responsiveness
  • Verify light/dark mode toggle

References

  • Documentation plan: .claude/DOCUMENTATION_PLAN.md
  • Landing page implementation plan: .claude/plans/curious-riding-pudding.md
  • MkDocs configuration: mkdocs.yml

- Deleted `RELEASE_PROCESS.md` as it duplicates information in GitHub workflows.
- Streamlined repository to ensure documentation remains concise and up-to-date.
- Added `docs/index.md` as the main entry point for MkDocs documentation.
- Configured the project with `mkdocs.yml` using the Material theme.
- Defined dependencies in `pyproject.toml` and added `uv.lock` for dependency locking.
- Updated `.gitignore` to exclude the `.claude/` directory.
- Added site metadata including description, author, and repository details.
- Configured navigation structure with `Home: index.md`.
- Enabled `search` plugin and specified files to watch for changes.
…tent

- Fixed repository URL in MkDocs configuration.
- Enabled advanced Material theme features like code copy, tabs, and footer navigation.
- Added extensive Markdown and PyMdown extensions for enhanced content formatting.
- Updated navigation structure, renaming "Home" to "Homepage" for improved clarity.
- Revamped `docs/index.md` with detailed introduction, key features, quick start guide, and examples.
- Updated `ame` to `Name` to resolve YAML casing inconsistency in `.github/workflows/docs.yaml`.
- Added manual scope creation per invocation for proper scoped lifetime management.
- Introduced manual service resolution within each scope for improved service lifecycle.
- Updated comments and removed incorrect usage of singleton-scoped service for all invocations.
- Improved clarity in the `LambdaBootstrapBuilder` example to reflect best practices.
- Configured palette toggles for light and dark modes in Material theme.
- Included icons and descriptive labels for better user experience.
…ample

- Replaced `BuildServiceProvider` usage to async with `await using` for proper disposal.
- Adjusted comments to improve clarity on manual DI container setup process.
- Replaced manual DI setup, service resolution, and cancellation token management with streamlined
  `aws-lambda-host` patterns.
- Highlighted automatic deserialization, DI injection, and JSON serialization in updated example.
- Improved comments for clarity between `Traditional Lambda` and `aws-lambda-host` approaches.
- Changed `Name` to `name` to align with YAML casing conventions in `.github/workflows/docs.yaml`.
- Updated framework description to include lifecycle hooks alongside middleware and DI.
- Adjusted code snippets to clarify builder pattern and proper async disposal.
- Standardized naming to `AwsLambda.Host` across docs for consistency.
- Updated framework description to reference `.NET` patterns instead of `ASP.NET Core` patterns.
- Replaced envelope package list with a detailed markdown table, including badges for NuGet versions
  and download counts.
@github-actions github-actions Bot added the type: feat New feature label Nov 30, 2025
@j-d-ha j-d-ha changed the title feat(docs): add GitHub Pages landing page with MkDocs docs: add GitHub Pages landing page with MkDocs Nov 30, 2025
@j-d-ha j-d-ha added type: docs Documentation change and removed type: feat New feature labels Nov 30, 2025
@sonarqubecloud

sonarqubecloud Bot commented Nov 30, 2025

Copy link
Copy Markdown

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarQube Cloud

@codecov

codecov Bot commented Nov 30, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Impacted file tree graph

@@           Coverage Diff           @@
##             main     #203   +/-   ##
=======================================
  Coverage   90.68%   90.68%           
=======================================
  Files         102      102           
  Lines        2233     2233           
  Branches      254      254           
=======================================
  Hits         2025     2025           
  Misses        115      115           
  Partials       93       93           

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4f7feca...161661d. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@j-d-ha
j-d-ha merged commit 29bd0bd into main Nov 30, 2025
10 of 11 checks passed
@j-d-ha
j-d-ha deleted the docs/add-github-pages-landing-page branch November 30, 2025 03:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: docs Documentation change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant