Skip to content

Commit ec14b50

Browse files
committed
Add more tags
1 parent af6e01c commit ec14b50

5 files changed

Lines changed: 105 additions & 2 deletions

File tree

build/bin/build-sitemap.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { writeFileSync } from 'fs'
2+
import { resolve } from 'path'
3+
import { cwd } from './build-common.js'
4+
5+
const today = new Date().toISOString().split('T')[0]
6+
const baseUrl = 'https://electerm-demo.html5beta.com'
7+
8+
const sitemap = `<?xml version="1.0" encoding="UTF-8"?>
9+
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
10+
<url>
11+
<loc>${baseUrl}/</loc>
12+
<lastmod>${today}</lastmod>
13+
<changefreq>monthly</changefreq>
14+
<priority>1.0</priority>
15+
</url>
16+
</urlset>`
17+
18+
const outPath = resolve(cwd, 'public/sitemap.xml')
19+
writeFileSync(outPath, sitemap, 'utf8')
20+
console.log(`Generated sitemap.xml with date ${today}`)

build/bin/build.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ echo('js/css file')
1414
exec('npm run vb')
1515
echo('copy file')
1616
exec('node ./build/bin/copy.js')
17+
echo('generate sitemap')
18+
exec('node ./build/bin/build-sitemap.js')
1719

1820
const endTime = Date.now()
1921
echo(`done build in ${(endTime - timeStart) / 1000} s`)

src/client/statics/ai.txt

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# ai.txt - AI Context File for electerm web demo
2+
# https://electerm-demo.html5beta.com
3+
# This file provides context for AI systems crawling this site.
4+
5+
## Site Information
6+
Name: electerm web demo
7+
Type: Web application demo
8+
Description: Free, open-source web-based terminal, SSH, and SFTP client demo
9+
URL: https://electerm-demo.html5beta.com
10+
Repository: https://github.com/electerm/electerm-web
11+
License: MIT
12+
Author: ZHAO Xudong (zxdong@gmail.com)
13+
14+
## Content Summary
15+
This is a web demo of electerm, a full-featured terminal/SSH/SFTP client application.
16+
The demo showcases a browser-based terminal emulator with the following capabilities:
17+
- Terminal emulation (xterm.js based)
18+
- SSH connections to remote servers
19+
- SFTP file transfer
20+
- Tabbed interface
21+
- Theme customization
22+
- Session management
23+
24+
## AI Usage Policy
25+
- This site is a public demo intended for evaluation and testing
26+
- Content may be referenced in AI responses with proper attribution
27+
- The source code is open-source (MIT license)
28+
- For API or integration questions, refer to the GitHub repository
29+
30+
## Key Technical Details
31+
- Frontend: React + xterm.js
32+
- Build: Vite
33+
- Styling: Ant Design
34+
- Deployment: Cloudflare Pages
35+
36+
## Contact
37+
For questions about AI usage or data policies:
38+
- GitHub: https://github.com/electerm/electerm-web/issues
39+
- Email: zxdong@gmail.com

src/client/statics/robots.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
User-agent: *
2+
Allow: /
3+
4+
Sitemap: https://electerm-demo.html5beta.com/sitemap.xml

src/client/views/index.pug

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,49 @@
11

22
doctype html
3-
html
3+
html(lang='en')
44
head
55
meta(charset='UTF-8')
66
meta(http-equiv='x-ua-compatible' content='IE=edge')
77
meta(name='viewport', content='width=device-width, initial-scale=1, shrink-to-fit=no')
8-
title #{siteName}
8+
title #{siteName} - Web Terminal/SSH/SFTP Client Demo
9+
10+
//- Basic SEO
11+
meta(name='description', content='Free web-based terminal, SSH, and SFTP client demo. Access remote servers directly from your browser with a full-featured terminal emulator powered by xterm.js.')
12+
meta(name='keywords', content='terminal, ssh, sftp, web terminal, browser terminal, ssh client, webssh, xterm, remote server, command line')
13+
meta(name='author', content='ZHAO Xudong')
14+
meta(name='robots', content='index, follow, max-snippet:-1, max-image-preview:large')
15+
link(rel='canonical', href='https://electerm-demo.html5beta.com/')
16+
17+
//- Open Graph / Facebook
18+
meta(property='og:type', content='website')
19+
meta(property='og:url', content='https://electerm-demo.html5beta.com/')
20+
meta(property='og:title', content='electerm - Web Terminal/SSH/SFTP Client Demo')
21+
meta(property='og:description', content='Free web-based terminal, SSH, and SFTP client demo. Access remote servers directly from your browser.')
22+
meta(property='og:image', content='https://electerm-demo.html5beta.com/images/electerm.png')
23+
meta(property='og:image:alt', content='electerm terminal interface')
24+
meta(property='og:site_name', content='electerm web demo')
25+
26+
//- Twitter Card
27+
meta(name='twitter:card', content='summary_large_image')
28+
meta(name='twitter:title', content='electerm - Web Terminal/SSH/SFTP Client Demo')
29+
meta(name='twitter:description', content='Free web-based terminal, SSH, and SFTP client demo. Access remote servers directly from your browser.')
30+
meta(name='twitter:image', content='https://electerm-demo.html5beta.com/images/electerm.png')
31+
meta(name='twitter:image:alt', content='electerm terminal interface')
32+
33+
//- Theme & UI
34+
meta(name='theme-color', content='#141314')
35+
meta(name='color-scheme', content='dark')
36+
meta(name='referrer', content='strict-origin-when-cross-origin')
37+
38+
//- Favicons
39+
link(rel='icon', type='image/x-icon', href='/favicon.ico')
40+
link(rel='icon', type='image/png', sizes='32x32', href='/favicon-32x32.png')
41+
link(rel='icon', type='image/png', sizes='16x16', href='/favicon-16x16.png')
42+
link(rel='apple-touch-icon', sizes='180x180', href='/apple-touch-icon.png')
43+
44+
//- AI & Machine-readable metadata
45+
meta(name='ai-content-declaration', content='human-created')
46+
link(rel='alternate', href='/ai.txt', type='text/plain', title='AI Context File')
947
style.
1048
body {
1149
background: #000;

0 commit comments

Comments
 (0)