Seos is a website template for SEO agencies and digital marketing teams, built on Bootstrap 5. It is responsive and mobile-ready, with a sticky menu, a back to top button, a pink and violet colour scheme, and a layout of large headings, flat illustrations and soft cards. There are seven pages: home, about, services, blog, blog details, contact and an elements page.
The home page has a hero, three services, a how-we-work section, four benefits, three pricing plans, four case study tiles, a testimonial, three tips and tricks cards and a call to action. The about and services pages reuse these sections. You will also find a blog with a search box, categories, recent posts, tags and a newsletter form, a blog post with an author box, comments and a comment form, and a contact page with a working contact form and a map that loads on click. Seos gives you a ready-made site for an SEO or online marketing business.
What’s new in 3.0
Bootstrap 5.3.8 (the earlier release used Bootstrap 4.1.3 and jQuery), compiled from Sass together with the theme and the Bootstrap 4 proportions the design was drawn with, and plain JavaScript with no jQuery. A small built-in module replaces the slider, menu and animation plugins, PhotoSwipe replaces Magnific Popup on the gallery, and the unused plugins are gone. npm run build (Dart Sass and esbuild) compiles one minified stylesheet and one script.
Lighter pages: all eight pages together went from 15.25 MB and 440 requests to 3.84 MB and 186 requests, and the home page from 2.53 MB and 66 requests to 0.68 MB and 32 requests. Every photo has an AVIF version with the JPEG as the fallback, real dimensions and lazy loading, and the full-page preloader is gone.
No third-party requests: Poppins is self-hosted, the icon fonts are replaced by Lucide SVG icons and a small social-logo subset, and the contact page map is an OpenStreetMap map (no API key needed) that loads only when a visitor clicks “Show map”. A Google Analytics 4 snippet stays commented out until you add your own ID.
Working forms: the contact form, the blog comment form and the newsletter form send through PHP handlers with a spam trap and clear success and error messages, and the blog search filters the posts.
Accessibility: a skip link, one h1 per page, labelled form fields, visible keyboard focus, a menu that works from the keyboard and text colours at WCAG AA contrast (the brand pink is a little deeper so white labels stay readable).
Fixes and copy: links that went nowhere now open real pages, the SEO agency copy replaces placeholder text on the blog, blog post and elements pages, the contact details are fictional, the demo photos are new, and people are shown with initials. The old documentation folder is replaced by a guide generated from the README.