This guide will help you understand how to keep the site updated with new content, whether you're adding articles, album reviews, interviews, or production work.
- π Getting Started
- βοΈ How to Edit Files
- ποΈ Understanding the Site Structure
- β¨ Adding New Content
- πΌοΈ Managing Images
- π Reordering Content
- Technical Notes
The site is organized into four main sections:
- Home - Recent work and personal info
- Interviews - Published interviews and features
- Reviews - Album reviews organized by publication
- Production - Video productions and creative work
All content is managed through a single file called constants.ts, making it easy to add and organize new work.
This guide will walk you through setting up everything you need to edit the website files. We'll use Visual Studio Code (VSCode) - a free, user-friendly program that makes editing code easy.
What is VSCode? It's a free program that helps you edit code files. Think of it like Microsoft Word, but for websites.
- Go to code.visualstudio.com
- Download it. It's free
- Run the installer and follow the setup wizard
- Open VSCode when installation is complete
What is a repository? It's like a folder in the cloud where all the website files are stored.
- Contact Matt and ask for "collaborator access to the repository"
- Matt will add you as a collaborator
What is cloning? It's like downloading a copy of all the website files to your computer.
- Open VSCode
- Press
Ctrl+Shift+P(Windows) orCmd+Shift+P(Mac) - Type "Git: Clone" and press Enter
- Paste the repository URL https://github.com/mattbolanos/andy
- Choose a folder on your computer to save the files (like Desktop or Documents)
- Wait for the download to complete
You should now see all the website files in the left sidebar
- In the left sidebar, click on the
appfolder - Click on
constants.ts- this is the main file you'll edit - Make your changes following the guides below
- Press
Ctrl+S(Windows) orCmd+S(Mac) to save
What is pushing? It's like uploading your changes back to the cloud so the website updates.
- Look for the Source Control icon in the left sidebar (looks like a branch/fork)
- Click on it
- You'll see your changes listed under "Changes"
- Type a message in the box (like "Added new article about Taylor Swift")
- Click the checkmark (β) next to your message
- Click the "..." menu and select "Push"
That's it! Your changes are now live on the website!
What is pulling? It's like downloading the latest changes that Matt or others have made.
Always do this before you start editing:
- Click the Source Control icon in the left sidebar
- Click the "..." menu and select "Pull"
- Wait for it to complete
This ensures you have the latest version before making changes!
Every time you want to add content:
- Pull latest changes (Step 6)
- Edit the constants.ts file (Step 4)
- Push your changes (Step 5)
That's it! The website will update automatically.
The website is built like a digital portfolio where everything is controlled by one main file:
π app/
βββ constants.ts β This is where ALL content lives
π public/
βββ articles/ β Article images go here
βββ albums/ β Album cover images go here
βββ productions/ β Production thumbnail images go here
Key Point: You don't need to touch any code files except constants.ts to add new content!
The constants.ts file is now organized into clear sections:
recentArticles- Articles that appear on the homepagealbumReviews- Album reviews organized by publicationinterviewFeatures- Interviews and features organized by publicationyoutubeProductions- YouTube videos (embedded)linkProductions- External links with thumbnails
The file now includes helper functions to make content management easier:
getArticlesByPublication(publication)- Get all articles from a specific publicationgetReviewsByPublication(publication)- Get all reviews from a specific publicationgetFeaturesByPublication(publication)- Get all features from a specific publicationgetReviewPublications()- Get list of all publications with reviewsgetFeaturePublications()- Get list of all publications with features
Articles appear on the homepage under "Recent Work" and in the Interviews section.
Step 1: Add your article image to the public/articles/ folder
- Use a descriptive filename like
publication_article-title.jpg - Recommended size: 400x400 pixels or larger
- Supported formats: JPG, PNG, WebP
Step 2: Open app/constants.ts and find the recentArticles section (around line 50)
Step 3: Add your new article to the list:
export const recentArticles: Article[] = [
{
publication: "The Ringer",
image: "ringer_new-article.jpg", // Your image filename
title: "Your Article Title Here",
url: "https://example.com/your-article-url",
},
// ... existing articles
];Step 4: Also add it to the interviewFeatures section (around line 200) under the correct publication:
{
publication: "The Ringer",
features: [
{
title: "Your Article Title Here",
url: "https://example.com/your-article-url",
},
// ... existing features
],
},Album reviews are organized by publication and appear in the Reviews section.
Step 1: Add the album cover image to public/albums/
- Use a descriptive filename like
artist-album-name.jpg - Recommended size: 300x300 pixels (square)
- Supported formats: JPG, PNG, WebP
Step 2: Open app/constants.ts and find the albumReviews section (around line 100)
Step 3: Add your review to the appropriate publication:
export const albumReviews: AlbumPublication[] = [
{
publication: "Paste Magazine",
reviews: [
{
imageUrl: "new-artist-new-album.jpg", // Your image filename
href: "https://example.com/review-url",
},
// ... existing reviews
],
},
// ... other publications
];To add a new publication, create a new object:
{
publication: "New Publication Name",
reviews: [
{
imageUrl: "album-cover.jpg",
href: "https://example.com/review-url",
},
],
},Interviews and features appear in the Interviews section, organized by publication.
Step 1: Add any images to public/articles/ (if needed)
Step 2: Open app/constants.ts and find the interviewFeatures section (around line 200)
Step 3: Add your feature to the appropriate publication:
{
publication: "Paste Magazine",
features: [
{
title: "Your Interview/Feature Title",
url: "https://example.com/feature-url",
},
// ... existing features
],
},Production work appears in the Production section and can include YouTube videos or external links.
For YouTube Videos:
Step 1: Open app/constants.ts and find the youtubeProductions section (around line 300)
Step 2: Add to an existing YouTube section or create a new one:
export const youtubeProductions: YouTubeProduction[] = [
{
publication: "Live from My Den",
description: "Description of your production series",
productions: [
"https://www.youtube.com/embed/VIDEO_ID?si=EMBED_CODE",
// ... existing videos
],
},
];For External Links with Images:
Step 1: Add thumbnail images to public/productions/
- Use descriptive filenames like
show-season-episode.png - Recommended size: 400x225 pixels (16:9 aspect ratio)
Step 2: Add to the link productions list:
export const linkProductions: LinkProduction[] = [
{
publication: "Variety - Full Production Credits",
description: "Live from My Den Season 6",
links: [
{
href: "https://example.com/production-url",
image: "production-thumbnail.png", // Your image filename
},
// ... existing links
],
},
];Article Images (public/articles/):
- Size: 400x400 pixels or larger
- Format: JPG, PNG, or WebP
- Naming:
publication_article-title.jpg
Album Covers (public/albums/):
- Size: 300x300 pixels (square)
- Format: JPG, PNG, or WebP
- Naming:
artist-album-name.jpg
Production Thumbnails (public/productions/):
- Size: 400x225 pixels (16:9 aspect ratio)
- Format: PNG or JPG
- Naming:
show-season-episode.png
- Upload your image to the appropriate folder in
public/ - Name it descriptively (no spaces, use hyphens or underscores)
- Reference the exact filename in your
constants.tsentry
The recentArticles array controls what appears on the homepage. To reorder:
- Open
app/constants.ts - Find the
recentArticlessection - Move items up or down in the array
- The first item appears first on the homepage
Reviews are organized by publication, then by order within each publication's array. To reorder:
- Find the publication in
albumReviews - Move items within that publication's
reviewsarray - To change publication order, move entire publication objects
Features are organized by publication. To reorder:
- Find the publication in
interviewFeatures - Move items within that publication's
featuresarray - To change publication order, move entire publication objects
Productions are organized by type (YouTube vs. Links) and then by order. To reorder:
- Find the production section in
publicationProductions - Move items within the
productionsorlinksarray
- Main content file:
app/constants.ts - Images:
public/articles/,public/albums/,public/productions/ - Homepage:
app/page.tsx - Reviews page:
app/reviews/page.tsx - Features page:
app/features/page.tsx - Production page:
app/production/page.tsx
- Always use the exact filename in your constants (case-sensitive)
- Don't use spaces in filenames - use hyphens or underscores
- Test your changes by running the development server
- Keep the same structure when adding new content
If you run into issues:
- Check filenames - Make sure they match exactly in constants.ts
- Check image paths - Ensure images are in the correct public folder
- Check syntax - Make sure you have proper commas and brackets
- Test locally - Run
npm run devto see your changes
Remember: This site is designed to be easy to maintain. Most updates only require editing the constants.ts file and adding images to the public folder!
If you just want to add content quickly:
- Contact Matt for repository access
- Download VSCode from code.visualstudio.com
- Follow Steps 1-6 in the "How to Edit Files" section above
- Find the file: Look for
app/constants.ts - Follow the guides below for your content type
- Push your changes to update the website
Need help? Contact Matt - he can walk you through the setup process!