A modern, responsive portfolio website showcasing ecological data science projects, work experience, and academic background. Built with vanilla HTML, CSS, and JavaScript featuring smooth animations and interactive expandable content sections.
to be added:
key techinical skills list on front page
short couple line self introduction
- Single Page Application (SPA) - Smooth navigation between sections without page reloads
- Expandable Content Cards - Interactive training and work experience sections with detailed information
- Responsive Design - Optimized for desktop, tablet, and mobile devices
- PDF Viewer Modal - In-browser document viewing for project reports
- GitHub Integration - Direct links to project repositories
- Professional Animations - Smooth transitions and hover effects
- Accessibility Features - Keyboard navigation and screen reader support
portfolio-website/
βββ index.html # Main HTML file (single page application)
βββ css/
β βββ style.css # All styling and responsive design
βββ js/
β βββ script.js # Interactive functionality and animations
βββ images/ # Assets folder
β βββ mee.png # Profile picture
β βββ *.pdf # Project reports and documents
β βββ *.png # Publication and project images
βββ README.md # This file
-
Clone the repository
git clone [your-repo-url] cd portfolio-website -
Open in browser
- Simply open
index.htmlin your web browser - Or use a local server for development:
# Using Python python -m http.server 8000 # Using Node.js npx serve
- Simply open
-
Access the site
- Navigate to
http://localhost:8000(if using local server) - Or open
index.htmldirectly in your browser
- Navigate to
- Profile header with photo and GitHub showcase
- Project grid featuring:
- Global Wheat Yield Prediction (Final Project)
- High Performance Computing Project
- Miniproject: Bacterial Growth Analysis
- Statistical Analysis Projects
- GIS & Bioinformatics Work
- Undergraduate Research
- Personal background and career objectives
- Contact information and social links
- Professional summary
- Expandable job cards with detailed responsibilities:
- Risk Analyst (Current) - Animal and Plant Health Agency
- Scientific Assistant (Previous) - Laboratory role
- Click on job titles to expand and see detailed information
- Expandable institution cards:
- Imperial College London - MSc modules and coursework
- University of Exeter - BSc degree components
- Professional certifications section
- Conference presentations
- Research contributions
- Professional publications with visual previews
- HTML5 - Semantic markup and structure
- CSS3 - Modern styling with:
- CSS Grid and Flexbox for layouts
- CSS Variables for consistent theming
- CSS Animations and transitions
- Media queries for responsive design
- Vanilla JavaScript - Interactive functionality including:
- Single page application navigation
- Expandable content cards
- PDF modal viewer
- Smooth scroll animations
- Keyboard accessibility
- Font Awesome - Icons for social media and UI elements
- Add project card to the projects grid in
index.html:
<div class="project-card" data-pdf="images/your-project.pdf" data-github="https://github.com/your-repo">
<div class="project-info">
<h3 class="project-title">Your Project Title</h3>
<p class="project-summary">Project description...</p>
<div class="project-details">
<span class="project-category">Project Type</span>
<span class="project-year">2025</span>
</div>
<div class="project-actions">
<button class="action-button pdf-button">View Report</button>
<button class="action-button github-button">View Code</button>
</div>
</div>
</div>- Add PDF file to the
images/folder - Update GitHub URL in the
data-githubattribute
- Add work card to the work experience section:
<div class="work-card institution-card" data-institution="your-role">
<div class="institution-header">
<div class="institution-info">
<h3 class="training-name">Job Title</h3>
<p class="institution-description">Department/Team</p>
<div class="work-details">
<span class="company-name">Company Name</span>
<span class="work-location">Location</span>
</div>
<div class="training-info">
<span class="training-date">Start β End Date</span>
<span class="training-provider">Role Type</span>
</div>
</div>
<div class="expand-icon">
<i class="fas fa-chevron-down"></i>
</div>
</div>
<div class="modules-content" style="display: none;">
<!-- Add module-item divs for job responsibilities -->
</div>
</div>All colors are defined as CSS variables in :root at the top of style.css:
:root {
--primary-color: #333; /* Main brand color */
--background-main: #f7f7f7; /* Page background */
--text-primary: #222; /* Main text color */
/* ... more variables */
}Change these variables to update the entire site's color scheme.
- Add navigation link in the nav section
- Create new page content div with
page-contentclass - Update JavaScript navigation arrays to include the new page
- Desktop: 1024px and above
- Tablet: 768px - 1024px
- Mobile: Below 768px
- Small Mobile: Below 480px
- Use browser developer tools for responsive testing
- Check console for any JavaScript errors
- Test keyboard navigation (Tab, Enter, Escape keys)
- Optimize images before adding to
images/folder - Keep PDF file sizes reasonable for web viewing
- Test loading times on slower connections
- Tested on modern browsers (Chrome, Firefox, Safari, Edge)
- Uses modern CSS features (Grid, Flexbox, CSS Variables)
- Includes fallbacks for older browser support
Sebastian Dohne
- Email: sebdohne@gmail.com
- GitHub: github.com/airbreather2
- LinkedIn: Sebastian Dohne
This project is personal portfolio website. Feel free to use the code structure and styling as inspiration for your own portfolio, but please don't copy the content directly.
Last Updated: May 2025
Version: 1.0.0