Compare commits

...

2 Commits

12 changed files with 25839 additions and 116 deletions

View File

@ -1,15 +1,16 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<link href="./css/bootstrap.min.css" rel="stylesheet" >
<link rel="icon" type="image/svg+xml" href="favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta charset="UTF-8"/>
<link href="./css/bootstrap.min.css" rel="stylesheet" >
<link rel="stylesheet" href="./css/font/bootstrap-icons.css">
<link rel="icon" type="image/svg+xml" href="favicon.svg"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>确实信创社区</title>
</head>
<body>
<div id="root"></div>
<script src="./js/bootstrap.bundle.min.js"></script>
<script src="./js/bootstrap.bundle.min.js"></script>
<script type="module" src="/src/main.jsx"></script>
</body>
</html>

View File

@ -231,6 +231,14 @@
"@babel/helper-plugin-utils": "^7.14.5"
}
},
"@babel/runtime": {
"version": "7.14.8",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.8.tgz",
"integrity": "sha512-twj3L8Og5SaCRCErB4x4ajbvBIVV77CGeFglHpeg5WC5FF8TZzBWXtTJ4MqaD9QszLYTtr+IsaAL2rEUevb+eg==",
"requires": {
"regenerator-runtime": "^0.13.4"
}
},
"@babel/template": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz",
@ -281,6 +289,8 @@
},
"@vitejs/plugin-react-refresh": {
"version": "1.3.6",
"resolved": "https://registry.npmjs.org/@vitejs/plugin-react-refresh/-/plugin-react-refresh-1.3.6.tgz",
"integrity": "sha512-iNR/UqhUOmFFxiezt0em9CgmiJBdWR+5jGxB2FihaoJfqGt76kiwaKoVOJVU5NYcDWMdN06LbyN2VIGIoYdsEA==",
"dev": true,
"requires": {
"@babel/core": "^7.14.8",
@ -443,6 +453,27 @@
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
"dev": true
},
"history": {
"version": "4.10.1",
"resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz",
"integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==",
"requires": {
"@babel/runtime": "^7.1.2",
"loose-envify": "^1.2.0",
"resolve-pathname": "^3.0.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0",
"value-equal": "^1.0.1"
}
},
"hoist-non-react-statics": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
"integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
"requires": {
"react-is": "^16.7.0"
}
},
"is-core-module": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz",
@ -452,6 +483,11 @@
"has": "^1.0.3"
}
},
"isarray": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
"js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
@ -480,6 +516,15 @@
"js-tokens": "^3.0.0 || ^4.0.0"
}
},
"mini-create-react-context": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/mini-create-react-context/-/mini-create-react-context-0.4.1.tgz",
"integrity": "sha512-YWCYEmd5CQeHGSAKrYvXgmzzkrvssZcuuQDDeqkT+PziKGMgE+0MCCtcKbROzocGBG1meBLl2FotlRwf4gAzbQ==",
"requires": {
"@babel/runtime": "^7.12.1",
"tiny-warning": "^1.0.3"
}
},
"minimist": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
@ -515,6 +560,14 @@
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
"path-to-regexp": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
"integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
"requires": {
"isarray": "0.0.1"
}
},
"picomatch": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
@ -532,8 +585,20 @@
"source-map-js": "^0.6.2"
}
},
"prop-types": {
"version": "15.7.2",
"resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz",
"integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==",
"requires": {
"loose-envify": "^1.4.0",
"object-assign": "^4.1.1",
"react-is": "^16.8.1"
}
},
"react": {
"version": "17.0.2",
"resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
"integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1"
@ -541,18 +606,61 @@
},
"react-dom": {
"version": "17.0.2",
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz",
"integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1",
"scheduler": "^0.20.2"
}
},
"react-is": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"react-refresh": {
"version": "0.10.0",
"resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.10.0.tgz",
"integrity": "sha512-PgidR3wST3dDYKr6b4pJoqQFpPGNKDSCDx4cZoshjXipw3LzO7mG1My2pwEzz2JVkF+inx3xRpDeQLFQGH/hsQ==",
"dev": true
},
"react-router": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-5.2.0.tgz",
"integrity": "sha512-smz1DUuFHRKdcJC0jobGo8cVbhO3x50tCL4icacOlcwDOEQPq4TMqwx3sY1TP+DvtTgz4nm3thuo7A+BK2U0Dw==",
"requires": {
"@babel/runtime": "^7.1.2",
"history": "^4.9.0",
"hoist-non-react-statics": "^3.1.0",
"loose-envify": "^1.3.1",
"mini-create-react-context": "^0.4.0",
"path-to-regexp": "^1.7.0",
"prop-types": "^15.6.2",
"react-is": "^16.6.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0"
}
},
"react-router-dom": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.2.0.tgz",
"integrity": "sha512-gxAmfylo2QUjcwxI63RhQ5G85Qqt4voZpUXSEqCwykV0baaOTQDR1f0PmY8AELqIyVc0NEZUj0Gov5lNGcXgsA==",
"requires": {
"@babel/runtime": "^7.1.2",
"history": "^4.9.0",
"loose-envify": "^1.3.1",
"prop-types": "^15.6.2",
"react-router": "5.2.0",
"tiny-invariant": "^1.0.2",
"tiny-warning": "^1.0.0"
}
},
"regenerator-runtime": {
"version": "0.13.9",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
"integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA=="
},
"resolve": {
"version": "1.20.0",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz",
@ -563,6 +671,11 @@
"path-parse": "^1.0.6"
}
},
"resolve-pathname": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz",
"integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng=="
},
"rollup": {
"version": "2.55.0",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.55.0.tgz",
@ -614,14 +727,31 @@
"has-flag": "^3.0.0"
}
},
"tiny-invariant": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz",
"integrity": "sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw=="
},
"tiny-warning": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
"integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA=="
},
"to-fast-properties": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
"integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
"dev": true
},
"value-equal": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
"integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw=="
},
"vite": {
"version": "2.4.4",
"resolved": "https://registry.npmjs.org/vite/-/vite-2.4.4.tgz",
"integrity": "sha512-m1wK6pFJKmaYA6AeZIUXyiAgUAAJzVXhIMYCdZUpCaFMGps0v0IlNJtbmPvkUhVEyautalajmnW5X6NboUPsnw==",
"dev": true,
"requires": {
"esbuild": "^0.12.8",

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

View File

@ -32,6 +32,7 @@
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}

View File

@ -6,7 +6,7 @@ export default class Footer extends Component {
return (
<>
<div className="col-lg-6 col-md-6 col-sm-12 footer">
<p>信创确实社区</p>
</div>
<div className="col-lg-6 col-md-6 col-sm-12"></div>
</>

View File

@ -5,45 +5,89 @@ export default class Header extends Component {
render() {
return (
<>
<nav className="navbar navbar-expand-lg navbar-light bg-light">
<div className="container-fluid">
<a className="navbar-brand" href="#">Navbar</a>
<button className="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span className="navbar-toggler-icon"></span>
</button>
<div className="collapse navbar-collapse" id="navbarSupportedContent">
<ul className="navbar-nav me-auto mb-2 mb-lg-0">
<li className="nav-item">
<a className="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li className="nav-item">
<a className="nav-link" href="#">Link</a>
</li>
<li className="nav-item dropdown">
<a className="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown
</a>
<ul className="dropdown-menu" aria-labelledby="navbarDropdown">
<li><a className="dropdown-item" href="#">Action</a></li>
<li><a className="dropdown-item" href="#">Another action</a></li>
<li><hr className="dropdown-divider"/></li>
<li><a className="dropdown-item" href="#">Something else here</a></li>
</ul>
</li>
<li className="nav-item">
<a className="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
</li>
<div className="alert alert-warning alert-dismissible fade show" role="alert" style={{ 'margin': 0 }}>
<strong>信创版本的确实社区来了</strong> 采用红星微服务框架全面开源包括产品文档数据库设计代码架构图
<button type="button" className="btn-close " data-bs-dismiss="alert" aria-label="Close"></button>
</div>
<header >
<div className="brand"><img src="/img/trustie_band.png" alt="" width="30" height="24" /> 信创确实社区</div>
<ul >
<li><a href="#" >首页</a></li>
<li><a href="#" >项目</a></li>
<li><a href="#" >仓库</a></li>
<li><a href="#" >日报</a></li>
<li><a href="#" >社区</a></li>
</ul>
<form className="d-flex">
<input className="form-control me-2" type="search" placeholder="Search" aria-label="Search"/>
<button className="btn btn-outline-success" type="submit">Search</button>
</form>
<div className="infobar">
<div className="searchBar">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" className="bi bi-search" viewBox="0 0 16 16">
<path d="M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z" />
</svg>
<input className="search" type="text" name="" placeholder="搜索" />
</div>&nbsp;&nbsp;
<img className="avatar" src="img/avatar.webp"></img>&nbsp;&nbsp;<span className="name">星空下的花生</span></div>
</header>
<div className="bg-primary">
<div className="container">
<div className="row align-items-center g-0">
<div className="col-xl-5 col-lg-6 col-md-12">
<div className="py-5 py-lg-0">
<h1 className="text-white display-4 fw-bold">欢迎使用信创确实社区
</h1>
<p className="text-white-50 mb-4 lead">
本社区由中国长城和国防科大王怀民院士共同创建维护皆在推广信创和开源社区的结合扩大信创开源力量生态
</p>
<a href="pages/course-filter-list.html" className="btn btn-success">浏览项目</a>
<a href="pages/sign-in.html" className="btn btn-white">参与信创开源?</a>
</div>
</div>
<div className=" col-xl-7 col-lg-6 col-md-12 text-lg-end text-center">
<img src="img/hero-img.png" alt="" className="img-fluid" />
</div>
</div>
</div>
</div>
</nav>
<div className="bg-white py-4 shadow-sm">
<div className="container">
<div className="row align-items-center g-0">
<div className="col-xl-4 col-lg-4 col-md-6 mb-lg-0 mb-4">
<div className="d-flex align-items-center">
<span className="icon-sahpe icon-lg bg-light-warning rounded-circle text-center text-dark-warning fs-4 "> <i className="fe fe-video"> </i></span>
<div className="ms-3">
<h4 className="mb-0 fw-semi-bold">80,000 在线用户</h4>
<p className="mb-0">众多高校参与群体编程</p>
</div>
</div>
</div>
<div className="col-xl-4 col-lg-4 col-md-6 mb-lg-0 mb-4">
<div className="d-flex align-items-center">
<span className="icon-sahpe icon-lg bg-light-warning rounded-circle text-center text-dark-warning fs-4 "> <i className="fe fe-users"> </i></span>
<div className="ms-3">
<h4 className="mb-0 fw-semi-bold">十年开源</h4>
<p className="mb-0">开源协作确实最牛</p>
</div>
</div>
</div>
<div className="col-xl-4 col-lg-4 col-md-12">
<div className="d-flex align-items-center">
<span className="icon-sahpe icon-lg bg-light-warning rounded-circle text-center text-dark-warning fs-4 "> <i className="fe fe-clock"> </i></span>
<div className="ms-3">
<h4 className="mb-0 fw-semi-bold">八年信创</h4>
<p className="mb-0">安全基石保驾护航</p>
</div>
</div>
</div>
</div>
</div>
</div>
</>
)
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,70 +1,138 @@
/* 共用 */
.navbar-default{
background: white;
min-height: 55px;
}
#navbar-brand{
color: #EB5424;
}
#main-nav-menu .nav-item .nav-link:hover{
border-bottom: 3px solid #EB5424;
}
body{
background: #F5F6F9;
}
.footer{
margin-top: 20px;
}
.footer a{
margin-right: 8px;
color: #666666;
font-size: 16px;
}
.footer p{
text-align: left;
font-size: 16px;
color: #7D6666;
}
.footer :hover{
color: #1B4BAE;
}
/* login */
.main,.option,.other-platform{
background:white;
margin-bottom: 20px;
}
.main{
height: 300px;
}
.main p{
font-size: 20px;
font-weight: 500;
margin:10px 0px 0px 10px;
}
.option div{
header {
height: 50px;
border: 1px solid #F7F7F7;
}
.option div a{
color: #6B4040;
background: #fff;
color: #404040;
z-index: 1030;
line-height: 50px;
border-bottom: 1px solid #E5E9EF;
}
header .brand {
float: left;
font-size: 1rem;
font-weight: bold;
margin-left: 20px;
}
.other-platform{
height: 110px;
padding: 15px;
font-size: 20px;
header ul {
float: left;
padding-inline-start: 40px;
}
.other-platform div{
margin-left: 22%;
header ul li {
float: left;
list-style: none;
cursor: pointer;
}
.other-platform div .ant-btn{
header li a {
display: block;
box-sizing: border-box;
height: 50px;
text-decoration: none;
color: #404040;
padding-left: 15px;
padding-right: 15px;
}
header li a:link{
color: #404040;
}
header li a:hover {
border-bottom: 2px solid #25c2a0;
z-index: -1;
}
header li a:active {
background: #25c2a0;
color: #fff;
}
header .infobar {
float: right;
padding-right: 20px;
}
header .avatar {
border-radius: 6px;
width: 32px;
height: 32px;
}
header .infobar .name {
font-size: 10px;
color: #083027;
}
header .searchBar {
float: left;
height: 30px;
margin-top: 10px;
border-radius: 50px;
border: 1px solid #cccccc;
padding-right: 10px;
}
header svg {
float: left;
margin-top: 6px;
margin-left: 10px;
}
/* register */
.content{
background: white;
header input {
height: 24px;
border: none;
outline: none;
box-shadow: none;
float: left;
width:120px;
margin-top:2px;
}
header input:focus {
border: none;
outline: none;
}
.btn {
display: inline-block;
font-weight: 600;
line-height: 1.6;
color: #5c5776;
text-align: center;
vertical-align: middle;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-color: transparent;
border: 1px solid transparent;
padding: .75rem 1.25rem;
font-size: .875rem;
border-radius: .25rem;
transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-check:focus+.btn-white, .btn-white, .btn-white:focus, .btn-white:hover {
color: #000;
background-color: #fff;
border-color: #fff;
}
.btn-success {
color: #fff;
background-color: #19cb98;
border-color: #19cb98;
}
.py-4 {
padding-top: 1.5rem!important;
padding-bottom: 1.5rem!important;
}
.shadow-sm {
box-shadow: 0 1px 3px rgba(3,0,71,.09)!important;
}

View File

@ -1,13 +0,0 @@
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
code {
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
monospace;
}