A modern, bold academic website with Computer Modern Sans Serif typography and a professional Navy Blue & Light Blue color scheme. Features multilingual support for English, Chinese (δΈζ), and Japanese (ζ₯ζ¬θͺ).
- Typography: Computer Modern Sans Serif (LaTeX-style professional fonts)
- Color Scheme:
- Main: Navy Blue (#0A2158)
- Sub: Light Blue (#B9D9EB)
- Style: Bold, modern, clean academic aesthetic
- Animations: Smooth fade-ins, hover effects, and micro-interactions
- Responsive: Perfect on desktop, tablet, and mobile
- Three Languages: English, Chinese (δΈζ), Japanese (ζ₯ζ¬θͺ)
- Live Switching: Toggle languages without page reload
- Persistent: Language choice saved across sessions
- Home Page: Fully translated in all three languages
| Element | Font | Usage |
|---|---|---|
| All Text | Computer Modern Sans Serif | Body, headings, navigation, UI |
| Code (optional) | Computer Modern Typewriter | Code snippets if needed |
| Math (optional) | Computer Modern Math via MathJax | Mathematical equations |
Why Computer Modern?
- The same fonts used in LaTeX scientific papers
- Professional academic credibility
- Excellent screen readability
- Clean, modern sans-serif aesthetic
--primary-color: #0A2158 /* Navy Blue - Main color */
--secondary-color: #B9D9EB /* Light Blue - Accent */
--accent-color: #3a7bc8 /* Medium Blue - Links */
--text-color: #1a1a1a /* Dark text */
--bg-color: #ffffff /* White background */academic-website-final/
βββ index.html # Home page (fully multilingual)
βββ research.html # Research projects and publications
βββ blogs.html # Technical blog posts
βββ opinions.html # Opinion pieces
βββ cv.html # Curriculum Vitae
βββ style.css # Main stylesheet (Navy/Light Blue theme)
βββ script.js # Language switching system
βββ lang-home.js # Home page language handler
βββ README.md # This file
- Go to github.com and sign in
- Click + (top right) β New repository
- Repository name:
your-username.github.io- Replace
your-usernamewith your actual GitHub username - Example:
dorian-cmu.github.io
- Replace
- Description: "My academic website"
- Keep it Public
- β Check "Add a README file"
- Click Create repository
Method A: Via GitHub Website (Easiest)
- In your repository, click Add file β Upload files
- Drag and drop ALL files:
- index.html
- research.html
- blogs.html
- opinions.html
- cv.html
- style.css
- script.js
- lang-home.js
- README.md (this will replace the default one)
- Scroll down and click Commit changes
Method B: Via Git Command Line
# Navigate to your downloaded files folder
cd /path/to/academic-website-final
# Initialize Git
git init
# Add all files
git add .
# Commit
git commit -m "Initial commit: Academic website with CM Sans Serif fonts"
# Connect to GitHub (replace YOUR-USERNAME)
git remote add origin https://github.com/YOUR-USERNAME/YOUR-USERNAME.github.io.git
# Push to GitHub
git branch -M main
git push -u origin main- In your repository, go to Settings (top menu)
- Scroll down left sidebar β click Pages
- Under "Source":
- Branch: main
- Folder: / (root)
- Click Save
- β Wait 2-5 minutes
- Your site will be live at:
https://your-username.github.io
- Prepare your image:
- File name:
profile.jpgorprofile.png - Recommended size: 400Γ400 pixels minimum
- File name:
- Upload to repository root (same folder as index.html)
- The image will automatically appear on your home page!
- Go to your repository on GitHub.com
- Navigate to the file you want to edit (e.g., click on
cv.html) - Click the pencil icon (βοΈ Edit this file) in the top-right corner
- Make your changes in the editor
- Scroll down to "Commit changes"
- Add a commit message (e.g., "Update CV with new publication")
- Click "Commit changes"
- Wait 1-2 minutes for GitHub Pages to rebuild
- Refresh your website to see the changes
- Edit the file on your computer
- Go to your repository on GitHub
- Click on the file you want to replace
- Click the trash icon (ποΈ) to delete the old version
- Commit the deletion
- Click "Add file" β Upload files
- Upload your edited file
- Commit changes
If you have Git installed:
# Make changes to files on your computer
# Then:
git add . # Stage all changes
git commit -m "Update CV section" # Commit with message
git push # Push to GitHub- Small changes: Use Method 1 (edit directly on GitHub)
- Multiple files: Use Method 2 or 3
- Regular updates: Learn Method 3 for efficiency
- Changes take effect: Usually within 1-2 minutes
-
Home Page (
index.html):- Replace "Dorian" with your name
- Update research description
- Add your email address
- Update contact information
-
Research Page (
research.html):- Add your actual research projects
- Update descriptions and dates
- Add publications and links
-
Blogs & Opinions (
blogs.html,opinions.html):- Replace placeholder posts with your content
- Create individual post HTML files as needed
-
CV Page (
cv.html):- Fill in education, experience, publications
- Upload your PDF CV and link it
Edit style.css lines 9-16:
:root {
--primary-color: #0A2158; /* Change navy blue */
--secondary-color: #B9D9EB; /* Change light blue */
--accent-color: #3a7bc8; /* Change link color */
--text-color: #1a1a1a; /* Change text color */
}Popular Academic Color Schemes:
- Classic: Navy (#003366) + Gold (#FFD700)
- Forest: Dark Green (#1e6e3a) + Light Green (#a8d5ba)
- Crimson: Deep Red (#9b2226) + Cream (#f0e5d8)
- Current: Navy Blue (#0A2158) + Light Blue (#B9D9EB) β
The website currently uses Computer Modern Sans Serif for everything.
To use different fonts:
- Find fonts on Google Fonts
- Update
@importline instyle.css(line 21) - Update
--font-mainvariable (line 18)
Example:
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap');
:root {
--font-main: 'Inter', 'Helvetica Neue', Arial, sans-serif;
}If you need to display math equations like LaTeX:
- Add MathJax to
<head>of your HTML pages:
<script>
window.MathJax = {
tex: {
inlineMath: [['\\(', '\\)']],
displayMath: [['$$', '$$']]
}
};
</script>
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js" async></script>- Use in your content:
<p>Inline equation: \(E = mc^2\)</p>
<p>Display equation:</p>
$$\Delta w_i \propto (y - \theta_y)(x_i - \theta_x)$$- User clicks language button (EN/δΈζ/ζ₯ζ¬θͺ)
- Choice is saved to browser's
localStorage - Content updates immediately
- Preference persists across pages and visits
The home page is fully translated. To add translations to other pages:
- Add data attributes to HTML elements:
<h2 class="lang-content"
data-lang-en="Research"
data-lang-zh="η η©Ά"
data-lang-ja="η η©Ά">
Research
</h2>- Create page-specific language file (
lang-pagename.js):
window.addEventListener('languageChanged', function(e) {
const lang = e.detail.language;
document.querySelectorAll('.lang-content').forEach(element => {
const content = element.getAttribute(`data-lang-${lang}`);
if (content) {
element.innerHTML = content;
}
});
});- Include in HTML:
<script src="script.js"></script>
<script src="lang-pagename.js"></script>To add Korean, Spanish, etc.:
- Add button to language switcher:
<button class="lang-btn" data-lang="ko">νκ΅μ΄</button>- Add translations to content:
data-lang-ko="νκ΅μ΄ ν
μ€νΈ"- Update navigation in
script.jstranslationsobject
- Buy domain (Namecheap, Google Domains, etc.)
- Add
CNAMEfile to repository root:yourdomain.com - Configure DNS (A records or CNAME):
Type: A Host: @ Value: 185.199.108.153 (GitHub Pages IP) - Full GitHub guide
Add before </head> in all HTML files:
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>- Create new file:
blog-post-slug.html - Copy structure from
blogs.html - Add your content
- Update link in
blogs.htmllist
Template:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Post Title - Your Name</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="language-switcher">
<button class="lang-btn active" data-lang="en">EN</button>
<button class="lang-btn" data-lang="zh">δΈζ</button>
<button class="lang-btn" data-lang="ja">ζ₯ζ¬θͺ</button>
</div>
<nav><!-- Copy from other pages --></nav>
<div class="container">
<h1>Your Blog Post Title</h1>
<p class="post-date">March 2026</p>
<section>
<p>Your content here...</p>
</section>
</div>
<footer><!-- Copy from other pages --></footer>
<script src="script.js"></script>
</body>
</html>The website automatically adapts to all screen sizes:
- Desktop (>768px): Full layout with side-by-side elements
- Tablet (768px): Adjusted spacing and layout
- Mobile (<768px): Stacked single-column layout
CV page is optimized for printing:
- Command/Ctrl + P to print
- Navigation and language switcher hidden
- Clean black & white layout
- Proper page breaks
File to edit: cv.html
- Find the "Publications" section
- Copy an existing publication
<div class="cv-item">block - Paste it and update with your new publication details
- Save and commit
File to edit: research.html or cv.html
- Navigate to the Research Interests or Research Experience section
- Click edit (βοΈ)
- Modify the text inside
<p>tags - Save and commit
Files to edit:
- Create new file:
blog-post-title.html(copy structure fromblogs.html) - Edit:
blogs.htmlto add link to your new post
File to edit: style.css
- Find the
:rootsection (lines 9-16) - Change color hex codes:
--primary-color: #0A2158; /* Your navy blue */ --secondary-color: #B9D9EB; /* Your light blue */
- Save and commit
File to edit: index.html and cv.html
- Search for your email address
- Replace with new information
- Update in both files for consistency
- Always backup: Download a copy before making major changes
- Test locally: If possible, open HTML files in browser before uploading
- Check syntax: Missing
<>or"can break the page - Consistent style: Keep formatting consistent with existing content
- Commit messages: Use descriptive messages like "Add ICLR 2025 paper" not "update"
Site not appearing?
- Wait 5-10 minutes after enabling Pages
- Check Settings β Pages for deployment status
- Verify repository is public
Fonts not loading?
- Requires internet connection (fonts loaded from CDN)
- Fallback fonts will load if CDN unavailable
Colors look wrong?
- Clear browser cache (Ctrl/Cmd + Shift + R)
- Verify
style.csswas uploaded correctly
Language switcher not working?
- Check browser console (F12) for errors
- Ensure
script.jsandlang-home.jsare loaded - Verify JavaScript is enabled
Profile image not showing?
- Check file name is exactly
profile.jpgorprofile.png - Verify image is in repository root folder
- File names are case-sensitive on GitHub
- GitHub Pages: docs.github.com/pages
- Computer Modern Fonts: github.com/dreampulse/computer-modern-web-font
- MathJax Documentation: docs.mathjax.org
- HTML/CSS Guide: developer.mozilla.org
Free to use and modify for your academic website. Attribution appreciated but not required.
Created: March 2026
Version: Final - Computer Modern Sans Serif with Navy Blue & Light Blue theme
Font: Computer Modern Sans Serif (LaTeX-style)
Colors: Navy Blue (#0A2158) + Light Blue (#B9D9EB)
Languages: English, δΈζ, ζ₯ζ¬θͺ