A portfolio and e-commerce website for art featuring Netlify Functions for Stripe checkout and email functionality.
git clone https://github.com/YOUR_USERNAME/gallery-by-emily.git
cd gallery-by-emily
npm install
netlify/.env
with the following variables:
```
STRIPE_SECRET_KEY=sk_test_your_test_key STRIPE_PUBLISHABLE_KEY=pk_test_your_publishable_key
URL=http://localhost:8888
SMTP_HOST=mail.yourdomain.com SMTP_PORT=587 SMTP_USER=smtp-user SMTP_PASS=your-smtp-pass
4. Start the development server:
```bash
npm run dev
The website consists of the following pages:
/
├── index.html # Home page
├── gallery.html # Gallery page
├── shop.html # Shop page
├── about.html # About page
├── events.html # Events page
├── contact.html # Commission/Contact page
├── css/
│ ├── styles.css # Main stylesheet (shared styles)
│ ├── gallery.css # Gallery page specific styles
│ ├── shop.css # Shop page specific styles
│ ├── about.css # About page specific styles
│ ├── events.css # Events page specific styles
│ └── contact.css # Commission page specific styles
├── js/
│ ├── script.js # Main JavaScript file (shared functionality)
│ ├── gallery.js # Gallery page specific functionality
│ ├── shop.js # Shop page specific functionality
│ ├── contact.js # Commission form functionality
│ └── events.js # Events page specific functionality
└── images/ # All website images
├── logo.png # Website logo
├── placeholder1.jpg # Placeholder artwork images (to be replaced)
├── placeholder2.jpg # Placeholder artwork images (to be replaced)
└── ... # Additional images
To add new artwork to the gallery and shop:
images/
directorygallery.html
file and add a new gallery-item
div with the appropriate data attributesshop.html
file and add a new product-card
div with the appropriate data attributesExample gallery item:
<div class="gallery-item" data-category="original">
<img src="images/your-new-image.jpg" alt="Description of Artwork">
<div class="gallery-item-info">
<h3>Artwork Title</h3>
<p>Category/Medium</p>
<a href="#" class="btn btn-small">View Details</a>
</div>
</div>
To update events on the events page:
events.html
fileevents-grid
sectionevent-card
divs as neededThe website uses CSS variables for consistent colors throughout. To change the color scheme:
css/styles.css
:root
section at the top:root {
--primary-color: #ff6b6b;
--secondary-color: #4ecdc4;
--accent-color: #ffe66d;
/* Other color variables */
}
This website consists of static files that can be hosted on any web server or hosting platform like:
The website is configured to use the domain gallerybyemily.com
. After purchasing this domain, point it to your hosting provider using their instructions.
Potential future improvements:
For website maintenance assistance, please contact the web developer.
© 2023 Gallery by Emily. All rights reserved.