Tignex

Standards

Project site standards

The pages and components every project site published under Tignex is expected to share — what each one holds and how it is structured.

Updated:

This standard is a layer on top of the Centvix site standard. A Tignex project follows the Centvix standard first, and this page on top of it. Whatever this page does not cover is taken directly from the Centvix standard. Where the two disagree on the same point, this page applies.

Projects under Tignex keep their own names, identities and domains. What they share is a small set of conventions, written down here so that a visitor moving from one project site to another finds the same things in the same places — the legal pages, the way back to the organization, the facts about who publishes what.

This guide defines structure, not appearance. It says which pages exist and what a component contains and in what order; colour, typography and visual design stay with each project. It grows one component at a time: when a second project site needs the same piece, the piece is described here.

Required pages

Every project site carries these five pages, in every language it is published in. The slugs are recommendations; a site that already uses different addresses keeps them rather than breaking links.

Page Slug (EN · TR) Purpose Minimum sections
About /about/ · /tr/hakkinda/ Says what the project is, the problem it solves and who stands behind it. What it is · The problem it solves · Status and maturity · Licence and source code · Ends with: About Tignex, then About the founder
Privacy Policy /privacy-policy/ · /tr/gizlilik-politikasi/ States what personal data the site and the project collect, and what happens to it. Data collected · Why it is collected · Third parties and processors · Retention · Your rights and how to exercise them · Last updated
Cookie Policy /cookie-policy/ · /tr/cerez-politikasi/ Lists the cookies and similar storage the site uses, or says plainly that there are none. Whether cookies are used · Each cookie: name, purpose, duration · Third-party cookies · How to refuse or withdraw consent
Terms of Use /terms-of-use/ · /tr/kullanim-kosullari/ Sets the conditions for using the site, separating the site’s content from the software’s own licence. Scope · Site content versus software licence · Acceptable use · No warranty and limitation of liability · Changes and effective date
Contact /contact/ · /tr/iletisim/ Gives a working way to reach the people behind the project. Email address · Where to report bugs (issue tracker) · How to report a security vulnerability

Three rules hold for all of them:

  • Reachability. The three legal pages — Terms of Use, Privacy Policy and Cookie Policy — are linked from the footer’s copyright row. About and Contact are linked from the footer menu.
  • The About page ends the same way everywhere. After its own content, every About page closes with two fixed blocks, in this order: About Tignex, then About the founder. Their structure is under About page ending, their text under Canonical texts.
  • No page is skipped for being empty. A site that sets no cookies still publishes a Cookie Policy, and it says “we do not use cookies”. A missing page reads as an unanswered question; a short page answers it.

Components

A component is a repeated piece of a project site with a fixed structure. Each entry below says which slots it has, what goes in each, how it behaves across screen widths and what accessibility requires of it. The visual treatment of every slot is the project’s own.

The footer is where a visitor looks for the legal pages and for who is behind a project, so it is the first component every project site shares.

Grid. Twelve columns, split 6 – 2 – 4 on wide screens:

  • Project — 6 columns. The project logo, and under it a four-to-five sentence introduction to the product or project.
  • Menu — 2 columns. The site’s general menu. It includes About and Contact at minimum.
  • About Tignex — 4 columns. The canonical Tignex text and a link to tignex.com. It is the same text the About page ends with, and it is not rewritten per project.

Copyright row. Under the columns: on the left, Copyright © <YEAR> Tignex, where “Tignex” links to https://tignex.com and <YEAR> is the current year, written when the page is built or rendered rather than typed by hand. On the right, the legal links: Terms of Use, Privacy Policy, Cookie Policy.

The copyright line always names the umbrella brand, Tignex — never the project. A project’s own name appears in its logo and its introduction, not in the copyright line.

Responsive behaviour. The breakpoints follow the common md and lg steps:

Width Columns Copyright row
Below 768px One column, stacked in order: Project → Menu → About Tignex Stacked: copyright first, legal links under it
768px – 1023px Project spans the full row; Menu (4) and About Tignex (8) share the next One row: copyright left, legal links right
1024px and wider 6 – 2 – 4 One row: copyright left, legal links right

The source order is always Project, Menu, About Tignex, so the stacked layout and the reading order of assistive technology match the wide one.

Accessibility.

  • The whole block is a single <footer> landmark.
  • Every group of links is its own <nav> with an aria-label that names it — the site menu and the legal links are two navigation regions, not one.
  • External links — tignex.com, and any link leaving the project’s domain — are distinguishable both visually (an icon or a marker) and in text for screen readers. If a link opens a new tab, it says so.
  • The logo’s alt text is the project name.

The skeleton below is semantic structure only. Class names, the grid implementation and every style decision belong to the project.

<footer>
  <!-- 12-column grid: stacked below md, 12 + 4/8 at md, 6 / 2 / 4 from lg -->
  <div>
    <!-- Project — 6 columns -->
    <div>
      <a href="/">
        <img src="/logo.svg" alt="Project name" width="160" height="40" />
      </a>
      <p><!-- A 4–5 sentence introduction to the project --></p>
    </div>

    <!-- Menu — 2 columns -->
    <nav aria-label="Site">
      <ul>
        <li><a href="/about/">About</a></li>
        <li><a href="/contact/">Contact</a></li>
        <!-- The rest of the site menu -->
      </ul>
    </nav>

    <!-- About Tignex — 4 columns -->
    <div>
      <p><!-- Canonical Tignex text, in the page language --></p>
      <a href="https://tignex.com">
        tignex.com <span aria-hidden="true">↗</span>
        <span class="visually-hidden">(external site)</span>
      </a>
    </div>
  </div>

  <!-- Copyright row: copyright left, legal links right -->
  <div>
    <p>
      Copyright © 2026
      <a href="https://tignex.com">
        Tignex <span aria-hidden="true">↗</span>
        <span class="visually-hidden">(external site)</span>
      </a>
    </p>
    <!-- 2026: the current year, written at build or render time -->
    <nav aria-label="Legal">
      <ul>
        <li><a href="/terms-of-use/">Terms of Use</a></li>
        <li><a href="/privacy-policy/">Privacy Policy</a></li>
        <li><a href="/cookie-policy/">Cookie Policy</a></li>
      </ul>
    </nav>
  </div>
</footer>

About page ending

Every project site’s About page ends with the same two blocks, after whatever the page itself has to say. They tell a visitor who publishes the project and who is behind the publisher — the same answer on every project site.

…the About page’s own content

  1. About Tignex

    Canonical Tignex text, 3–4 sentences, identical on every project

  2. About the founder

    Fixed text about Muhammet Şafak, 3–4 sentences

About page ending wireframe: after the page’s own content, two fixed blocks in this order — each a text with its link on a separate line.
  1. About Tignex. The canonical Tignex text, three sentences, verbatim. Under it, on a line of its own, a link to https://tignex.com.
  2. About the founder. The canonical founder text, four sentences about Muhammet Şafak, verbatim. Under it, on a line of its own, a link to https://muhammetsafak.com.

Both are fixed texts: a project does not shorten, extend or reword them. Each block is a <section> with its own <h2>, so the two show up in the page’s outline and in its table of contents.

About page ending markup

<!-- …the About page's own content ends here -->

<section aria-labelledby="about-tignex">
  <h2 id="about-tignex">About Tignex</h2>
  <p><!-- Canonical Tignex text, in the page language --></p>
  <p>
    <a href="https://tignex.com">
      tignex.com <span aria-hidden="true">↗</span>
      <span class="visually-hidden">(external site)</span>
    </a>
  </p>
</section>

<section aria-labelledby="about-founder">
  <h2 id="about-founder">About the founder</h2>
  <p><!-- Canonical founder text, in the page language --></p>
  <p>
    <a href="https://muhammetsafak.com">
      muhammetsafak.com <span aria-hidden="true">↗</span>
      <span class="visually-hidden">(external site)</span>
    </a>
  </p>
</section>

Canonical texts

These texts are used verbatim, in the language of the page. The Tignex text is shared by the footer’s About Tignex column and the About page’s closing block, so the two never drift apart.

Tignex

English. Tignex is an independent open-source engineering organization that builds tools, infrastructure, protocols and standards for developers and software teams. Its aim is software that gives developers more control, takes interoperability seriously, avoids unnecessary vendor lock-in and can be self-hosted. Projects published under Tignex keep their own names, identities and domains; Tignex is the engineering organization they share.

Türkçe. Tignex, geliştiriciler ve yazılım ekipleri için araçlar, altyapı, protokoller ve standartlar geliştiren bağımsız bir açık kaynak mühendislik organizasyonudur. Amacı, geliştiriciye daha fazla kontrol veren, birlikte çalışabilirliği ciddiye alan, gereksiz vendor lock-in yaratmayan ve kendi sunucunuzda çalıştırılabilen yazılım üretmektir. Tignex altında yayımlanan projeler kendi adlarını, kimliklerini ve alan adlarını korur; Tignex, bu projelerin ortak mühendislik organizasyonudur.

Founder

English. Muhammet Şafak is the founder of Tignex — a software engineer, system architect and engineering researcher who has been building software since 2008. Today he works on the architecture, scalability and reliability of high-traffic distributed systems. He publishes independent research that examines system behaviour through reproducible measurements, and chooses technology by the problem rather than the language. In the rest of his time he builds open-source tools and infrastructure software under Tignex.

Türkçe. Muhammet Şafak, Tignex’in kurucusu; 2008’den bu yana yazılım geliştiren bir yazılım mühendisi, sistem mimarı ve mühendislik araştırmacısıdır. Bugün yüksek trafikli dağıtık sistemlerin mimarisi, ölçeklenebilirliği ve güvenilirliği üzerinde çalışıyor. Sistem davranışını tekrarlanabilir ölçümlerle inceleyen bağımsız araştırmalar yayımlıyor ve teknolojiyi dile değil probleme göre seçiyor. Kalan zamanında Tignex çatısı altında açık kaynak araçlar ve altyapı yazılımları geliştiriyor.

Arrow keys to move, Enter to open.