Added the Sheepstar Website V2

This commit is contained in:
Mathias Wagner 2022-09-06 17:08:24 +02:00
parent 3916a687fc
commit 0a60e6db0d
34 changed files with 35406 additions and 0 deletions

23
SheepstarWebsiteV2/.gitignore vendored Normal file
View File

@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*

5
SheepstarWebsiteV2/.idea/.gitignore generated vendored Normal file
View File

@ -0,0 +1,5 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/

7
SheepstarWebsiteV2/.idea/discord.xml generated Normal file
View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
</component>
</project>

8
SheepstarWebsiteV2/.idea/modules.xml generated Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/sheepstar-website.iml" filepath="$PROJECT_DIR$/.idea/sheepstar-website.iml" />
</modules>
</component>
</project>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/temp" />
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
<excludeFolder url="file://$MODULE_DIR$/tmp" />
<excludeFolder url="file://$MODULE_DIR$/build" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

6
SheepstarWebsiteV2/.idea/vcs.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectTasksOptions">
<TaskOptions isEnabled="false">
<option name="arguments" value="$FileName$:$FileNameWithoutExtension$.css" />
<option name="checkSyntaxErrors" value="true" />
<option name="description" />
<option name="exitCodeBehavior" value="ERROR" />
<option name="fileExtension" value="sass" />
<option name="immediateSync" value="true" />
<option name="name" value="Sass" />
<option name="output" value="$FileNameWithoutExtension$.css:$FileNameWithoutExtension$.css.map" />
<option name="outputFilters">
<array />
</option>
<option name="outputFromStdout" value="false" />
<option name="program" value="sass" />
<option name="runOnExternalChanges" value="true" />
<option name="scopeName" value="Project Files" />
<option name="trackOnlyRoot" value="true" />
<option name="workingDir" value="$FileDir$" />
<envs />
</TaskOptions>
</component>
</project>

View File

@ -0,0 +1,70 @@
# Getting Started with Create React App
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
## Available Scripts
In the project directory, you can run:
### `yarn start`
Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
The page will reload if you make edits.\
You will also see any lint errors in the console.
### `yarn test`
Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
### `yarn build`
Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
### `yarn eject`
**Note: this is a one-way operation. Once you `eject`, you cant go back!**
If you arent satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point youre on your own.
You dont have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldnt feel obligated to use this feature. However we understand that this tool wouldnt be useful if you couldnt customize it when you are ready for it.
## Learn More
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
To learn React, check out the [React documentation](https://reactjs.org/).
### Code Splitting
This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)
### Analyzing the Bundle Size
This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)
### Making a Progressive Web App
This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)
### Advanced Configuration
This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration)
### Deployment
This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment)
### `yarn build` fails to minify
This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)

25595
SheepstarWebsiteV2/package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,44 @@
{
"name": "sheepstar-website",
"version": "0.1.0",
"private": true,
"dependencies": {
"@fortawesome/fontawesome": "^1.1.8",
"@fortawesome/fontawesome-svg-core": "^6.2.0",
"@fortawesome/free-solid-svg-icons": "^6.2.0",
"@fortawesome/react-fontawesome": "^0.2.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^14.4.3",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.3.0",
"react-scripts": "5.0.1",
"sass": "^1.54.8",
"web-vitals": "^3.0.1"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"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 not shown.

After

Width:  |  Height:  |  Size: 655 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

View File

@ -0,0 +1,19 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<link rel="icon" href="%PUBLIC_URL%/assets/logo.png"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="theme-color" content="#000000"/>
<meta name="description" content="The official sheepstar website"/>
<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=Poppins:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css" integrity="sha512-1ycn6IcaQQ40/MKBW2W4Rhis/DbILU74C1vSrLJxCq57o941Ym01SwNsOMqvEBFlcgUa6xLiPY/NS5R+E6ztJQ==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<title>Sheepstar</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
</body>
</html>

View File

@ -0,0 +1,3 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:

View File

@ -0,0 +1,31 @@
import Navigation from "./components/Navigation";
import {BrowserRouter as Router, Route, Routes} from "react-router-dom";
import Home from "./pages/Home";
import "./styles/Home.sass";
import Footer from "./components/Footer";
import Imprint from "./pages/Imprint";
import Premium from "./pages/Premium";
import PrivacyPolicy from "./pages/PrivacyPolicy";
function App() {
return (
<Router>
<div className="App">
<div className="page">
<Navigation/>
<div className="content">
<Routes>
<Route path="/" element={<Home/>} />
<Route path="/imprint" element={<Imprint/>} />
<Route path="/privacy" element={<PrivacyPolicy/>} />
<Route path="/premium" element={<Premium/>} />
</Routes>
</div>
<Footer/>
</div>
</div>
</Router>
);
}
export default App;

View File

@ -0,0 +1,19 @@
import "../styles/Footer.sass";
import {Link} from "react-router-dom";
function Footer() {
return (
<div className="footer">
<div className="footer-left">
<p>© Sheepstar {new Date().getFullYear()}</p>
</div>
<div className="footer-right">
<Link to="/privacy">Privacy Policy</Link>
<Link to="/imprint">Imprint</Link>
</div>
</div>
)
}
export default Footer;

View File

@ -0,0 +1,55 @@
import "../styles/Navigation.sass";
import {Link} from "react-router-dom";
import {FontAwesomeIcon} from '@fortawesome/react-fontawesome';
import {faBars} from "@fortawesome/free-solid-svg-icons";
const navigation = [
{"name": "Home", "type": "link", "to": "/"},
// {"name": "Dashboard", "type": "url", "to": "https://dash.sheepstar.xyz"},
// {"name": "Features", "type": "link", "to": "/features"},
{"name": "Documentation", "type": "url", "to": "https://wiki.sheepstar.xyz"},
{"name": "Donate", "type": "url", "to": "https://www.buymeacoffee.com/sheepstarbot"}
]
function Navigation() {
return (
<nav className="navigation">
<div className="navigation_top">
<Link to="/"><img src="/assets/logo.png" className="page_logo" alt="Logo"/></Link>
<ul className="navigation_items" id="navigation_items">
{navigation.map((value) => <li key={value.name}>{value.type === "link" ? <Link to={value.to}>{value.name}</Link>
: <a href={value.to}>{value.name}</a>}</li>
)}
</ul>
<div className="navigation_right">
<div className="menu" onClick={toggleMobileNavigation}>
<FontAwesomeIcon icon={faBars}/>
</div>
</div>
</div>
<div className="navigation_mobile">
<ul className="navigation_items_mobile" id="navigation_items_mobile">
{navigation.map((value) => {
return value.type === "link" ? <li key={value.name}><Link to={value.to}>{value.name}</Link></li>
: <li key={value.name}><a href={value.to}>{value.name}</a></li>
})}
</ul>
</div>
</nav>
)
}
function toggleMobileNavigation() {
const x = document.getElementById("navigation_items_mobile");
if (x.className === "navigation_items_mobile") {
x.className += " responsive";
} else {
x.className = "navigation_items_mobile";
}
}
export default Navigation;

View File

@ -0,0 +1,17 @@
body {
background-color: #36393F;
margin: 0;
}
* {
font-family: "Poppins", sans-serif;
font-size: 24px;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.content {
padding: 100px 10px 120px;
}
/*# sourceMappingURL=index.css.map */

View File

@ -0,0 +1 @@
{"version":3,"sourceRoot":"","sources":["index.sass"],"names":[],"mappings":"AAAA;EACE;EACA;;;AAEF;EACE;EACA;EACA;EACA;;;AAEF;EACE","file":"index.css"}

View File

@ -0,0 +1,14 @@
import React from 'react';
import {createRoot} from 'react-dom/client';
import './index.sass';
import App from './App';
const container = document.getElementById('root');
const root = createRoot(container);
root.render(
<React.StrictMode>
<App />
</React.StrictMode>,
);

View File

@ -0,0 +1,12 @@
body
background-color: #36393F
margin: 0
*
font-family: 'Poppins', sans-serif
font-size: 24px
-webkit-font-smoothing: antialiased
-moz-osx-font-smoothing: grayscale
.content
padding: 100px 10px 120px

View File

@ -0,0 +1,33 @@
import "../styles/Button.sass";
function Home() {
return (
<div className="home-wrapper">
<div className="home-left">
<h1 className="title">Sheepstar</h1>
<p><i>The best multifunctional Discord bot with all the tools you need <br/> to create
the <b>best</b> discord server ever.</i><br/><br/><span className="fancy">👀 Big update coming soon</span></p>
<div className="interactions">
<a href="https://invite.sheepstar.xyz">
<button>Invite</button>
</a>
<a href="https://support.sheepstar.xyz">
<button>Support</button>
</a>
<a href="https://wiki.sheepstar.xyz">
<button>Docs</button>
</a>
</div>
</div>
<div className="home-right">
<img className="sr_sitting" src="/assets/sheepstar_sitting.png" alt="Sheepstar sitting"/>
</div>
</div>
)
}
export default Home;

View File

@ -0,0 +1,25 @@
import "../styles/Imprint.sass";
function Imprint() {
return (
<div className="imprint_wrapper">
<div className="imprint">
<div className="imprint_section">
<h2>Information in accordance with section 5 TMG</h2>
<p>Leon Fleß</p>
<p>Eichendorffstraße 5</p>
<p>91301 Forchheim</p>
<p>Germany</p>
</div>
<div className="contact_section">
<h2>Contact</h2>
<p><b>Telephone: </b>+49 15678 716015</p>
<p><b>E-Mail: </b> leon [at] sheepstar.xyz</p>
</div>
<h3>Sheepstar is not affiliated with Discord Inc.</h3>
</div>
</div>
)
}
export default Imprint;

View File

@ -0,0 +1,10 @@
import "../styles/Premium.sass";
export default function Premium() {
return (
<div className="premium_wrapper">
<h2 className="premium_text">👀</h2>
<p className="premium_sub_text">Just wait a bit longer</p>
</div>
)
}

View File

@ -0,0 +1,36 @@
import "../styles/PrivacyPolicy.sass";
function Imprint() {
return (
<div className="privacy_wrapper">
<h2>Privacy Policy</h2>
<h3>"Sheepstar Bot"</h3>
<p>Sheepstar is a multifunctional "<a href="https://discord.com/">Discord</a> Bot" to ehance the experience on your Discord server.</p>
<h3>1. What we collect</h3>
<p><b>Message Data</b> - Message ID, Content, Date</p>
<p>Usage: Global Chat Function, Giveaway Function, Moderation Function, <br/>Poll Function, Custom Bot Settings</p>
<br/>
<p><b>Server Data</b> - Guild ID, Language, Channel IDs</p>
<p>Usage: Global Chat Function, Giveaway Function, Moderation Function, <br/>Poll Function, Custom Bot Settings</p>
<br/>
<p><b>User Data</b> - Client ID</p>
<p>Usage: Global Chat Function, Moderation Function</p>
<br/>
<h3>2. How we store your data</h3>
<p>All the above data is securely stored in a secured database on our server. <br/>We collect this information only from users and servers that use our bot. <br/>Only our team can access this data.</p>
<h3>3. Data removal</h3>
<p>If you want your data removed, you can open a ticket in our Discord Support Server (Join <a
href="https://support.sheepstar.xyz">here</a>) or by writing a email to <br/> support [at] sheepstar.xyz
</p>
</div>
)
}
export default Imprint;

View File

@ -0,0 +1,8 @@
button
font-weight: bold
color: #FFFFFF
background-color: #4C3DE1
border: none
border-radius: 0.25rem
padding: 10px 25px
cursor: pointer

View File

@ -0,0 +1,27 @@
.footer
background-color: #2F3136
position: fixed
width: 100%
left: 0
bottom: 0
display: flex
flex-wrap: wrap
justify-content: space-between
padding-bottom: 5px
padding-top: 5px
.footer-left
padding-left: 20px
.footer-left p
color: white
.footer-right
display: flex
align-items: center
a
padding-right: 20px
padding-left: 10px
color: #FFFFFF
text-decoration: none

View File

@ -0,0 +1,53 @@
.home-wrapper
padding: 100px
display: flex
justify-content: center
p
color: #FFFFFF
.fancy
background-color: #2F3136
padding: 20px
border-radius: 10px
.title
color: #5865F2
font-size: 96px
margin: 0
.interactions
display: flex
align-content: center
padding-top: 40px
a
padding-right: 30px
.home-right
padding-left: 15rem
.sr_sitting
position: relative
width: 500px
height: 500px
@media screen and (max-width: 1340px)
.home-right
padding-left: 0
@media screen and (max-width: 960px)
.home-wrapper
padding: 2px
p, i, b
color: #FFFFFF
font-size: 22px
margin: 0
.home-right
display: none
@media screen and (max-width: 740px)
.title
font-size: 64px
.interactions a
padding-right: 5px

View File

@ -0,0 +1,13 @@
.imprint_wrapper
text-align: center
h2
color: #5865F2
font-size: 24pt
p
color: #FFFFFF
line-height: 12px
h3
color: #4C3DE1
.contact_section
padding-bottom: 10px

View File

@ -0,0 +1,66 @@
//////////////////////////////////////////
// NAVIGATION
//////////////////////////////////////////
.navigation
position: fixed
width: 100%
background-color: #4c3de1
color: #FFFFFF
padding: 0 10px
.navigation_top
display: flex
align-items: center
.navigation a
color: #efefef
font-weight: 600
text-decoration: none
.navigation a:hover
color: #FFFFFF
.navigation img
width: 50px
height: 50px
border-radius: 0.5rem
.navigation ul
padding-left: 10px
.navigation_items li
display: inline
padding-left: 15px
padding-right: 20px
.navigation_items_mobile
display: none
padding: 0
.navigation_items_mobile li
display: flex
margin-top: 20px
.navigation_right
position: absolute
right: 0
margin-right: 25px
.navigation_right .profile
display: flex
align-items: center
.navigation .menu
display: none
@media screen and (max-width: 740px)
.navigation_items
display: none
.navigation_items_mobile.responsive
display: inherit
transition: width 2s, height 4s
.navigation .menu
display: inherit

View File

@ -0,0 +1,10 @@
.premium_wrapper
text-align: center
.premium_text
color: #FFFFFF
font-size: 128px
line-height: 12px
.premium_sub_text
color: #FFFFFF

View File

@ -0,0 +1,21 @@
.privacy_wrapper
text-align: center
b
color: #5865F2
hr
width: 30px
border: #4C3DE1 2px solid
border-radius: 100px
h2
color: #5865F2
font-size: 24pt
p
color: #FFFFFF
margin: 0
h3
color: #4C3DE1
a
color: #4C3DE1
.contact_section
padding-bottom: 10px

9137
SheepstarWebsiteV2/yarn.lock Normal file

File diff suppressed because it is too large Load Diff