PitchHut logo
Projection
A modern static site generator for coding project portfolios.
Pitch

Projection is a reusable static site generator that enables the creation of stunning, interactive galleries to showcase coding projects. With a user-friendly web admin interface and quick setup, managing and deploying portfolios has never been easier.

Description

Projection is a modern, reusable static site generator designed to help developers create stunning and interactive galleries to showcase coding projects. This tool simplifies the process of generating a personalized portfolio site with just a single command, streamlining the way developers can present their work online.

Features

  • Web Admin Interface: Manage projects effortlessly through an intuitive web UI with live previews.
  • Easy Installation: A straightforward installation process that can be executed globally from the source.
  • Quick Setup: Initialize new projects in seconds to get up and running without delay.
  • Responsive Design: Ensures a flawless user experience on desktop, tablet, and mobile devices.
  • Search & Filter: A real-time search function and tag-based filtering allow visitors to quickly navigate through projects.
  • Featured Projects: Highlight specific projects to draw attention to significant work.
  • Flexible Tagging: Organize projects with customizable tags, supporting both ANY and ALL filtering options.
  • Hot Reloading: Enjoy a seamless development experience with automatic rebuilds and refreshes.
  • Customizable: Override default styles and scripts to tailor the appearance and functionality to personal preferences.
  • GitHub Pages Deployment: Deploy the completed site with a single command or through the admin interface, making it easy to host on GitHub.

Example Usage

To create a new portfolio, follow these simple steps:

  1. Initialize a New Project:

    mkdir my-portfolio
    cd my-portfolio
    projection init
    

    This will set up a basic structure, including a sample projects.yaml for your project data.

  2. Edit Your Projects: Use the admin interface to manage projects intuitively:

    projection admin
    

    This opens a web-based editor where you can visually add, edit, and delete projects.

  3. Start Development Server: Begin developing your site locally:

    projection dev
    

    It starts the local server and watches for changes, ensuring real-time updates.

  4. Build for Production: When ready, build your site for deployment:

    projection build
    

    The generated files will be in the dist/ directory, prepared for live hosting.

Project Data Format

Projection supports project data in multiple formats including YAML and JSON. Below is a sample YAML structure for defining projects:

projects:
  - id: "my-awesome-project"
    title: "My Awesome Project"
    description: "A brief description of what this project does"
    creationDate: "2024-01-15"
    tags: ["web", "javascript"]
    pageLink: "https://example.com/my-project"
    sourceLink: "https://github.com/username/my-project"
    thumbnailLink: "./screenshots/project.png"
    featured: true

Customization Options

Users can easily customize their portfolios by creating directories for custom styles, scripts, and assets, allowing for tailored appearances and functionalities.

Deployment Options

Projection includes built-in support for deploying directly to GitHub Pages, making it hassle-free to publish portfolios online with a single deploy command. Ensure configuration is set correctly to facilitate smooth deployment.

For further information, setup guides, and troubleshooting assistance, please refer to the GitHub repository and follow the comprehensive documentation provided.

0 comments

No comments yet.

Sign in to be the first to comment.