Skip to content

Commit 0394642

Browse files
jeremymanningclaude
andcommitted
Add complete Context Lab website
- All HTML pages: index, research, people, publications, software, contact, news - CSS styling with green theme and responsive design - JavaScript for modals, navigation, forms, and animations - Images for people, publications, research, software, and news - Jeremy Manning's CV hosted locally - README with site documentation for maintainers Design by Chameleon Studios (chamstudios.com) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 1175b6e commit 0394642

File tree

180 files changed

+4426
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

180 files changed

+4426
-2
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,7 @@ _site/
55
# Ignore folders generated by Bundler
66
.bundle/
77
vendor/
8+
9+
# Claude Code instructions (local only)
10+
CLAUDE.md
11+
notes/

README.md

Lines changed: 181 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,181 @@
1-
# contextlab.github.io
2-
Contextual Dynamics Lab website
1+
# Contextual Dynamics Lab Website
2+
3+
The official website for the Contextual Dynamics Lab at Dartmouth College, hosted on GitHub Pages.
4+
5+
**Live site:** [https://contextlab.github.io](https://contextlab.github.io)
6+
7+
## Site Structure
8+
9+
```
10+
contextlab.github.io/
11+
├── index.html # Homepage with animated brain
12+
├── research.html # Research interests and projects
13+
├── people.html # Current members and alumni
14+
├── publications.html # Papers, talks, posters, and course materials
15+
├── software.html # Open-source software projects
16+
├── contact.html # Contact form
17+
├── news.html # Lab news and updates
18+
├── css/
19+
│ └── style.css # Main stylesheet
20+
├── js/
21+
│ └── main.js # Interactive components
22+
├── images/
23+
│ ├── brain/ # Animated brain frames
24+
│ ├── people/ # Team member photos
25+
│ ├── publications/ # Publication thumbnails
26+
│ └── software/ # Software project images
27+
└── documents/
28+
└── JRM_CV.pdf # Jeremy Manning's CV
29+
```
30+
31+
## Design & Theming
32+
33+
Site design by [Chameleon Studios](https://www.chamstudios.com/).
34+
35+
### Color Palette
36+
37+
The site uses a green-based color scheme defined in CSS variables:
38+
39+
```css
40+
:root {
41+
--primary-green: rgb(0, 112, 60); /* Main brand color */
42+
--primary-green-light: rgba(0, 112, 60, 0.6);
43+
--bg-green: rgba(0, 112, 60, 0.2); /* Page backgrounds */
44+
--white: #FFFFFF;
45+
--dark-text: rgba(0, 0, 0, 0.7);
46+
}
47+
```
48+
49+
### Typography
50+
51+
- **Body text:** Nunito Sans (300 weight)
52+
- **Headings:** Nunito Sans (300-700 weight), lowercase with letter-spacing
53+
- Base font size: 14px with 1.7 line-height
54+
55+
### Key Design Elements
56+
57+
1. **Sticky Footer Navigation** - Fixed navigation bar at the bottom of the viewport
58+
2. **Animated Brain** - Homepage features a rotating brain animation (GIF frames)
59+
3. **Info Panel Toggle** - Homepage "i" button reveals lab description with smooth animation
60+
4. **Modal Forms** - Contact and join-us forms appear in centered modals
61+
5. **Publication Cards** - Hover effects reveal additional information
62+
63+
## Pages
64+
65+
### Homepage (index.html)
66+
- Animated brain image that scales with viewport
67+
- "Info" button toggles descriptive panel
68+
- Brain and text resize responsively
69+
70+
### People (people.html)
71+
- Lab director section
72+
- Grid of current members
73+
- "Join Us" modal for prospective members
74+
- Alumni section with past lab members
75+
- Collaborators list
76+
77+
### Publications (publications.html)
78+
- Peer-reviewed articles with thumbnails
79+
- Talks section with video/PDF links
80+
- Course materials
81+
- Conference abstracts and posters
82+
83+
### Contact (contact.html)
84+
- Contact form (Formspree integration)
85+
- Physical address and email
86+
87+
## JavaScript Components
88+
89+
Located in `js/main.js`:
90+
91+
- **initDropdowns()** - Dropdown menu behavior
92+
- **initStickyNav()** - Footer nav visibility on scroll
93+
- **initSlideshow()** - Image carousel with autoplay
94+
- **initModal()** - Modal open/close handling
95+
- **initSmoothScroll()** - Anchor link smooth scrolling
96+
- **initInfoPanel()** - Homepage info toggle with animations
97+
- **initContactForms()** - AJAX form submission
98+
- **initMobileMenu()** - Mobile navigation toggle
99+
- **initCustomValidation()** - Styled form validation messages
100+
101+
## Forms
102+
103+
Contact forms use [Formspree](https://formspree.io/) for processing. Form validation messages are styled to match the site's green theme.
104+
105+
To update the form endpoint:
106+
1. Create a Formspree account
107+
2. Create a new form
108+
3. Replace the `action` URL in the form HTML
109+
110+
## Adding Content
111+
112+
### New Team Member
113+
114+
1. Add photo to `images/people/` (recommended: 400x400px)
115+
2. Edit `people.html`, add to appropriate section:
116+
117+
```html
118+
<div class="team-member">
119+
<img src="images/people/name.jpg" alt="Name">
120+
<h3>name | role</h3>
121+
<p>Bio text here.</p>
122+
</div>
123+
```
124+
125+
### New Publication
126+
127+
1. Add thumbnail to `images/publications/` (recommended: 500x500px with green border)
128+
2. Edit `publications.html`, add to publications grid:
129+
130+
```html
131+
<div class="publication-card">
132+
<img src="images/publications/thumbnail.png" alt="Paper title">
133+
<div class="publication-info">
134+
<h3>Paper Title</h3>
135+
<p>Authors (Year). Journal Name.</p>
136+
<a href="https://doi.org/..." target="_blank">PDF</a>
137+
</div>
138+
</div>
139+
```
140+
141+
### New Software Project
142+
143+
1. Add screenshot to `images/software/`
144+
2. Edit `software.html`, add to software grid
145+
146+
## Mobile Responsiveness
147+
148+
The site is fully responsive with breakpoints at:
149+
- **768px** - Tablet layout
150+
- **480px** - Mobile layout
151+
152+
Key mobile adaptations:
153+
- Collapsible navigation menu
154+
- Single-column layouts
155+
- Adjusted font sizes
156+
- Touch-friendly tap targets
157+
158+
## Deployment
159+
160+
The site deploys automatically via GitHub Pages when changes are pushed to the `main` branch.
161+
162+
To test locally, open any HTML file directly in a browser or use a local server:
163+
164+
```bash
165+
python3 -m http.server 8000
166+
# Then visit http://localhost:8000
167+
```
168+
169+
## Browser Support
170+
171+
Tested and supported in:
172+
- Chrome (latest)
173+
- Firefox (latest)
174+
- Safari (latest)
175+
- Edge (latest)
176+
177+
## Credits
178+
179+
- **Design:** [Chameleon Studios](https://www.chamstudios.com/)
180+
- **Development:** Contextual Dynamics Lab
181+
- **Hosting:** GitHub Pages

contact.html

Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Contact — Contextual Dynamics Lab</title>
7+
<link rel="stylesheet" href="css/style.css">
8+
<link rel="icon" type="image/x-icon" href="favicon.ico">
9+
</head>
10+
<body class="contact-page">
11+
<!-- Header -->
12+
<header class="site-header">
13+
<div class="header-inner">
14+
<a href="index.html" class="logo">
15+
<img src="images/CDL_Avatar.png" alt="Contextual Dynamics Lab">
16+
<span class="logo-text">contextual dynamics lab</span>
17+
</a>
18+
<nav class="main-nav">
19+
<ul>
20+
<li><a href="index.html">contextual dynamics lab</a></li>
21+
<li class="dropdown">
22+
<span class="dropdown-toggle">about</span>
23+
<ul class="dropdown-menu">
24+
<li><a href="research.html">research</a></li>
25+
<li><a href="people.html">people</a></li>
26+
<li><a href="news.html">news</a></li>
27+
</ul>
28+
</li>
29+
<li><a href="publications.html">publications</a></li>
30+
<li><a href="software.html">software</a></li>
31+
<li><a href="contact.html">contact</a></li>
32+
</ul>
33+
<div class="social-icons">
34+
<a href="https://github.com/organizations/ContextLab" target="_blank" title="GitHub">
35+
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
36+
<path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"/>
37+
</svg>
38+
</a>
39+
<a href="http://x.com/contextmemlab/" target="_blank" title="X (Twitter)">
40+
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
41+
<path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/>
42+
</svg>
43+
</a>
44+
<a href="mailto:contextualdynamics@gmail.com" title="Email">
45+
<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
46+
<path d="M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"/>
47+
</svg>
48+
</a>
49+
</div>
50+
</nav>
51+
</div>
52+
</header>
53+
54+
<!-- Main Content -->
55+
<main class="main-content">
56+
<div class="page-header">
57+
<h2>contact</h2>
58+
<h3>Like a pack of roving zombies, our lab is always on the lookout for <strong>fresh new brains</strong>.</h3>
59+
<p class="page-intro">Are you a <strong>psychology nut</strong> who wants to help crack the mysteries of the mind? Are you a <strong>computer nerd</strong> who wants to code up awesome experiments or use cutting-edge machine learning algorithms to understand cognition? Do you want to <strong>participate</strong> in one of the lab's ongoing studies? Or join our illustrious <strong>fan club</strong>?</p>
60+
</div>
61+
62+
<div class="contact-cta-row">
63+
<button class="btn-outline modal-open" data-modal="contact-modal">GET IN TOUCH</button>
64+
<img src="images/zombie.png" alt="Zombie illustration" class="zombie-illustration">
65+
</div>
66+
67+
<hr>
68+
69+
<!-- Contact Information -->
70+
<section class="content-section contact-info-section">
71+
<div class="contact-info-row">
72+
<img src="images/tree-icon.png" alt="Tree illustration" class="tree-illustration">
73+
<div class="contact-details">
74+
<h1>contextual dynamics lab</h1>
75+
<h3>professor jeremy r. manning, lab director</h3>
76+
<p>
77+
<a href="http://pbs.dartmouth.edu/" target="_blank">Department of Psychological and Brain Sciences</a><br>
78+
<a href="http://www.dartmouth.edu/" target="_blank">Dartmouth College</a><br>
79+
349 Moore Hall, HB 6207<br>
80+
Hanover, NH 03755<br>
81+
[<a href="https://goo.gl/maps/PST5bTztEUu" target="_blank">map</a>]
82+
</p>
83+
<p>
84+
<a href="mailto:contextualdynamics@gmail.com">contextualdynamics@gmail.com</a><br>
85+
603.646.0070
86+
</p>
87+
</div>
88+
</div>
89+
</section>
90+
</main>
91+
92+
<!-- Contact Modal -->
93+
<div id="contact-modal" class="modal">
94+
<div class="modal-content">
95+
<button class="modal-close">&times;</button>
96+
<h2>get in touch</h2>
97+
<form class="contact-form" action="https://formspree.io/f/mzznjnzd" method="POST">
98+
<input type="hidden" name="_source" value="Contact Page">
99+
<div class="form-row">
100+
<div class="form-group">
101+
<label for="first-name">First Name <span class="required">*</span></label>
102+
<input type="text" id="first-name" name="first-name" required>
103+
</div>
104+
<div class="form-group">
105+
<label for="last-name">Last Name <span class="required">*</span></label>
106+
<input type="text" id="last-name" name="last-name" required>
107+
</div>
108+
</div>
109+
110+
<div class="form-group">
111+
<label for="email">Email Address <span class="required">*</span></label>
112+
<input type="email" id="email" name="email" required>
113+
</div>
114+
115+
<div class="form-group">
116+
<label for="subject">Subject <span class="required">*</span></label>
117+
<input type="text" id="subject" name="subject" required>
118+
</div>
119+
120+
<div class="form-group">
121+
<label for="role">I am a... <span class="required">*</span></label>
122+
<select id="role" name="role" required>
123+
<option value="">Select an option</option>
124+
<option value="psychology-nut">Psychology Nut</option>
125+
<option value="computer-nerd">Computer Nerd</option>
126+
<option value="study-participant">Study Participant</option>
127+
<option value="fan-club">Illustrious Fan Club Member</option>
128+
<option value="lab-manager">Lab Manager/Zombie Herder</option>
129+
<option value="grad-student">Grad Student</option>
130+
<option value="postdoc">Postdoc</option>
131+
<option value="question">Question Inquiry</option>
132+
<option value="funding">Funding Interest</option>
133+
<option value="other">Other</option>
134+
</select>
135+
</div>
136+
137+
<div class="form-group">
138+
<label for="message">Message <span class="required">*</span></label>
139+
<p class="textarea-helper">If you're interested in joining the lab, please include a paragraph or two about your research interests. Undergraduates should specify how much time you are able to commit to research per week.</p>
140+
<textarea id="message" name="message" rows="6" required></textarea>
141+
</div>
142+
143+
<button type="submit" class="btn-primary">Submit</button>
144+
</form>
145+
</div>
146+
</div>
147+
148+
<!-- Footer Navigation -->
149+
<nav class="footer-nav">
150+
<div class="footer-nav-inner">
151+
<button class="mobile-menu-toggle" aria-label="Toggle menu">
152+
<span></span>
153+
<span></span>
154+
<span></span>
155+
</button>
156+
<a href="index.html" class="logo">
157+
<img src="images/CDL_Avatar.png" alt="CDL">
158+
</a>
159+
<ul>
160+
<li><a href="index.html">contextual dynamics lab</a></li>
161+
<li class="dropdown">
162+
<span class="dropdown-toggle">about</span>
163+
<ul class="dropdown-menu">
164+
<li><a href="research.html">research</a></li>
165+
<li><a href="people.html">people</a></li>
166+
<li><a href="news.html">news</a></li>
167+
</ul>
168+
</li>
169+
<li><a href="publications.html">publications</a></li>
170+
<li><a href="software.html">software</a></li>
171+
<li class="active"><a href="contact.html">contact</a></li>
172+
</ul>
173+
</div>
174+
</nav>
175+
176+
<script src="js/main.js"></script>
177+
</body>
178+
</html>

0 commit comments

Comments
 (0)