Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Deploy to GitHub Pages

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
build-and-deploy:
runs-on: ubuntu-latest

permissions:
contents: read
pages: write
id-token: write

environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Build
run: npm run build

- name: Setup Pages
uses: actions/configure-pages@v4

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ./dist

- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
if: github.ref == 'refs/heads/master'
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
node_modules
dist
.tmp
.parcel-cache
.DS_Store
2 changes: 1 addition & 1 deletion .stylelintrc.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"extends": "stylelint-config-standard",
"extends": "stylelint-config-standard-scss",
"rules": {
"selector-max-id": 1,
"max-nesting-depth": 2,
Expand Down
22 changes: 0 additions & 22 deletions .travis.yml

This file was deleted.

38 changes: 38 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Project Overview

This is a wedding website for Marina & Florent built with vanilla JavaScript and SCSS, using Parcel for build tooling. The site features smooth scrolling animations powered by the Skrollr library and is optimized for desktop/tablet viewing.

## Development Commands

- `npm run dev` - Start development server with Parcel
- `npm run build` - Build production bundle
- `npm run preview` - Build and serve production bundle locally
- `npm run lint:js` - Lint JavaScript files with ESLint
- `npm run lint:styles` - Lint SCSS files with Stylelint

## Deployment

The site is automatically deployed to GitHub Pages via GitHub Actions when changes are pushed to the `master` branch. The workflow:

1. Builds the site using Parcel
2. Uploads the `dist/` folder as a Pages artifact
3. Deploys to GitHub Pages

Live site: https://florentb.github.io/Since97

## Architecture

The project uses Parcel as a zero-configuration build tool with the following structure:

- **Entry point**: `src/index.html` which imports `src/js/app.js` and `src/style/main.scss`
- **Build output**: `dist/` directory with bundled and optimized assets
- **Static assets**: `src/static/` automatically processed and copied during build
- **Asset handling**: Parcel automatically handles all asset imports and optimizations

The main application (`src/js/app.js`) initializes a scroll-based animation system using Skrollr, with mobile detection that shows an alert for mobile users to use desktop/tablet instead. The site uses a step-based scroll system with calculated viewport-relative positions.

Styling uses SCSS with normalize-scss as a base, featuring a pink theme color (`#e5007d`) and custom typography with BenchNine and Great Vibes fonts. Parcel automatically compiles SCSS and handles autoprefixing.
Loading