All Projects → cosmicjs → cosmicapp-photography-website

cosmicjs / cosmicapp-photography-website

Licence: other
A photography website template built using Node.js and the Cosmic JS CMS API

Programming Languages

CSS
56736 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Photography Website

A website template that satisfies some common website requirements for a photography website including dynamic pages, blog articles, author management, SEO ability, contact form, website search and photo gallery page.

Demo

Click here to view a demo

Features

  1. Fully responsive down to mobile w/ Bootstrap frontend
  2. SEO ready
  3. A contact form that sends an email to your email(s) of choice and to Cosmic JS for easy reference
  4. Full-site search functionality
  5. Work page gallery powered by Photoswipe and easily managed by Cosmic JS
  6. All content is easily managed in Cosmic JS including pages and contact info.

Sign up for Cosmic JS to install the demo content and deploy this website.

Get started

git clone https://github.com/cosmicjs/cosmicapp-photography-website
cd cosmicapp-photography-website
npm install

Import the bucket.json file into your Cosmic JS bucket. To do this, login to Cosmic JS and in your bucket left side nav, go to Import / Export. Drag and drop the bucket.json file from this repo to import all data and files to get started.

Run in production

COSMIC_BUCKET=your-bucket-slug npm start

Go to http://localhost:3000.

Run in development

Create a config/development.js file and match it to config/production.js with your values.

npm run development

Go to http://localhost:5000.

Setting up MailGun to send emails from the contact form

Because Node.js doesn't have a mail server, the contact form uses MailGun to send emails.

  1. Go to MailGun and login to your account or setup a new account.
  2. Get your api key and domain.
  3. To configure your deployed application, add your domain and api key to your environment variables (MAILGUN_DOMAIN, MAILGUN_KEY) located in Your Bucket > Web Hosting > Environment Variables, or hard code them into config/production.js (not advised).
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].