Skip to content

Commit

Permalink
init project.
Browse files Browse the repository at this point in the history
  • Loading branch information
jaywcjlove committed Dec 30, 2019
0 parents commit 120b489
Show file tree
Hide file tree
Showing 16 changed files with 649 additions and 0 deletions.
33 changes: 33 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: GitHub Actions Build and Deploy
on:
push:
branches:
- master
jobs:
build-deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@master

- name: Setup Node
uses: actions/setup-node@v1
with:
node-version: '10.x'

# - name: Cache dependencies
# uses: actions/cache@v1
# with:
# path: ~/.npm
# key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
# restore-keys: |
# ${{ runner.os }}-node-

- run: npm install
- run: npm run build

- name: Build and Deploy
uses: peaceiris/actions-gh-pages@v2
env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages
PUBLISH_DIR: ./build
14 changes: 14 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
node_modules
build
npm-debug.log*
package-lock.json
.DS_Store
.cache
.vscode

*.bak
*.tem
*.temp
#.swp
*.*~
~*.*
9 changes: 9 additions & 0 deletions .kktrc.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import path from 'path';

export const moduleScopePluginOpts = [
path.resolve(process.cwd(), 'data.json'),
];

export const loaderOneOf = [
[require.resolve('@kkt/loader-less'), {}],
];
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

This is the Google Mirror Index.

https://jaywcjlove.github.io/google
161 changes: 161 additions & 0 deletions data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
{
"update": "",
"data": [
{ "url": "https://www.teoma.com", "type": "web", "status": 200 },
{ "url": "https://intelme.com", "type": "web", "status": 200 },
{ "url": "https://skyn3t.in/srx", "type": "web", "status": 200 },
{ "url": "https://suche.dasnetzundich.de", "type": "web", "status": 200 },
{ "url": "https://searx.com.au", "type": "web", "status": 200 },
{ "url": "https://burtrum.org/searx", "type": "web", "status": 200 },
{ "url": "https://roteserver.de/searx", "type": "web", "status": 200 },
{ "url": "https://srx.sx", "type": "web", "status": 200 },
{ "url": "https://search.paulla.asso.fr", "type": "web", "status": 200 },
{ "url": "https://search.spaeth.me", "type": "web", "status": 200 },
{ "url": "https://seeks.hsbp.org", "type": "web", "status": 200 },
{ "url": "https://searx.linux.pizza", "type": "web", "status": 200 },
{ "url": "https://searx.gotrust.de", "type": "web", "status": 200 },
{ "url": "https://trovu.komun.org", "type": "web", "status": 200 },
{ "url": "http://so.hiqq.com.cn", "type": "scholar", "status": 200 },
{ "url": "https://sci-hub.org.cn", "type": "scholar", "status": 200 },
{ "url": "https://scholar.123admin.com", "type": "scholar", "status": 200 },
{ "url": "http://www.ndtsg.com", "type": "scholar", "status": 200 },
{ "url": "https://www.80xueshu.com", "type": "scholar", "status": 200 },
{ "url": "https://xue.glgoo.org", "type": "scholar", "status": 200 },
{ "url": "https://s0.unllu.com/", "type": "scholar", "status": 200 },
{ "url": "https://xs.zb-welding.com/scholar", "type": "scholar", "status": 200 },
{ "url": "https://searx.operationtulip.com", "type": "web", "status": 200 },
{ "url": "https://search.st8.at", "type": "web", "status": 200 },
{ "url": "https://mijisou.com", "type": "web", "status": 200 },
{ "url": "https://haku.ahmia.fi", "type": "web", "status": 200 },
{ "url": "https://google.nekoemtp.workers.dev", "type": "web", "status": 200 },
{ "url": "http://baidu01.puataiwan.com", "type": "web", "status": 200 },
{ "url": "https://gg.smiling.workers.dev", "type": "web", "status": 200 },
{ "url": "https://www.gosearchresults.com", "type": "web", "status": 200 },
{ "url": "https://lite.qwant.com", "type": "web", "status": 200 },
{ "url": "https://seeres.com", "type": "web", "status": 200 },
{ "url": "https://1.52qu.xyz", "type": "web", "status": 200 },
{ "url": "https://guge.one", "type": "web", "status": 200 },
{ "url": "https://nav.hiqq.com.cn/twy", "type": "web", "status": 200 },
{ "url": "https://g.luciaz.me", "type": "web", "status": 200 },
{ "url": "https://searx.xyz", "type": "web", "status": 200 },
{ "url": "https://www.kuaimen.bid", "type": "web", "status": 200 },
{ "url": "https://4.52qu.xyz", "type": "web", "status": 200 },
{ "url": "https://b.glgoo.top/scholar", "type": "web", "status": 200 },
{ "url": "https://c.glgoo.top/scholar", "type": "web", "status": 200 },
{ "url": "https://cc.glgoo.top/scholar", "type": "web", "status": 200 },
{ "url": "https://guge.schove.com", "type": "web", "status": 200 },
{ "url": "http://so.hiqq.com.cn", "type": "web", "status": 200 },
{ "url": "http://nav.hiqq.com.cn/twy", "type": "web", "status": 200 },
{ "url": "https://searx.be", "type": "web", "status": 200 },
{ "url": "https://searx.elukerio.org", "type": "web", "status": 200 },
{ "url": "https://searx.libmail.eu", "type": "web", "status": 200 },
{ "url": "https://search.snopyta.org", "type": "web", "status": 200 },
{ "url": "https://searx.win", "type": "web", "status": 200 },
{ "url": "https://search.galaxy.cat", "type": "web", "status": 200 },
{ "url": "https://searx.info", "type": "web", "status": 200 },
{ "url": "https://searx.tuxcloud.net", "type": "web", "status": 200 },
{ "url": "https://searx.prvcy.eu", "type": "web", "status": 200 },
{ "url": "https://search.stinpriza.org", "type": "web", "status": 200 },
{ "url": "https://searx.site", "type": "web", "status": 200 },
{ "url": "https://searx.mastodontech.de", "type": "web", "status": 200 },
{ "url": "https://searx.solusar.de", "type": "web", "status": 200 },
{ "url": "https://search.mdosch.de", "type": "web", "status": 200 },
{ "url": "https://searx.decatec.de", "type": "web", "status": 200 },
{ "url": "https://searx.dresden.network", "type": "web", "status": 200 },
{ "url": "https://search.disroot.org", "type": "web", "status": 200 },
{ "url": "https://rapu.nz", "type": "web", "status": 200 },
{ "url": "https://searx.pofilo.fr", "type": "web", "status": 200 },
{ "url": "https://unmonito.red", "type": "web", "status": 200 },
{ "url": "https://searx.canox.net", "type": "web", "status": 200 },
{ "url": "https://search.modalogi.com", "type": "web", "status": 200 },
{ "url": "https://searx.pwoss.org", "type": "web", "status": 200 },
{ "url": "https://searx.hlfh.space", "type": "web", "status": 200 },
{ "url": "https://searx.xyz", "type": "web", "status": 200 },
{ "url": "https://searx.nnto.net", "type": "web", "status": 200 },
{ "url": "https://search.biboumail.fr", "type": "web", "status": 200 },
{ "url": "https://www.perfectpixel.de/searx", "type": "web", "status": 200 },
{ "url": "https://searx.zareldyn.net", "type": "web", "status": 200 },
{ "url": "https://searx.li", "type": "web", "status": 200 },
{ "url": "https://searx.envs.net", "type": "web", "status": 200 },
{ "url": "https://dc.ax", "type": "web", "status": 200 },
{ "url": "https://wtf.roflcopter.fr/searx", "type": "web", "status": 200 },
{ "url": "https://s.cmd.gg", "type": "web", "status": 200 },
{ "url": "https://searx.anongoth.pl", "type": "web", "status": 200 },
{ "url": "https://searx.fr32k.de", "type": "web", "status": 200 },
{ "url": "https://searx.nakhan.net", "type": "web", "status": 200 },
{ "url": "https://search.datensturm.net", "type": "web", "status": 200 },
{ "url": "https://searx.openpandora.org", "type": "web", "status": 200 },
{ "url": "https://spot.ecloud.global", "type": "web", "status": 200 },
{ "url": "https://search.lgbtq.cool", "type": "web", "status": 200 },
{ "url": "https://suche.uferwerk.org", "type": "web", "status": 200 },
{ "url": "https://searx.openhoofd.nl", "type": "web", "status": 200 },
{ "url": "https://searx.ru", "type": "web", "status": 200 },
{ "url": "https://searx.targaryen.house", "type": "web", "status": 200 },
{ "url": "https://le-dahut.com/searx", "type": "web", "status": 200 },
{ "url": "https://search.moravit.com", "type": "web", "status": 200 },
{ "url": "https://zoek.anchel.nl", "type": "web", "status": 200 },
{ "url": "https://search.seds.nl", "type": "web", "status": 200 },
{ "url": "https://openworlds.info", "type": "web", "status": 200 },
{ "url": "https://dynabyte.ca", "type": "web", "status": 200 },
{ "url": "https://searx.foo.li", "type": "web", "status": 200 },
{ "url": "https://www.skyn3t.in/search", "type": "web", "status": 200 },
{ "url": "https://searx.me", "type": "web", "status": 200 },
{ "url": "https://www.searx.de", "type": "web", "status": 200 },
{ "url": "https://ai.deafpray.wtf/searx", "type": "web", "status": 200 },
{ "url": "https://searx.mxchange.org", "type": "web", "status": 200 },
{ "url": "https://timdor.noip.me/searx", "type": "web", "status": 200 },
{ "url": "https://search.activemail.de", "type": "web", "status": 200 },
{ "url": "https://bamboozle.it", "type": "web", "status": 200 },
{ "url": "https://searx.ouahpiti.info", "type": "web", "status": 200 },
{ "url": "https://searx.laquadrature.net", "type": "web", "status": 200 },
{ "url": "https://search.poal.co", "type": "web", "status": 200 },
{ "url": "https://null.media", "type": "web", "status": 200 },
{ "url": "https://search.dominikschroeck.de", "type": "web", "status": 200 },
{ "url": "https://searx.lynnesbian.space", "type": "web", "status": 200 },
{ "url": "https://searx.john-at-me.net", "type": "web", "status": 200 },
{ "url": "https://search.anonymize.com", "type": "web", "status": 200 },
{ "url": "https://search.azkware.net", "type": "web", "status": 200 },
{ "url": "https://searx.everdot.org", "type": "web", "status": 200 },
{ "url": "https://jsearch.pw", "type": "web", "status": 200 },
{ "url": "https://www.searxs.eu", "type": "web", "status": 200 },
{ "url": "https://search.nebulacentre.net", "type": "web", "status": 200 },
{ "url": "https://search.fossdaily.xyz", "type": "web", "status": 200 },
{ "url": "https://search.wxzm.sx", "type": "web", "status": 200 },
{ "url": "https://search.gibberfish.org", "type": "web", "status": 200 },
{ "url": "https://goso.ga", "type": "web", "status": 200 },
{ "url": "https://searx.lavatech.top", "type": "web", "status": 200 },
{ "url": "https://searchx.mobi", "type": "web", "status": 200 },
{ "url": "https://searx.run", "type": "web", "status": 200 },
{ "url": "https://searx.wegeeks.win", "type": "web", "status": 200 },
{ "url": "https://searx.world", "type": "web", "status": 200 },

{ "url": "https://g2.wen.lu", "type": "web", "status": 400 },
{ "url": "http://gc.ihuan.me", "type": "web", "status": 400 },
{ "url": "http://ggss.cf", "type": "web", "status": 400 },
{ "url": "http://hao.cytbj.com", "type": "web", "status": 400 },
{ "url": "http://jgoproxy.tk", "type": "web", "status": 400 },
{ "url": "http://s.8090st.com", "type": "web", "status": 400 },
{ "url": "https://www.wacao.org", "type": "web", "status": 400 },
{ "url": "http://www.g363.com", "type": "web", "status": 400 },
{ "url": "http://g.helloit.info", "type": "web", "status": 400 },
{ "url": "https://g.jikewenku.cn", "type": "web", "status": 400 },
{ "url": "https://www.guge.xxx", "type": "web", "status": 400 },
{ "url": "https://g.libnull.com", "type": "web", "status": 400 },
{ "url": "http://ssdao.cdjltz.com", "type": "web", "status": 400 },
{ "url": "https://global.gogfw.com", "type": "web", "status": 400 },
{ "url": "https://www.onk6.com", "type": "web", "status": 400 },
{ "url": "http://www.hntvchina.com", "type": "web", "status": 400 },
{ "url": "https://g.zrj766.com", "type": "web", "status": 400 },
{ "url": "https://g.alexyang.me", "type": "web", "status": 400 },
{ "url": "https://ggso.in", "type": "web", "status": 400 },
{ "url": "http://www.bjgong.tk", "type": "web", "status": 400 },
{ "url": "http://scholar.hntvchina.com", "type": "web", "status": 400 },
{ "url": "https://ggss.ml", "type": "web", "status": 400 },
{ "url": "https://fuckgfw.ggss.cf", "type": "web", "status": 400 },
{ "url": "https://g.jikewenku.cn", "type": "web", "status": 400 },
{ "url": "http://www.mrba.com.cn", "type": "web", "status": 400 },
{ "url": "http://hi18.cn", "type": "web", "status": 400 },
{ "url": "http://www.gusou.co", "type": "web", "status": 400 },
{ "url": "https://fengfei.org", "type": "web", "status": 400 }
]
}
46 changes: 46 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"name": "guge",
"version": "1.0.0",
"description": "This is the Google Mirror Index.",
"homepage": "https://github.com/jaywcjlove/google",
"private": true,
"scripts": {
"prepare": "npm run build",
"start": "kkt start",
"build": "kkt build"
},
"repository": {
"type": "git",
"url": "https://github.com/jaywcjlove/google.git"
},
"author": "",
"license": "MIT",
"dependencies": {},
"devDependencies": {
"@kkt/loader-less": "^5.2.2",
"@types/classnames": "^2.2.8",
"@types/jest": "^24.0.23",
"@types/react": "^16.9.13",
"@types/react-dom": "^16.9.4",
"@uiw/react-github-corners": "^1.1.2",
"classnames": "^2.2.6",
"kkt": "5.2.1",
"react": "^16.12.0",
"react-dom": "^16.12.0"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
Binary file added public/favicon.ico
Binary file not shown.
15 changes: 15 additions & 0 deletions public/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Google 镜像</title>
</head>

<body>
<div id="root"></div>
</body>

</html>
37 changes: 37 additions & 0 deletions src/app/App.module.less
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
.warpper {
padding: 0;
}

.header {
padding: 25px 10px 10px 25px;
}

.body {
padding: 12px 10px 60px 18px;
font-size: 14px;
table {
border-spacing: 0;
border-collapse: collapse;
}
thead th, tbody td {
padding: 3px 10px;
line-height: 21px;
}
thead th {
text-align: left;
}
tbody tr {
background-color: transparent;
transition: all .3s;
}
tbody tr:hover {
background-color: #f1f1f1;
}
}

.notFound {
color: #797979;
a {
color: #797979;
}
}
51 changes: 51 additions & 0 deletions src/app/App.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
import React from 'react';
import classnames from 'classnames';
import GitHubCorners from '@uiw/react-github-corners';
import styles from './App.module.less';
import Google from './Google';
import data from '../../data.json';


interface DataItem {
status?: number;
type?: 'web' | 'scholar';
url: string;
}

const App = () => (
<div className={styles.warpper}>
<GitHubCorners fixed href="https://github.com/jaywcjlove/google" />
<header className={styles.header}>
<Google />
</header>
<aside className={styles.body}>
<table>
<thead>
<tr>
<th>#</th>
<th>URL</th>
<th>Status</th>
<th>Type</th>
<th>Response Time</th>
</tr>
</thead>
<tbody>
{((data.data || []) as DataItem[]).map((item, idx) => {
const isNotFound = item.status === 400;
return (
<tr key={idx} className={classnames({ [`${styles.notFound}`]: isNotFound })}>
<td>{idx + 1}</td>
<td><a href={item.url} target="__blank">{item.url}</a></td>
<td>{item.status || '-'}</td>
<td>{item.type || '-'}</td>
<td>-</td>
</tr>
);
})}
</tbody>
</table>
</aside>
</div>
);

export default App;
14 changes: 14 additions & 0 deletions src/app/Google.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import React from 'react';

export default () => {
return (
<svg viewBox="0 0 3027 1024" height="50">
<path d="M1288.347826 525.133913c0 142.135652-111.193043 246.873043-247.652174 246.873044s-247.652174-104.737391-247.652174-246.873044C793.043478 381.996522 904.236522 278.26087 1040.695652 278.26087s247.652174 103.735652 247.652174 246.873043z m-108.410435 0c0-88.82087-64.445217-149.593043-139.241739-149.593043S901.453913 436.313043 901.453913 525.133913c0 87.930435 64.445217 149.593043 139.241739 149.593044s139.241739-61.773913 139.241739-149.593044z" fill="#EA4335" />
<path d="M1822.608696 525.133913c0 142.135652-111.193043 246.873043-247.652174 246.873044s-247.652174-104.737391-247.652174-246.873044c0-143.026087 111.193043-246.873043 247.652174-246.873043s247.652174 103.735652 247.652174 246.873043z m-108.410435 0c0-88.82087-64.445217-149.593043-139.241739-149.593043s-139.241739 60.772174-139.241739 149.593043c0 87.930435 64.445217 149.593043 139.241739 149.593044s139.241739-61.773913 139.241739-149.593044z" fill="#FBBC05" />
<path d="M2334.608696 293.175652v443.213913c0 182.316522-107.52 256.77913-234.629566 256.779131-119.652174 0-191.666087-80.027826-218.824347-145.474783l94.386087-39.290435c16.806957 40.18087 57.989565 87.596522 124.326956 87.596522 81.363478 0 131.784348-50.198261 131.784348-144.695652v-35.506087h-3.784348c-24.264348 29.94087-71.012174 56.097391-130.003478 56.097391-123.436522 0-236.521739-107.52-236.521739-245.871304 0-139.353043 113.085217-247.763478 236.521739-247.763478 58.88 0 105.627826 26.156522 130.003478 55.206956h3.784348v-40.180869h102.956522z m-95.276522 232.848696c0-86.928696-57.989565-150.483478-131.784348-150.483478-74.796522 0-137.46087 63.554783-137.460869 150.483478 0 86.038261 62.664348 148.702609 137.460869 148.702609 73.794783 0 131.784348-62.664348 131.784348-148.702609z" fill="#4285F4" />
<path d="M2504.347826 33.391304v723.478261h-105.73913V33.391304h105.73913z" fill="#34A853" />
<path d="M2916.396522 606.386087l84.146087 56.097391c-27.158261 40.18087-92.605217 109.412174-205.690435 109.412174-140.243478 0-244.98087-108.410435-244.98087-246.873043 0-146.810435 105.627826-246.873043 232.848696-246.873044 128.111304 0 190.775652 101.954783 211.255652 157.050435l11.241739 28.048696-330.017391 136.681739c25.266087 49.530435 64.556522 74.796522 119.652174 74.796522 55.206957 0 93.495652-27.158261 121.544348-68.34087z m-259.005218-88.82087l220.605218-91.603478c-12.132174-30.831304-48.64-52.313043-91.603479-52.313043-55.095652 0-131.784348 48.64-129.001739 143.916521z" fill="#EA4335" />
<path d="M392.793043 460.911304V356.173913H745.73913c3.450435 18.253913 5.231304 39.846957 5.231305 63.22087 0 78.58087-21.481739 175.749565-90.713044 244.980869-67.33913 70.121739-153.377391 107.52-267.353043 107.52C181.648696 771.895652 4.006957 599.81913 4.006957 388.563478 4.006957 177.307826 181.648696 5.231304 392.904348 5.231304c116.869565 0 200.125217 45.857391 262.678261 105.627826l-73.906087 73.906087c-44.855652-42.073043-105.627826-74.796522-188.883479-74.796521-154.267826 0-274.921739 124.326957-274.921739 278.594782 0 154.267826 120.653913 278.594783 274.921739 278.594783 100.062609 0 157.050435-40.18087 193.558261-76.688696 29.606957-29.606957 49.085217-71.902609 56.765218-129.669565l-250.323479 0.111304z" fill="#4285F4" />
</svg>
);
}
Loading

0 comments on commit 120b489

Please sign in to comment.