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.
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:
-
Initialize a New Project:
mkdir my-portfolio cd my-portfolio projection initThis will set up a basic structure, including a sample
projects.yamlfor your project data. -
Edit Your Projects: Use the admin interface to manage projects intuitively:
projection adminThis opens a web-based editor where you can visually add, edit, and delete projects.
-
Start Development Server: Begin developing your site locally:
projection devIt starts the local server and watches for changes, ensuring real-time updates.
-
Build for Production: When ready, build your site for deployment:
projection buildThe 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.
No comments yet.
Sign in to be the first to comment.