HTMLPortfolio

WebsiteConstructor — HTML Portfolio Template

By Th3ryks

A pure HTML/CSS/JavaScript static personal portfolio template where all content is configured by editing a single config.json file, with no frameworks or build tools required.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-03View source

What stands out

A quick read of the recorded project description.

01

Content is configured in a single config.json, covering site information, social links, tech stack, projects, and a snowflake animation toggle

02

Implemented purely in HTML, CSS, and JavaScript, with no frameworks and no build tools

03

Social links support an enabled toggle to hide icons as needed

04

Project cards support image icons, descriptions, and primary/secondary styled link buttons

05

Can be opened directly in a browser via index.html or deployed to any static host

Template Details

WebsiteConstructor is a static personal portfolio page template that uses only HTML, CSS, and JavaScript, with no framework dependencies and no build step. Its core approach is to centralize page content in a single config.json file: site information (username, hero title and description, browser tab title, footer text), social links, tech stack icons and names, project cards, and a snowflake animation toggle are all configured there. The page itself reads that JSON and renders an interface with scroll and hover animations.

To use it, clone the repository locally and open index.html directly in a browser, or host it with any static file server (the README mentions GitHub Pages, Netlify, Vercel, or python -m http.server). The repository also provides config.example.json as a structural reference; copy it to config.json and replace it with your own data.

Limitations to note: the id of each social link must match the data-social-id of the corresponding link in index.html (telegram, github, email, ton), otherwise it will not bind correctly; tech stack icons must be supplied as complete SVG markup in the iconSvg field; project icons use image paths and provide alt text via iconAlt. The bottom of the page always renders the text “Made by Th3ryks”, where Th3ryks is an external link to the author’s site that opens in a new tab. The template has no backend, so there is no server-side data or form handling.

HTMLPortfolio

Is it right for your project?

Use Cases

  • Build a personal portfolio page to showcase your tech stack and project list
  • Create a static homepage for a developer or freelancer that can be updated quickly
  • Deploy a personal introduction page on static hosts such as GitHub Pages, Netlify, or Vercel

Suitable For

  • Individual developers who want to update portfolio content by editing only one JSON file
  • Users who do not need a backend and prefer a purely static page
  • People who want to start quickly with an existing HTML/CSS/JS template and adjust the styles themselves

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    After cloning the repository, you can open index.html directly or host the directory with any static file server

  2. 2

    Refer to the structure of config.example.json, copy it to config.json, and replace it with your own data

  3. 3

    The id of each social link must match the data-social-id of the corresponding element in index.html (telegram, github, email, ton)

  4. 4

    The tech stack iconSvg must contain complete SVG markup, and project icons must provide an image path and iconAlt

  5. 5

    The “Made by Th3ryks” text at the bottom of the page is a fixed external link to the author’s site that opens in a new tab

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version of the public repository under the MIT license; the free scope is the code of that version and does not mean external services or third-party assets are free.

Must comply with when using

  • You may use, modify, commercialize, and distribute the code of this version for free.
  • When distributing copies or substantial portions of the code, retain the original author’s copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The bottom of the page always renders the “Made by Th3ryks” attribution, where Th3ryks is an external link to the author’s site https://th3ryks.dev/ that opens in a new tab. This attribution and link are fixed output of the template and cannot be removed or replaced via config.json.
  • The id of each social link must match the data-social-id of the corresponding element in index.html, and only four values are supported: telegram, github, email, ton. If they do not match, binding will fail; adding other social platforms requires modifying the HTML yourself.
  • Tech stack icons must be supplied as complete SVG markup in the iconSvg field, and that markup is injected directly into the page grid; image paths or other icon formats are not supported.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code’s MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

At the bottom of the page you will see **Made by [Th3ryks](https://th3ryks.dev/)** — the name is clickable and opens the website in a new tab.

Original README

`id` — must match `data-social-id` of the link in `index.html` (`telegram`, `github`, `email`, `ton`).

Original README

`iconSvg` — full SVG markup that will be injected into the grid.

Original README
https://github.com/Th3ryks/WebsiteConstructor/blob/main/LICENSEhttps://github.com/Th3ryks/WebsiteConstructor/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-03. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 80 / 100
Technologies
HTML
Website type
Portfolio
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2025-12-28
Screenshot last checked
2026-10-03

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies HTML as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-04

Inspect the recorded source material

SHA-256: ab4e419f1385dbf188d80d1c7c49158e2690e65e71001c8ad95bd621c0724d4b

2026-10-03T19:54:34.512Z

Source file / repository
# Website Constructor 🚀

Website Constructor is a small static site template that lets you build a personal portfolio just by editing a single JSON configuration file. No frameworks, no build tools — only HTML, CSS, and JavaScript.

At the bottom of the page you will see **Made by [Th3ryks](https://th3ryks.dev/)** — the name is clickable and opens the website in a new tab. ✨

## Features ✨

- Single JSON configuration for:
  - Hero name and description
  - Social links (with enable/disable flag)
  - Technologies stack (icons and names)
  - Projects (icons, descriptions, buttons)
  - Snowflake effect toggle
- Zero backend, works on any static hosting
- Clean, animated UI with smooth scrolling

## Getting started 🧩

```bash
git clone https://github.com/Th3ryks/WebsiteConstructor.git
cd WebsiteConstructor
```

Open `index.html` in your browser or serve the folder with any static file server (for example, GitHub Pages, Netlify, Vercel, or a simple `python -m http.server`).

## Configuration 🛠

All customization happens in `config.json`. For reference, you can also check `config.example.json`, which contains a fictional example configuration.

### Site block

```json
{
  "site": {
    "username": "Th3ryks",
    "heroName": "Th3ryks",
    "heroDescription": "A guy from Ukraine passionate about Python and web development",
    "title": "Th3ryks | Portfolio",
    "footerText": "© 2025-2026, {username} (@{username})"
  }
}
```

- `username` — used in the logo and footer.
- `heroName` — name in the hero title (“Hey, I’m ...”).
- `heroDescription` — text under the title.
- `title` — `<title>` in the browser tab.
- `footerText` — footer text; `{username}` is replaced with the value of `username`.

At the very bottom of the page, the text **Made by Th3ryks** is rendered; the word `Th3ryks` is a link to `https://th3ryks.dev/` and always opens in a new tab.

### Snowflakes ❄️

```json
"snowflakes": true
```

- `true` — animated snowflakes are enabled.
- `false` — snowflakes are completely disabled.

### Social links 🔗

```json
"socialLinks": [
  {
    "id": "telegram",
    "enabled": true,
    "url": "https://t.me/Th3ryks"
  },
  {
    "id": "github",
    "enabled": true,
    "url": "https://github.com/Th3ryks"
  },
  {
    "id": "email",
    "enabled": true,
    "url": "mailto:[email protected]"
  },
  {
    "id": "ton",
    "enabled": true,
    "url": "ton://transfer/th3ryks-dev.ton"
  }
]
```

- `id` — must match `data-social-id` of the link in `index.html` (`telegram`, `github`, `email`, `ton`).
- `enabled` — if `false`, the icon is hidden from the navigation bar.
- `url` — target URL that will be used for the link.

### Technologies (languages / tools) 💻

```json
"languages": [
  {
    "name": "Python",
    "iconSvg": "<svg ...>...</svg>"
  }
]
```

- `name` — technology name shown in the tooltip.
- `iconSvg` — full SVG markup that will be injected into the grid.

Each language is rendered as a grid item with hover/click tooltips and animations. To add or remove a technology, simply edit the `languages` array.

### Projects 📦

```json
"projects": [
  {
    "title": "TGS Viewer",
    "icon": "images/tgs.png",
    "iconAlt": "TGS Viewer",
    "description": "Single-page web app to drag & drop .tgs or .json Lottie files and play them instantly.",
    "links": [
      {
        "label": "GitHub",
        "url": "https://github.com/Th3ryks/TGSViewer",
        "style": "secondary"
      },
      {
        "label": "WebSite",
        "url": "https://tgsviewer.th3ryks.dev/",
        "style": "primary"
      }
    ]
  }
]
```

- `title` — project name displayed in the card.
- `icon` — path to the project image.
- `iconAlt` — `alt` text for the image.
- `description` — project description.
- `links` — buttons rendered at the bottom of the card:
  - `label` — button text.
  - `url` — button link (`target="_blank"`).
  - `style` — `"primary"` or `"secondary"` controls button style.

To add a new project, just append another object to the `projects` array.

## Example configuration 📄

- `config.json` — your real configuration used by the website.
- `config.example.json` — example configuration with fictional data to show the structure.

You can copy `config.example.json` to `config.json` and adapt it to your own data if you start from scratch.

## License 📜

This project is licensed under the MIT License. See the `LICENSE` file for details.

---

Made by [Th3ryks](https://th3ryks.dev/) 💫
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.

simplefolio

simplefolio

Simplefolio is a minimal single-page portfolio template for developers, built with HTML, Bootstrap, SCSS, and Parcel under the MIT license. It includes Hero, About, Projects, Contact, and Footer sections, with content edited in /src/index.html and theme colors controlled by two SCSS variables.

HTML · Portfolio

Freelancer

Freelancer

A bright, single-page Bootstrap portfolio template for freelancers, designers, and small studios. It includes a responsive portfolio grid with modal detail windows and an SB Forms contact form that requires an API token.

HTML · Portfolio

Resume

Resume

A single-page resume and CV template from Start Bootstrap, built on Bootstrap with a fixed sidebar and content sections.

HTML · Portfolio

Creative

Creative

A single-page marketing template by Start Bootstrap for creative agencies and product services, built on Bootstrap with SCSS, featuring a portfolio grid and call-to-action sections. It includes pre-set SB Forms markers for form integration and npm build scripts for source customization.

HTML · Corporate Website

Grayscale

Grayscale

A dark single-page Bootstrap template from Start Bootstrap for photography, events and brand storytelling, with a large hero and clearly separated sections.

HTML · Corporate Website

startbootstrap-stylish-portfolio

startbootstrap-stylish-portfolio

A one-page Bootstrap portfolio theme from Start Bootstrap with multiple content sections and an off-canvas navigation menu. Basic use means editing HTML/CSS under dist and opening index.html; advanced use relies on npm with Pug and SCSS build scripts.

HTML · Portfolio