Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions public/browserconfig.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square70x70logo src="/logo192.png"/>
<square150x150logo src="/logo192.png"/>
<square310x310logo src="/logo512.png"/>
<wide310x150logo src="/logo512.png"/>
<TileColor>#000000</TileColor>
</tile>
<polling-uri src=""/>
<frequency>30</frequency>
<cycle>1</cycle>
</notification>
</msapplication>
</browserconfig>
Comment thread
coderabbitai[bot] marked this conversation as resolved.
102 changes: 52 additions & 50 deletions public/index.html
Original file line number Diff line number Diff line change
@@ -1,60 +1,62 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/%REACT_APP_LOGO_PATH%" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta property="og:title" content="Djed on %REACT_APP_BC%" />
<meta name="description" content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. It has been researched since Q2 2020, its whitepaper has been released in August 2021, and it has multiple implementations and deployments. Here you can interact with a deployment that uses these smart contracts on %REACT_APP_BC%." />
<meta property="og:description" content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. It has been researched since Q2 2020, its whitepaper has been released in August 2021, and it has multiple implementations and deployments. Here you can interact with a deployment that uses these smart contracts on %REACT_APP_BC%." />
<meta property="og:image" content="%PUBLIC_URL%/%REACT_APP_LOGO_PATH%" />
<meta property="og:url" content="%PUBLIC_URL%" />
<meta name="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="%PUBLIC_URL%">
<meta name="twitter:title" content="Djed on Ethereum Classic">
<meta name="twitter:description" content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. It has been researched since Q2 2020, its whitepaper has been released in August 2021, and it has multiple implementations and deployments. Here you can interact with a deployment that uses these smart contracts on Ethereum Classic.">
<meta name="twitter:image" content="%PUBLIC_URL%/%REACT_APP_LOGO_PATH%">
<!--link rel="apple-touch-icon" href="%PUBLIC_URL%/logo180.png" /-->
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700;800&display=swap"
rel="stylesheet"
/>
<link
href="https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@300;400;600&display=swap"
rel="stylesheet"
/>
<!--
manifest.json provides metadata used when your web app is installed on a
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<!--
<html lang="en" dir="ltr">

<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0" />
<meta name="description"
content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. Trade StableCoins and ReserveCoins on %REACT_APP_BC% with a decentralized, zero-governance monetary system backed by cryptocurrency reserves." />
<meta name="keywords"
content="Djed, stablecoin, cryptocurrency, DeFi, decentralized finance, %REACT_APP_BC%, blockchain, crypto-backed, autonomous protocol, ReserveCoin, smart contracts, ERC-20, Web3" />
<meta name="author" content="Djed Alliance" />
<meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1" />
<meta name="googlebot" content="index, follow" />
<meta name="bingbot" content="index, follow" />
<meta name="theme-color" content="#000000" />
<meta property="og:title" content="Djed on %REACT_APP_BC%" />
<meta property="og:description"
content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. It has been researched since Q2 2020, its whitepaper has been released in August 2021, and it has multiple implementations and deployments. Here you can interact with a deployment that uses these smart contracts on %REACT_APP_BC%." />
<meta property="og:image" content="%PUBLIC_URL%/%REACT_APP_LOGO_PATH%" />
<meta property="og:url" content="%PUBLIC_URL%" />
<meta name="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="%PUBLIC_URL%">
<meta name="twitter:title" content="Djed on Ethereum Classic">
<meta name="twitter:description"
content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. It has been researched since Q2 2020, its whitepaper has been released in August 2021, and it has multiple implementations and deployments. Here you can interact with a deployment that uses these smart contracts on Ethereum Classic.">
<meta name="twitter:image" content="%PUBLIC_URL%/%REACT_APP_LOGO_PATH%">
Comment on lines +17 to +27

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Align OG/Twitter fields (network name + absolute URL).

og:title uses %REACT_APP_BC% (Line 17) but twitter:title is hardcoded to “Ethereum Classic” (Line 26). Also, %PUBLIC_URL% for og:url/twitter:url (Lines 23, 25) is only correct if PUBLIC_URL is configured to the canonical absolute origin in prod.

🤖 Prompt for AI Agents
In public/index.html around lines 17 to 29, the Open Graph and Twitter meta tags
are inconsistent: og:title uses %REACT_APP_BC% while twitter:title is hardcoded
to "Ethereum Classic", and og:url/twitter:url rely on %PUBLIC_URL% which may not
be an absolute origin. Replace the hardcoded twitter:title with the same
%REACT_APP_BC% placeholder (or the shared env var you use for the network name)
so both tags display the same network, and change og:url and twitter:url to use
an absolute origin environment variable (e.g., %REACT_APP_PUBLIC_URL% or ensure
PUBLIC_URL is set to the canonical absolute origin in production) so both meta
tags use the same canonical absolute URL; keep image tags pointing to the public
URL plus logo path as before.

<!--link rel="apple-touch-icon" href="%PUBLIC_URL%/logo180.png" /-->
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link rel="dns-prefetch" href="https://fonts.googleapis.com" />
<link rel="dns-prefetch" href="https://fonts.gstatic.com" />

<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600;700;800&display=swap"
rel="stylesheet" />
<link href="https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@300;400;600&display=swap" rel="stylesheet" />
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.

Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title></title>
</head>

<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
<title>Djed Protocol — Trade StableCoins &amp; ReserveCoins on %REACT_APP_BC%</title>
</head>
Comment on lines +5 to +48

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

SEO regression: empty <title> + duplicate meta description.

You currently have two meta name="description" (Lines 8-9 and 18-19) and an empty <title> (Line 49). Recommend consolidating and setting a stable title:

-  <meta name="description"
-    content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. Trade StableCoins and ReserveCoins on %REACT_APP_BC% ..." />
+  <meta name="description"
+    content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. Trade StableCoins and ReserveCoins on %REACT_APP_BC% ..." />
   ...
-  <meta name="description"
-    content="Djed is a formally verified crypto-backed autonomous stablecoin protocol. It has been researched since Q2 2020, ..." />
   ...
-  <title></title>
+  <title>Djed Protocol — Trade StableCoins &amp; ReserveCoins on %REACT_APP_BC%</title>

Committable suggestion skipped: line range outside the PR's diff.

🤖 Prompt for AI Agents
public/index.html lines 5-50: The HTML has a duplicate meta name="description"
and an empty <title>; remove the redundant meta description (keep the most
complete/accurate one), consolidate any variant text into that single
description tag, and set a meaningful non-empty <title> (e.g. "Djed on
%REACT_APP_BC%" or similar using the existing env placeholder) so SEO and social
previews are correct.


You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
<body>
<noscript>
<div style="padding: 20px; text-align: center; background: #1a1a1a; color: #fff;">
<h1>JavaScript Required</h1>
<p>Djed Protocol requires JavaScript to function. Please enable JavaScript in your browser settings to access the
StableCoin and ReserveCoin trading interface.</p>
<p>Learn more about Djed at <a href="https://docs.djed.one" style="color: #ffd700;">our documentation</a>.</p>
</div>
</noscript>
<div id="root"></div>
</body>

To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>
</html>
86 changes: 81 additions & 5 deletions public/manifest.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,91 @@
{
"short_name": "Djed on Milkomeda",
"name": "Djed on Milkomeda",
"short_name": "Djed",
"name": "Djed Protocol - Decentralized Stablecoin",
"description": "Trade StableCoins and ReserveCoins on a formally verified, crypto-backed autonomous stablecoin protocol with zero governance.",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo180.png",
"sizes": "180x180",
"type": "image/png",
"purpose": "any"
},
{
"src": "logo192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "any maskable"
},
{
"src": "logo512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any maskable"
}
],
"start_url": ".",
"id": "djed-protocol",
"start_url": "/",
"scope": "/",
"display": "standalone",
"display_override": [
"window-controls-overlay",
"standalone",
"browser"
],
"orientation": "portrait-primary",
"theme_color": "#000000",
"background_color": "#ffffff"
}
"background_color": "#000000",
"categories": [
"finance",
"business",
"utilities"
],
"lang": "en-US",
"dir": "ltr",
"prefer_related_applications": false,
"shortcuts": [
{
"name": "Buy StableCoin",
"short_name": "StableCoin",
"description": "Trade Djed StableCoins",
"url": "/sc",
"icons": [
{
"src": "coin-icon-one.png",
"sizes": "96x96"
}
]
},
{
"name": "Buy ReserveCoin",
"short_name": "ReserveCoin",
"description": "Trade Djed ReserveCoins",
"url": "/rc",
"icons": [
{
"src": "coin-icon-two.png",
"sizes": "96x96"
}
]
},
{
"name": "View Balance",
"short_name": "Balance",
"description": "Check your coin balance",
"url": "/my-balance",
"icons": [
{
"src": "coin-icon-three.png",
"sizes": "96x96"
}
]
}
],
"related_applications": [],
"iarc_rating_id": "",
"handle_links": "preferred"
Comment thread
Anushlinux marked this conversation as resolved.
}
13 changes: 12 additions & 1 deletion public/robots.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:
Allow: /
Allow: /sc
Allow: /rc
Allow: /my-balance
Allow: /terms-of-use
Disallow: /api/
Disallow: /*.json$
Disallow: /*?*

# Primary sitemap
Sitemap: https://djed.one/sitemap.xml
Comment on lines +3 to +13

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Robots rules are a bit over-broad (/*.json$ + /*?*) and can block legitimate assets/URLs.

  • Disallow: /*.json$ will also block /manifest.json (and any other JSON endpoints you may actually want fetched/cached).
  • Disallow: /*?* blocks all parameterized URLs (UTM links, share links, SPA state in query params), which can be counterproductive.

Consider narrowing + explicitly allowing the manifest:

 User-agent: *
-Allow: /
-Allow: /sc
-Allow: /rc
-Allow: /my-balance
-Allow: /terms-of-use
 Disallow: /api/
-Disallow: /*.json$
-Disallow: /*?*
+Disallow: /*?*
+Allow: /manifest.json

 # Primary sitemap
 Sitemap: https://djed.one/sitemap.xml

Committable suggestion skipped: line range outside the PR's diff.

🤖 Prompt for AI Agents
In public/robots.txt around lines 3 to 13, the current Disallow rules are too
broad—`/*.json$` will block legitimate JSON assets like /manifest.json and
`/*?*` prevents all query‑param URLs (UTMs, share links, SPA state). Remove or
narrow the global `/*.json$` and `/*?*` directives, explicitly add an Allow for
/manifest.json (and any other JSON assets you need crawled), and instead of
blocking all query strings either delete the `/*?*` line or replace it with
targeted patterns (e.g., block only known tracking params or specific endpoints)
while keeping Disallow: /api/ to protect API routes.


65 changes: 65 additions & 0 deletions public/sitemap.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">

<url>
<loc>https://djed.one/</loc>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>

<url>
<loc>https://djed.one/sc</loc>
<changefreq>daily</changefreq>
<priority>0.9</priority>
</url>

<url>
<loc>https://djed.one/rc</loc>
<changefreq>daily</changefreq>
<priority>0.9</priority>
</url>

<url>
<loc>https://djed.one/my-balance</loc>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>

<url>
<loc>https://djed.one/terms-of-use</loc>
<changefreq>monthly</changefreq>
<priority>0.3</priority>
</url>

<url>
<loc>https://milkomeda-c1.djed.one/</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>

<url>
<loc>https://milkomeda-c1.djed.one/sc</loc>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>

<url>
<loc>https://milkomeda-c1.djed.one/rc</loc>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>

<url>
<loc>https://milkomeda-c1.djed.one/my-balance</loc>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>

<url>
<loc>https://milkomeda-c1.djed.one/terms-of-use</loc>
<changefreq>monthly</changefreq>
<priority>0.3</priority>
</url>

</urlset>
Comment thread
coderabbitai[bot] marked this conversation as resolved.
Loading