All Projects → andyzg → Gallery

andyzg / Gallery

Licence: mit
Visual Portfolio Generator with no extra installation

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Gallery

Pollinate
Template your base files and generate new projects from Git(Hub).
Stars: ✭ 213 (-10.88%)
Mutual labels:  generator
Readme
Automatically generate a beautiful best-practice README file based on the contents of your repository
Stars: ✭ 223 (-6.69%)
Mutual labels:  generator
Anydlbot
An Open Source GPLv3 All-In-One Telegram Bot
Stars: ✭ 236 (-1.26%)
Mutual labels:  generator
Co Mocha
Enable support for generators in Mocha tests
Stars: ✭ 216 (-9.62%)
Mutual labels:  generator
Toa
A pithy and powerful web framework.
Stars: ✭ 220 (-7.95%)
Mutual labels:  generator
Laravel Craftsman
Laravel Craftsman CLI for easily crafting Laravel assets for any project (artisan make on steroids)
Stars: ✭ 227 (-5.02%)
Mutual labels:  generator
Pynet
Generating RGB photos from RAW image files with PyNET
Stars: ✭ 211 (-11.72%)
Mutual labels:  photography
Extension Create
Create modern cross-browser extensions with no build configuration.
Stars: ✭ 167 (-30.13%)
Mutual labels:  generator
T3mujinpack
Collection of film emulation presets for open-source RAW developer software Darktable.
Stars: ✭ 222 (-7.11%)
Mutual labels:  photography
Yii2 Apidoc
Yii 2 apidoc extension.
Stars: ✭ 236 (-1.26%)
Mutual labels:  generator
Stator
Stator, your go-to template for the perfect stack. 😍🙏
Stars: ✭ 217 (-9.21%)
Mutual labels:  generator
Mockery
A mock code autogenerator for Golang
Stars: ✭ 3,138 (+1212.97%)
Mutual labels:  generator
Dtsmake
TypeScript 's type definition file (*.d.ts files) generator tool from JavaScript files.
Stars: ✭ 231 (-3.35%)
Mutual labels:  generator
Generators
API Generator - instantly generate REST and GraphQL APIs (openapi (OAS) 3.0.0)
Stars: ✭ 213 (-10.88%)
Mutual labels:  generator
Reverse Shell Generator
Hosted Reverse Shell generator with a ton of functionality. -- (Great for CTFs)
Stars: ✭ 238 (-0.42%)
Mutual labels:  generator
Generator Web Extension
Advanced WebExtension generator that creates everything you need to get started with cross-browser web-extension development.
Stars: ✭ 212 (-11.3%)
Mutual labels:  generator
Github Profilinator
🚀 This tool contains mini GUI components that you can hook together to automatically generate markdown code for a perfect readme.
Stars: ✭ 225 (-5.86%)
Mutual labels:  generator
Generator
Use your AsyncAPI definition to generate literally anything. Markdown documentation, Node.js code, HTML documentation, anything!
Stars: ✭ 237 (-0.84%)
Mutual labels:  generator
Generate
A new command line tool and developer framework for scaffolding out GitHub projects. Generate offers the robustness and configurability of Yeoman, the expressiveness and simplicity of Slush, and more powerful flow control and composability than either.
Stars: ✭ 238 (-0.42%)
Mutual labels:  generator
Create Exposed App
App generator with everything exposed for maximum control (powered by TypeScript, ESBuild, Jest, ESLint, GitHub Actions, Prettier, and more)
Stars: ✭ 232 (-2.93%)
Mutual labels:  generator

Gallery

A visual portfolio generator with web hosting for your mockups and photo albums. Requires no 3rd party libraries or installations. A 🤑free🤑 Squarespace alternative for your photos. Live demo at http://andyzhang.net/gallery

demo

Gallery is a side project of mine to allow me to create a more curated version of my photography and mockup portfolio. It's intended to have a simple setup process that is accessible by anyone. If you have any feedback for Gallery, drop me a line :)

Dependencies

🔥 NONE 🔥

Making your own gallery in less than 5 minutes

  • Fork this repository🍴
  • Clone the repository through terminal by running git clone [email protected]:{YOUR_USERNAME}/gallery.git
  • Replace contents of /photos with all of your albums. For each of your albums, create a folder with the same name as your album name, and then put all of your photos in the folder. Example:
/photos
  /mockups
    IMG_0123.jpg
    IMG_0124.jpg
  /portrait
    IMG_1234.jpg
    IMG_1235.jpg
  • Open the folder in finder and double click setup.command. This will go through all of your albums and create a config.json file for you. This file allows the generator to know which photos will be hosted on your website.✨
  • Personalize the contents at the bottom of _config.yml.
  • Commit all of your changes and then push all of your changes to Github by running
$ git checkout -B gh-pages  # This creates a branch that will be hosted at {username}.github.io/gallery
$ git commit -am "Create my first gallery"  # This saves all of your changes
$ git push origin gh-pages  # This pushes your gallery to be hosted!
  • Check out your site at {username}.github.io/gallery 🎉✨!

Important notes: To ⏭speed⏭ up the loading time of your gallery, please make sure to compress your images. If you're running this on a macOS system, this is done automatically for you using sips! If you want Google Analytics, replace _includes/ga.html with your own snippet.

How It Works

There are two important pieces to gallery:

Album Generation

setup.command goes through all of the folders in your /photos/ directory. It collects all of the file paths of each photo in each album. It aggregates all of this data into one key file called config.json.

Client-side Generation

Once you've created your config.json, the website can now use that file to figure out which photos to show. It uses JavaScript(ES6🔥!) to layout your photos, grouping all of the photos per album.

Customizing your Gallery

Gallery supports 3 different kinds of layouts: rows, squares and columns. You can choose which type of layout you want to use by setting the layout variable in script.js to be either SQUARES, ROWS or COLUMNS.

Each different layout has both its own and shared set of configuration options.

Shared

  • spacing (Integer): The vertical and horizontal distance that separates each photo from all adjacent photos. Defaulted to 10.
  • shuffle (Boolean): Toggle to shuffle or not to shuffle the photos. Default is false.

Column Configuration

  • columns (Integer): The number of columns for the layout. Default is 3.

Square Configuration

  • columns (Integer): The number of columns for the layout. Default is 3.
  • maxHeight (Integer): The max height in px for each photo. Default is 400.

Columns takes priority if both are set.

Row Configuration

  • maxHeight (Integer): The max height in px for each photo. Default is 400.

Instagram

  • instagram (String): Your Instagram handle. If no string is passed, no footer is rendered.

Fun Facts

  • No Bootstrap is used. AT ALL! 🔥🔥🔥
  • It uses ES6. NEW TECH! 🔥🔥🔥
  • It has no local dependencies. SAY WHAT! 🔥🔥🔥

🔥🔥🔥


If you enjoyed using Gallery, I'd love to see what you created with Gallery 🙌

Share your gallery with me on this thread❤️!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].