Skip to content

Add Terms and Conditions page with structured content and templates#87

Merged
BorDevTech merged 6 commits into
MOKSE-48-Footer-Componentfrom
MOKSE-9-Create-and-link-Terms-and-Conditions-page
Mar 27, 2026
Merged

Add Terms and Conditions page with structured content and templates#87
BorDevTech merged 6 commits into
MOKSE-48-Footer-Componentfrom
MOKSE-9-Create-and-link-Terms-and-Conditions-page

Conversation

@BorDevTech
Copy link
Copy Markdown
Contributor

This pull request introduces a new Terms and Conditions page to the application. The page uses the existing page builder templates for consistent layout and includes detailed content outlining the website's rules, user responsibilities, intellectual property, user conduct, liability limitations, and contact information.

New page addition:

  • Added a new Terms and Conditions page at app/(Pages)/terms/page.tsx using the PageBuilder, HeaderTemplate, BodyTemplate, and SectionTemplate components, and provided comprehensive terms and conditions content for users.

-WARN this is a mockup, official terms needed.

-WARN this is a mockup, official terms needed.
Copilot AI review requested due to automatic review settings March 27, 2026 15:31
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new /terms route to present Terms and Conditions content using the existing Page Builder template components.

Changes:

  • Introduces app/(Pages)/terms/page.tsx with a Terms and Conditions page layout.
  • Uses PageBuilder, HeaderTemplate, BodyTemplate, and SectionTemplate to structure the page.
  • Adds structured terms content including conduct, IP, liability, and contact info.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +1 to +7
"use client";
import {
BodyTemplate,
HeaderTemplate,
PageBuilder,
SectionTemplate,
} from "@/components/page-builder/template";
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This page is marked as a client component ("use client"), but it only renders static content and server-compatible templates (other pages like app/(Pages)/services/page.tsx use these templates without "use client"). Consider removing "use client" here to avoid unnecessarily shipping this page’s markup to the client bundle.

Copilot uses AI. Check for mistakes.
Comment thread app/(Pages)/terms/page.tsx Outdated
Comment on lines +12 to +15
<HeaderTemplate
title=" "
description="" imageHeight={"10vh"}
/>
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

HeaderTemplate is rendered with title=" " and no image/imageLabel. This produces an empty <h1> (bad for accessibility/SEO) and results in bgImage being set to url(undefined) and aria-label becoming "undefined Image" (see HeaderTemplate implementation). Prefer omitting HeaderTemplate entirely for this page, or provide a real title plus a valid image and imageLabel.

Copilot uses AI. Check for mistakes.
Comment thread app/(Pages)/terms/page.tsx Outdated
Comment on lines +20 to +72
> </SectionTemplate>
<div className="prose prose-lg">
<h1>Terms and Conditions</h1>
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
responsible for maintaining the confidentiality of your account and
password, and for restricting access to your computer. You agree to
accept responsibility for all activities that occur under your
account or password.
</p>
<h2>2. Intellectual Property</h2>
<p>
All content on our website, including but not limited to text,
graphics, logos, images, and software, is the property of Mokse or
its content suppliers and is protected by international copyright
laws. You may not reproduce, distribute, modify, or create
derivative works from any content on our website without our prior
written consent.
</p>
<h2>3. User Conduct</h2>
<p>
You agree not to use our website for any unlawful purpose or in any
way that could damage, disable, overburden, or impair our servers or
networks. You also agree not to interfere with any other party's use
and enjoyment of our website.
</p>
<h2>4. Limitation of Liability</h2>
<p>
In no event shall Mokse be liable for any direct, indirect,
incidental, special, consequential, or punitive damages arising out
of or in connection with your use of our website or services.
</p>
<h2>5. Changes to Terms</h2>
<p>
We reserve the right to modify these terms and conditions at any
time. Any changes will be effective immediately upon posting on our
website. Your continued use of our website after any changes
constitutes your acceptance of the new terms.
</p>
<h2>6. Contact Us</h2>
<p>
If you have any questions about these terms and conditions, please
contact us at <a href="mailto:info@mokse.org">info@mokse.org</a>.
</p>
</div>
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SectionTemplate requires children, but it’s being used with only a whitespace child (> </SectionTemplate>). This makes the layout harder to reason about and separates the section heading/description from the actual terms content below. Either move the terms content inside SectionTemplate (as its children) or remove SectionTemplate and let the main content control headings/structure.

Suggested change
> </SectionTemplate>
<div className="prose prose-lg">
<h1>Terms and Conditions</h1>
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
responsible for maintaining the confidentiality of your account and
password, and for restricting access to your computer. You agree to
accept responsibility for all activities that occur under your
account or password.
</p>
<h2>2. Intellectual Property</h2>
<p>
All content on our website, including but not limited to text,
graphics, logos, images, and software, is the property of Mokse or
its content suppliers and is protected by international copyright
laws. You may not reproduce, distribute, modify, or create
derivative works from any content on our website without our prior
written consent.
</p>
<h2>3. User Conduct</h2>
<p>
You agree not to use our website for any unlawful purpose or in any
way that could damage, disable, overburden, or impair our servers or
networks. You also agree not to interfere with any other party's use
and enjoyment of our website.
</p>
<h2>4. Limitation of Liability</h2>
<p>
In no event shall Mokse be liable for any direct, indirect,
incidental, special, consequential, or punitive damages arising out
of or in connection with your use of our website or services.
</p>
<h2>5. Changes to Terms</h2>
<p>
We reserve the right to modify these terms and conditions at any
time. Any changes will be effective immediately upon posting on our
website. Your continued use of our website after any changes
constitutes your acceptance of the new terms.
</p>
<h2>6. Contact Us</h2>
<p>
If you have any questions about these terms and conditions, please
contact us at <a href="mailto:info@mokse.org">info@mokse.org</a>.
</p>
</div>
>
<div className="prose prose-lg">
<h1>Terms and Conditions</h1>
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
responsible for maintaining the confidentiality of your account and
password, and for restricting access to your computer. You agree to
accept responsibility for all activities that occur under your
account or password.
</p>
<h2>2. Intellectual Property</h2>
<p>
All content on our website, including but not limited to text,
graphics, logos, images, and software, is the property of Mokse or
its content suppliers and is protected by international copyright
laws. You may not reproduce, distribute, modify, or create
derivative works from any content on our website without our prior
written consent.
</p>
<h2>3. User Conduct</h2>
<p>
You agree not to use our website for any unlawful purpose or in any
way that could damage, disable, overburden, or impair our servers or
networks. You also agree not to interfere with any other party's use
and enjoyment of our website.
</p>
<h2>4. Limitation of Liability</h2>
<p>
In no event shall Mokse be liable for any direct, indirect,
incidental, special, consequential, or punitive damages arising out
of or in connection with your use of our website or services.
</p>
<h2>5. Changes to Terms</h2>
<p>
We reserve the right to modify these terms and conditions at any
time. Any changes will be effective immediately upon posting on our
website. Your continued use of our website after any changes
constitutes your acceptance of the new terms.
</p>
<h2>6. Contact Us</h2>
<p>
If you have any questions about these terms and conditions, please
contact us at <a href="mailto:info@mokse.org">info@mokse.org</a>.
</p>
</div>
</SectionTemplate>

Copilot uses AI. Check for mistakes.
Comment thread app/(Pages)/terms/page.tsx Outdated
title="Terms and Conditions"
description="Read our terms and conditions to understand the rules and guidelines for using our website and services."
> </SectionTemplate>
<div className="prose prose-lg">
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The prose prose-lg classes are from Tailwind Typography, but this repo doesn’t include @tailwindcss/typography (not present in package.json/package-lock.json). As-is, these classes won’t apply any styling. Either add/configure the typography plugin, or replace this with Chakra typography components / existing styled templates so the page renders as intended.

Suggested change
<div className="prose prose-lg">
<div className="text-gray-900 text-base lg:text-lg space-y-4">

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +18 to +32
<SectionTemplate
title="Terms and Conditions"
description="Read our terms and conditions to understand the rules and guidelines for using our website and services."
><div className="prose prose-lg">
<h1>Terms and Conditions</h1>
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The page heading is rendered twice and with an invalid heading order: SectionTemplate already renders the title as an h2, but the children start with an h1 (and then additional h2s). This hurts accessibility/SEO; choose a single page-level h1 (e.g., via HeaderTemplate or making the template heading h1) and keep subsequent sections as h2/h3 in descending order.

Copilot uses AI. Check for mistakes.
Comment on lines +2 to +8
import {
BodyTemplate,
HeaderTemplate,
PageBuilder,
SectionTemplate,
} from "@/components/page-builder/template";
import { Box } from "@chakra-ui/react";
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

HeaderTemplate is imported but not used (the only reference is inside a commented-out block). This will trip linting/TS unused-import checks; either remove the import or render HeaderTemplate for the page header.

Copilot uses AI. Check for mistakes.
Comment thread app/(Pages)/terms/page.tsx Outdated
Comment on lines +13 to +15
{/*
* NEEDS to resize with "block height" param.
<HeaderTemplate/> */}
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please avoid committing commented-out JSX/TODO blocks in page components. Either implement the intended HeaderTemplate usage (with the needed sizing param) or remove this commented section to keep the page maintainable.

Suggested change
{/*
* NEEDS to resize with "block height" param.
<HeaderTemplate/> */}

Copilot uses AI. Check for mistakes.
Comment on lines +8 to +17
import { Box } from "@chakra-ui/react";

export default function Page() {
return (
<PageBuilder>
{/*
* NEEDS to resize with "block height" param.
<HeaderTemplate/> */}
<BodyTemplate>
<Box height={"10vh"}/>
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using a fixed 10vh spacer Box is a brittle layout hack (it will vary by viewport and may not match the navbar height). Prefer using the existing HeaderTemplate pattern (as other pages do) or apply a consistent top padding/margin that matches the navbar height/token.

Suggested change
import { Box } from "@chakra-ui/react";
export default function Page() {
return (
<PageBuilder>
{/*
* NEEDS to resize with "block height" param.
<HeaderTemplate/> */}
<BodyTemplate>
<Box height={"10vh"}/>
export default function Page() {
return (
<PageBuilder>
<HeaderTemplate />
<BodyTemplate>

Copilot uses AI. Check for mistakes.
Comment thread app/(Pages)/terms/page.tsx Outdated
Comment on lines +21 to +22
><div className="prose prose-lg">
<h1>Terms and Conditions</h1>
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

prose / prose-lg classes won’t have any effect in this repo because Tailwind Typography isn’t configured (no @tailwindcss/typography dependency/plugin and globals only @import "tailwindcss"). Either add/configure the typography plugin or style this content with Chakra components / existing design tokens so it renders as intended.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +13 to +68
<Box height={"10vh"}/>
<SectionTemplate
title="Terms and Conditions"
description="Read our terms and conditions to understand the rules and guidelines for using our website and services."
><div className="text-base lg:text-lg space-y-4">
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
responsible for maintaining the confidentiality of your account and
password, and for restricting access to your computer. You agree to
accept responsibility for all activities that occur under your
account or password.
</p>
<h2>2. Intellectual Property</h2>
<p>
All content on our website, including but not limited to text,
graphics, logos, images, and software, is the property of Mokse or
its content suppliers and is protected by international copyright
laws. You may not reproduce, distribute, modify, or create
derivative works from any content on our website without our prior
written consent.
</p>
<h2>3. User Conduct</h2>
<p>
You agree not to use our website for any unlawful purpose or in any
way that could damage, disable, overburden, or impair our servers or
networks. You also agree not to interfere with any other party's use
and enjoyment of our website.
</p>
<h2>4. Limitation of Liability</h2>
<p>
In no event shall Mokse be liable for any direct, indirect,
incidental, special, consequential, or punitive damages arising out
of or in connection with your use of our website or services.
</p>
<h2>5. Changes to Terms</h2>
<p>
We reserve the right to modify these terms and conditions at any
time. Any changes will be effective immediately upon posting on our
website. Your continued use of our website after any changes
constitutes your acceptance of the new terms.
</p>
<h2>6. Contact Us</h2>
<p>
If you have any questions about these terms and conditions, please
contact us at <a href="mailto:info@mokse.org">info@mokse.org</a>.
</p>
</div></SectionTemplate>

Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 10vh spacer (<Box height={"10vh"} />) is a brittle layout hack (varies widely by device and can create excessive whitespace). Prefer using consistent spacing via the template/layout (e.g., padding/margin on BodyTemplate / SectionTemplate, or a theme spacing token) so the page aligns predictably with the navbar/footer across breakpoints.

Suggested change
<Box height={"10vh"}/>
<SectionTemplate
title="Terms and Conditions"
description="Read our terms and conditions to understand the rules and guidelines for using our website and services."
><div className="text-base lg:text-lg space-y-4">
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
responsible for maintaining the confidentiality of your account and
password, and for restricting access to your computer. You agree to
accept responsibility for all activities that occur under your
account or password.
</p>
<h2>2. Intellectual Property</h2>
<p>
All content on our website, including but not limited to text,
graphics, logos, images, and software, is the property of Mokse or
its content suppliers and is protected by international copyright
laws. You may not reproduce, distribute, modify, or create
derivative works from any content on our website without our prior
written consent.
</p>
<h2>3. User Conduct</h2>
<p>
You agree not to use our website for any unlawful purpose or in any
way that could damage, disable, overburden, or impair our servers or
networks. You also agree not to interfere with any other party's use
and enjoyment of our website.
</p>
<h2>4. Limitation of Liability</h2>
<p>
In no event shall Mokse be liable for any direct, indirect,
incidental, special, consequential, or punitive damages arising out
of or in connection with your use of our website or services.
</p>
<h2>5. Changes to Terms</h2>
<p>
We reserve the right to modify these terms and conditions at any
time. Any changes will be effective immediately upon posting on our
website. Your continued use of our website after any changes
constitutes your acceptance of the new terms.
</p>
<h2>6. Contact Us</h2>
<p>
If you have any questions about these terms and conditions, please
contact us at <a href="mailto:info@mokse.org">info@mokse.org</a>.
</p>
</div></SectionTemplate>
<Box mt={16}>
<SectionTemplate
title="Terms and Conditions"
description="Read our terms and conditions to understand the rules and guidelines for using our website and services."
><div className="text-base lg:text-lg space-y-4">
<p>
Welcome to Mokse! These terms and conditions outline the rules and
regulations for the use of our website and services. By accessing or
using our website, you agree to be bound by these terms. If you do
not agree with any part of these terms, please do not use our
website.
</p>
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
responsible for maintaining the confidentiality of your account and
password, and for restricting access to your computer. You agree to
accept responsibility for all activities that occur under your
account or password.
</p>
<h2>2. Intellectual Property</h2>
<p>
All content on our website, including but not limited to text,
graphics, logos, images, and software, is the property of Mokse or
its content suppliers and is protected by international copyright
laws. You may not reproduce, distribute, modify, or create
derivative works from any content on our website without our prior
written consent.
</p>
<h2>3. User Conduct</h2>
<p>
You agree not to use our website for any unlawful purpose or in any
way that could damage, disable, overburden, or impair our servers or
networks. You also agree not to interfere with any other party's use
and enjoyment of our website.
</p>
<h2>4. Limitation of Liability</h2>
<p>
In no event shall Mokse be liable for any direct, indirect,
incidental, special, consequential, or punitive damages arising out
of or in connection with your use of our website or services.
</p>
<h2>5. Changes to Terms</h2>
<p>
We reserve the right to modify these terms and conditions at any
time. Any changes will be effective immediately upon posting on our
website. Your continued use of our website after any changes
constitutes your acceptance of the new terms.
</p>
<h2>6. Contact Us</h2>
<p>
If you have any questions about these terms and conditions, please
contact us at <a href="mailto:info@mokse.org">info@mokse.org</a>.
</p>
</div></SectionTemplate>
</Box>

Copilot uses AI. Check for mistakes.
Comment on lines +25 to +27
<h2>1. Use of Our Services</h2>
<p>
You must be at least 18 years old to use our services. You are
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SectionTemplate already renders the section title as an h2. Using additional h2 elements for the numbered subsections creates an invalid heading hierarchy for assistive tech. Consider making these subsection headings h3 (or render them via Chakra Heading with as="h3") so the page has a single h2 for the section and nested headings beneath it.

Copilot uses AI. Check for mistakes.
Comment thread app/(Pages)/terms/page.tsx Outdated
} from "@/components/page-builder/template";
import { Box } from "@chakra-ui/react";

export default function Page() {
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The default export component name Page is very generic and makes React DevTools and stack traces harder to read. Consider renaming it to something specific like TermsPage (or similar) to match the convention used by other route components (e.g., AboutUs, Contact).

Suggested change
export default function Page() {
export default function TermsPage() {

Copilot uses AI. Check for mistakes.
@BorDevTech BorDevTech merged commit 3f44ce6 into MOKSE-48-Footer-Component Mar 27, 2026
@BorDevTech BorDevTech deleted the MOKSE-9-Create-and-link-Terms-and-Conditions-page branch March 27, 2026 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants