Personal website of M. Barış Akıntı — AI Systems student, showcasing projects, blog posts, and experience. Fully static (HTML5, CSS3, vanilla JS), hosted on GitHub Pages, served at www.barishizm.eu.
- No build step, no framework, no dependencies — plain HTML/CSS/JS served as-is.
- Self-hosted fonts (Anton, Archivo) and icons in assets/; no third-party requests except analytics.
- GoatCounter for privacy-friendly analytics (js/goatcounter.js).
- FormSubmit /
mailto:fallback for the contact form. - Strict per-page
Content-Security-Policymeta tag (default-src 'self').
index.html, about.html, projects.html, top-level pages.
blog.html, experience.html, contact.html,
privacy.html, 404.html, thanks.html
posts/ blog posts + template.html for new ones.
css/main.css shared layout, components, EN/TR rules.
css/pages.css per-page styles.
js/main.js nav, language toggle, contact form
js/lang-init.js restores saved language before paint
js/goatcounter.js analytics snippet
assets/fonts, assets/icons, assets/images static assets
assets/cv.pdf downloadable CV
CNAME, robots.txt, sitemap.xml, llms.txt hosting / SEO / crawler metadata
English and Turkish content live side by side in the same HTML, tagged with lang="en" / lang="tr". CSS hides the inactive language (css/main.css:506):
html[lang="en"] [lang="tr"]{ display: none !important; }
html[lang="tr"] [lang="en"]{ display: none !important; }Clicking .lang-toggle flips <html lang> and persists the choice to localStorage (js/main.js); js/lang-init.js reapplies it synchronously in <head> on every subsequent load to avoid a flash of the wrong language.
- Copy posts/template.html to
posts/your-slug.html. - Fill in the
TODOfields:<title>, meta description, date, article title, and the EN/TR body blocks. - Add a new
<li class="post-item">entry at the top of the list in blog.html. - Add a matching
<url>entry to sitemap.xml. - Uncomment and fill in the SEO block (
canonical, Open Graph, JSON-LD) in the post's<head>.
No build tooling required — serve the directory root and open it in a browser:
python3 -m http.server 8000
# or
npx serve .Static hosting via GitHub Pages, custom domain pinned by CNAME. Pushing to main publishes automatically.