Unverified Commit 213b39d4 authored by Pavel Ševčík's avatar Pavel Ševčík
Browse files

Migrated to Next.js setup

parent 9f4fe026
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
max_line_length = 120
# don't ever lint node_modules
node_modules
.next
out
public
module.exports = {
root: true,
parser: "@typescript-eslint/parser",
parserOptions: {
ecmaVersion: 2018,
sourceType: "module",
ecmaFeatures: {
jsx: true,
},
warnOnUnsupportedTypeScriptVersion: true,
},
settings: {
react: {
version: "detect",
},
},
env: {
browser: true,
commonjs: true,
es6: true,
jest: true,
node: true,
},
plugins: ["@typescript-eslint", "react", "react-hooks"],
extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended", "prettier", "prettier/@typescript-eslint"],
rules: {
// https://github.com/yannickcr/eslint-plugin-react/tree/master/docs/rules
"react/forbid-foreign-prop-types": ["warn", { allowInPropTypes: true }],
"react/jsx-no-comment-textnodes": "warn",
"react/jsx-no-duplicate-props": "warn",
"react/jsx-no-target-blank": "warn",
"react/jsx-no-undef": "error",
"react/jsx-pascal-case": [
"warn",
{
allowAllCaps: true,
ignore: [],
},
],
"react/jsx-uses-react": "warn",
"react/jsx-uses-vars": "warn",
"react/no-danger-with-children": "warn",
"react/no-direct-mutation-state": "warn",
"react/no-is-mounted": "warn",
"react/no-typos": "error",
"react/react-in-jsx-scope": "error",
"react/require-render-return": "error",
"react/style-prop-object": "warn",
// https://github.com/facebook/react/tree/master/packages/eslint-plugin-react-hooks
"react-hooks/rules-of-hooks": "error",
},
};
# Node modules
node_modules
# Next.js dev build directory
.next
out
!src
# Ignore everything outside src folder
!src
# Ignore minified files
**/*.min.*
materialize.css
{
"printWidth": 120
}
materialize.min.css
materialize.css
{
"extends": ["stylelint-config-standard", "stylelint-config-prettier"]
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PGP | RoninDojo.io</title>
<!-- CSS -->
<link href="https://fonts.googleapis.com/css2?family=Hammersmith+One&family=Raleway:wght@300&family=Roboto+Slab&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link href="/css/materialize.css" type="text/css" rel="stylesheet" media="screen,projection"/>
<link href="/css/defaults.css" type="text/css" rel="stylesheet"/>
<link href="/css/pgp-style.css" type="text/css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js" defer></script>
<script src="/js/materialize.js" defer></script>
<script src="/js/init.js" defer></script>
</head>
<body>
<nav id="home" class="grey darken-3" role="navigation">
<div class="nav-wrapper container">
<a href="https://ronindojo.io"><img id="logo-container" class="brand-logo" src="/assets/images/RoninDojo-logo.png" alt="RoninDojo Logo"></a>
<ul class="right hide-on-med-and-down">
<li><a href="/">Home</a></li>
<li><a href="/downloads">Downloads</a></li>
<li><a href="/#features">Features</a></li>
<li><a href="/#products">Products</a></li>
<li><a href="/#resources">Resources</a></li>
<li><a target= "_blank" href="https://code.samourai.io/ronindojo/RoninDojo/-/wikis/home">Wiki</a></li>
</ul>
<ul id="nav-mobile" class="sidenav grey darken-3">
<li><a class="white-text" href="#detailed-info">Home</a></li>
<li><a class="white-text" href="/downloads">Downloads</a></li>
<li><a class="white-text" href="#features">Features</a></li>
<li><a class="white-text" href="#products">Products</a></li>
<li><a class="white-text" href="#resources">Resources</a></li>
<li><a class="white-text" target= "_blank" href="https://code.samourai.io/ronindojo/RoninDojo/-/wikis/home">Wiki</a></li>
</ul>
<a href="#" data-target="nav-mobile" class="sidenav-trigger"><i class="material-icons">menu</i></a>
</div>
</nav>
<div class="container">
<div class="section">
<div class="row">
<div class="col s12 center">
<h3><i class="mdi-content-send white-text"></i></h3>
<h3 class="white-text">Canary</h3>
<div>
<br>
</div>
<pre class="left-align grey-text text-lighten-1 code">
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
The maintainer(s) and admins of the open source software project
known as RoninDojo have received and complied with 0 (zero)
requests for information of any kind by any third parties
including but not limited to government agencies. We will
renew this notice in 365 days time. If this notice fails
to be renewed by then, you should assume the worst.
I am the admin of ronindojo.io.
I am in control of my PGP key.
I will update this canary within 365 days.
Today is 2020-07-22.
Latest bitcoin block hash:
00000000000000000006d5eeb634894430340f3140eacb92d75f0565cac88cb2
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEeAX5h5pdQDTystL5mBjzecHksl8FAl8YjDgACgkQmBjzecHk
sl/vCwf/ULxW0jlr/FpPlFG/rrd9/lZDVNoaimb+XxVGEI+IsK4mhQU9E4YsQp93
5y3fVZ2VLGFPgYnRVRXBLPvhKoLqIuqh7I8sZRynFAwCsmQCF8HVLpO9ga2CA5rI
PPRTwKOZO8L5M2y7LxvFX+nawn6GmgN+bJf1ijlwSrAmUuQYUJ/5havSSx7ReldS
BPvLCLFFyXspQ8BlndToZX8QeqLBrQaOemRTFv1QEwvXZzCxu2uiL95Qs3TmPive
PJnIrl3HCTv/HiHSqjixVbn+qWQ/TfklFJG/k0hWRuyU9MOlh9Jpvaj++RJ0iq/f
tzr3y7SaWJl091Jc6v3evf3/Odv22w==
=oKB0
-----END PGP SIGNATURE-----
</pre>
</div>
</div>
</div>
</div>
<footer id="resources" class="page-footer grey darken-3">
<div class="container">
<div class="row">
<div class="col l6 s12">
<h5 class="white-text">About Us</h5>
<p class="grey-text text-lighten-4">Our team of Ronin are Samourai Wallet users and enthusiasts. This project was born out of a passion of bringing sovereignty to as many people as possible by building and maintaining software around the Samourai stack.</p>
</div>
<div class="col l3 s12">
<h5 class="white-text">Resources</h5>
<ul>
<li><a class="red-text text-darken-2" href="https://code.samourai.io/ronindojo/RoninDojo/-/wikis/Troubleshooting-&-FAQ#faq">FAQ</a></li>
<li><a class="red-text text-darken-2" href="/pgp">PGP Keys</a></li>
<li><a class="red-text text-darken-2" href="/downloads">RoninOS</a></li>
<li><a class="red-text text-darken-2" href="https://code.samourai.io/ronindojo/RoninDojo/-/wikis/Troubleshooting-&-FAQ#troubleshooting">Troubleshoot</a></li>
</ul>
</div>
<div class="col l3 s12">
<h5 class="white-text">Social</h5>
<ul>
<li><a class="red-text text-darken-2" href="mailto:ronindojo@ronindojo.io">Contact</a></li>
<li><a class="red-text text-darken-2" href="mailto:support@ronindojo.io">Support</a></li>
<li><a class="red-text text-darken-2" href="https://t.me/RoninDojoUI">Telegram</a></li>
<li><a class="red-text text-darken-2" href="https://twitter.com/RoninDojoUI">Twitter</a></li>
</ul>
</div>
</div>
</div>
<div class="footer-copyright grey-darken0-2">
<div class="container">
Founded 2019 @ The Local Talent Bar, America - © 2020 Ronin Dev Group - <a class="red-text text-darken-2" href="/canary">Warrant Canary</a>
</div>
</div>
</footer>
</body>
</html>
h1 {
font-family: 'Hammersmith One', sans-serif;
padding-top: 50px;
}
h3 {
font-family: 'Hammersmith One', sans-serif;
}
h4 h5 {
font-family: 'Roboto Slab', serif;
}
@media only screen and (max-width: 768px) {
#home {
min-height: 61px;
}
}
@media only screen and (max-width: 768px) {
nav .brand-logo {
padding-top: 1px;
}
}
@media only screen and (min-width: 768px) {
nav .brand-logo {
padding-top: 2px;
}
}
p {
font-family: 'Raleway', sans-serif;
line-height: 2rem;
}
.sidenav-trigger {
color: rgb(192, 19, 19);
}
footer.page-footer {
margin: 0;
}
h1 {
font-family: 'Hammersmith One', sans-serif;
padding-top: 50px;
}
h3 {
font-family: 'Hammersmith One', sans-serif;
}
h4 h5 {
font-family: 'Roboto Slab', serif;
}
@media only screen and (max-width: 768px) {
#home {
min-height: 61px;
}
}
@media only screen and (max-width: 768px) {
nav .brand-logo {
padding-top: 1px;
}
}
@media only screen and (min-width: 768px) {
nav .brand-logo {
padding-top: 2px;
}
}
p {
font-family: 'Raleway', sans-serif;
line-height: 2rem;
}
.sidenav-trigger {
color: rgb(192, 19, 19);
}
footer.page-footer {
margin: 0;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Homepage | RoninDojo.io</title>
<!-- CSS -->
<link href="https://fonts.googleapis.com/css2?family=Hammersmith+One&family=Raleway:wght@300&family=Roboto+Slab&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link href="/css/materialize.css" type="text/css" rel="stylesheet" media="screen,projection"/>
<link href="/css/defaults.css" type="text/css" rel="stylesheet"/>
<link href="/css/style.css" type="text/css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js" defer></script>
<script src="/js/materialize.js" defer></script>
<script src="/js/init.js" defer></script>
</head>
<body>
<nav id="home" class="grey darken-4" role="navigation">
<div class="nav-wrapper container">
<a href="https://ronindojo.io"><img id="logo-container" class="brand-logo" src="/assets/images/RoninDojo-logo.png" alt="RoninDojo Logo"></a>
<ul class="right hide-on-med-and-down">
<li><a href="#home">Home</a></li>
<li><a href="/downloads">Downloads</a></li>
<li><a href="#features">Features</a></li>
<li><a href="#products">Products</a></li>
<li><a href="#resources">Resources</a></li>
<li><a target= "_blank" href="https://wiki.ronindojo.io">Wiki</a></li>
</ul>
<ul id="nav-mobile" class="sidenav grey darken-3">
<li><a class="white-text" href="#detailed-info">Home</a></li>
<li><a class="white-text" href="/downloads">Downloads</a></li>
<li><a class="white-text" href="#features">Features</a></li>
<li><a class="white-text" href="#products">Products</a></li>
<li><a class="white-text" href="#resources">Resources</a></li>
<li><a class="white-text" target= "_blank" href="https://wiki.ronindojo.io">Wiki</a></li>
</ul>
<a href="#" data-target="nav-mobile" class="sidenav-trigger"><i class="material-icons">menu</i></a>
</div>
</nav>
<div id="index-banner" class="parallax-container">
<div class="section no-pad-bot">
<div class="container">
<br><br>
<h1 class="header center white-text">RoninDojo</h1>
<div class="row center">
<h5 class="header col s12 light">A private and user-friendly way to power Samourai Wallet. </h5>
</div>
<div class="row center">
<a href="https://wiki.ronindojo.io" id="start-button" class="btn-large waves-effect waves-light red darken-3">Get Started</a>
</div>
<br><br>
</div>
</div>
<div class="parallax"><img src="/assets/backgrounds/rsz_ronin_black.png" alt="Unsplashed background img 1"></div>
</div>
<div class="container">
<div class="section">
<div class="row">
<div class="col s12 center">
<h3><i class="mdi-content-send"></i></h3>
<h4 class="center white-text">Overview</h4>
<p class="left-align light">RoninDojo is a Samourai Wallet Community-driven Bitcoin full node stack optimized for Single Board Computers, like the Raspberry Pi 4. Our user interfaces and powerful features are fit for any level Bitcoiner. RoninDojo is focused on providing the tools you need to safely and securely use your Samourai Wallet and Hardware Wallet so you can "Be your own Master!".</p>
</div>
<div class="col s12 center carousel carousel-slider z-depth-5">
<a class="carousel-item" href="#one!"><img src="/assets/images/DMT-carousel.png" alt="Dojo Maintenance Tool"></a>
<a class="carousel-item" href="#two!"><img src="/assets/images/Explorer-carousel.png" alt="Block Explorer"></a>
<a class="carousel-item" href="#three!"><img src="/assets/images/RoninDojoCLI-product.png" alt="RoninDojo"></a>
<a class="carousel-item" href="#four!"><img src="/assets/images/KYCP-carousel.jpg" alt="KYCP.org"></a>
<!--<a class="carousel-item" href="#five!"><img src="/assets/images/"></a>-->
</div>
</div>
</div>
</div>
<div class="parallax-container valign-wrapper">
<div class="section no-pad-bot">
<div class="container">
<div class="row center">
<h5 class="header col s12 light">"The ultimate aim of martial arts is not having to use them."</h5>
</div>
</div>
</div>
<div class="parallax"><img src="/assets/backgrounds/rsz_ronin_ibd.png" alt="Unsplashed background img 2"></div>
</div>
<div class="container">
<div class="section">
<!-- Icon Section -->
<div class="row">
<h4 id="features" class="center white-text">Features</h4>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">add_circle_outline</i></h2>
<h5 class="center white-text">Simple Interface</h5>
<p class="left-align light">Control and interact with your Dojo with our simple Menu options, designed to help users of all levels be able to Master their Dojo.</p>
</div>
</div>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">business_center</i></h2>
<h5 class="center white-text">Bitcoin Fullnode</h5>
<p class="left-align light">Maintain your privacy from the start by utilizing your own Bitcoin Full Node. RoninDojo allows you to verify and broadcast all of your own transactions.</p>
</div>
</div>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">dvr</i></h2>
<h5 class="center white-text">Block Explorer</h5>
<p class="left-align light">Check all your own transactions, the mempool, and bitcoin addresses privately by using the built in Block Explorer. Access it anywhere at any time utilizing Tor!</p>
</div>
</div>
</div>
<!-- Icon Section 2 -->
<div class="row">
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">sync</i></h2>
<h5 class="center white-text">Whirlpool</h5>
<p class="left-align light">The ONLY coinjoin protocol that guarantees to break all deterministic links! Run it 24/7 to maximize your free remixes and maximize your privacy benefits.</p>
</div>
</div>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">computer</i></h2>
<h5 class="center white-text">Electrum Server</h5>
<p class="left-align light">Using a Hardware Wallet? We’ve got you covered. Use it privately by connecting your device to your own Electrum Server (Electrs) and avoid leaking data!</p>
</div>
</div>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">lock_outline</i></h2>
<h5 class="center white-text">Tor Daemon</h5>
<p class="left-align light">Everything on RoninDojo is ran over Tor. This means you don’t have to mess with your router, open any ports, and are still able to gain full benefits of Dojo!</p>
</div>
</div>
</div>
<!-- Icon Section 3 -->
<div class="row">
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">equalizer</i></h2>
<h5 class="center white-text">Whirlpool Stat Tool</h5>
<p class="left-align light">Calculate your anonymity set to determine how many possible transactions your Whirlpool’d Bitcoin could be!</p>
</div>
</div>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">filter_list</i></h2>
<h5 class="center white-text">Indexer</h5>
<p class="left-align light">Don’t use a Hardware Wallet? No problem! Use this Samourai specific indexer for enhanced wallet recovery and explorer functionality with this indexer.</p>
</div>
</div>
<div class="col s12 m4">
<div class="icon-block">
<h2 class="center red-text darken-3"><i class="material-icons">enhanced_encryption</i></h2>
<h5 class="center white-text">LUKS Encryption</h5>
<p class="left-align light">Coming soon! Encryption is a key element of Bitcoin and cyber security. We are proud to be one of the only Node options that offers full Disk encryption to protect your data!</p>
</div>
</div>
</div>
</div>
</div>
<div class="parallax-container valign-wrapper">
<div class="section no-pad-bot">
<div class="container">
<div class="row center">
<h5 class="header col s12 light">"Even if a man has no natural ability, he can be a warrior."</h5>
</div>
</div>
</div>
<div class="parallax"><img src="/assets/backgrounds/rsz_ronin_ibd.png" alt="Unsplashed background img 3"></div>
</div>
<div class="container">
<div class="section">
<div class="row">
<div class="col s12 center">
<h3><i class="mdi-content-send white-text"></i></h3>
<h4 id="products" class="center white-text">Products</h4>
<div>
<br>
</div>
<h6 class="center white-text">RoninUI</h6>
<p class="center light">Use RoninUI to manage your RoninDojo with a modern and streamlined interface.</p>
<img width="650" class="responsive-img z-depth-5" src="/assets/images/RoninDojoGUI-product.png" alt="RoninUI Image">
<div>
<br>
</div>
<h6 class="center white-text">RoninDojo</h6>
<p class="center light">Privately power your Samourai Wallet using open source software from the Ronin development team.</p>
<img width="650" class="responsive-img z-depth-5" src="/assets/images/RoninDojoCLI-product.png" alt="RoninDojo Image">
</div>
</div>
</div>
</div>
<div class="parallax-container valign-wrapper">
<div class="section no-pad-bot">
<div class="container">
<div class="row center">
<h5 class="header col s12 light">Coming Soon</h5>
</div>
</div>
</div>
<div class="parallax"><img src="/assets/backgrounds/rsz_pinenode.png" alt="product-image.png"></div>
</div>
<div class="container">
<div class="section">
<div class="row">
<div class="col s12 center">
<h3><i class="mdi-content-send white-text"></i></h3>
<h4 id="detailed-info" class="center white-text">Why RoninDojo?</h4>
<p class="left-align light">RoninDojo has a Graphic User Interface (GUI) currently in beta and a Command Line Interface (CLI) that is free and open source for those that prefer. This software assists users in quickly deploying a privacy focused bitcoin full node.</p>
<ul class="collection grey darken-3">
<li><a class="collection-item left-align white-text grey darken-2">Verify and Broadcast all of your own transactions on your Samourai and Hardware Wallets</a></li>
<li><a class="collection-item left-align white-text grey darken-1">Keep your XPUBs private and share with no one</a></li>
<li><a class="collection-item left-align white-text grey darken-2">Continuously mix your coins for increased privacy utilizing the Whirlpool Protocol</a></li>
<li><a class="collection-item left-align white-text grey darken-1">Utilize your own Bitcoin Explorer from anywhere through Tor</a></li>
<li><a class="collection-item left-align white-text grey darken-2">Keep your device secure with no unnecessary ports open</a></li>
<li><a class="collection-item left-align white-text grey darken-1">Check your Whirlpool Anonset with Whirlpool Stat Tool</a></li>
<li><a class="collection-item left-align white-text grey darken-2">Obtain the latest updates from Samourai Wallet quickly</a></li>
<li><a class="collection-item left-align white-text grey darken-1">Easy upgrades from the user interface</a></li>
<li><a class="collection-item left-align white-text grey darken-2">Learn what our scripts and code does with our extensive comments and wiki page</a></li>
<li><a class="collection-item left-align white-text grey darken-1">Most importantly, Be your own Bank!</a></li>
</ul>
</div>
</div>
</div>
</div>
<div class="parallax-container valign-wrapper">
<div class="section no-pad-bot">
<div class="container">
<div class="row center">
<h5 class="header col s12 light">"Know your enemy, know his sword."</h5>
</div>
</div>
</div>
<div class="parallax"><img src="/assets/backgrounds/rsz_ronin_black.png" alt="Unsplashed background img 2"></div>
</div>
<footer id="resources" class="page-footer grey darken-3">
<div class="container">
<div class="row">
<div class="col l6 s12">
<h5 class="white-text">About Us</h5>
<p class="grey-text text-lighten-4">Our team of Ronin are Samourai Wallet users and enthusiasts. This project was born out of a passion of bringing sovereignty to as many people as possible by building and maintaining software around the Samourai stack.</p>
</div>
<div class="col l3 s12">
<h5 class="white-text">Resources</h5>
<ul>
<li><a class="red-text text-darken-2" href="https://wiki.ronindojo.io/en/FAQ">FAQ</a></li>
<li><a class="red-text text-darken-2" href="/pgp">PGP Keys</a></li>
<li><a class="red-text text-darken-2" href="/downloads">RoninOS</a></li>
<li><a class="red-text text-darken-2" href="https://wiki.ronindojo.io/en/Troubleshooting">Troubleshoot</a></li>
</ul>
</div>
<div class="col l3 s12">
<h5 class="white-text">Social</h5>
<ul>
<li><a class="red-text text-darken-2" href="mailto:ronindojo@ronindojo.io">Contact</a></li>
<li><a class="red-text text-darken-2" href="mailto:support@ronindojo.io">Support</a></li>
<li><a class="red-text text-darken-2" href="https://t.me/RoninDojoUI">Telegram</a></li>
<li><a class="red-text text-darken-2" href="https://twitter.com/RoninDojoUI">Twitter</a></li>
</ul>
</div>
</div>
</div>
<div class="footer-copyright grey darken-4">
<div class="container">
Founded 2019 @ The Local Talent Bar, America - © 2020 Ronin Dev Group - <a class="red-text text-darken-2" href="/canary">Warrant Canary</a>
</div>
</div>
</footer>
</body>
</html>
/// <reference types="next" />
/// <reference types="next/types/global" />
module.exports = {
reactStrictMode: true,
exportTrailingSlash: true,
};
{
"name": "ronin-website",
"version": "1.0.0",
"main": "index.js",
"repository": "git@code.samourai.io:ronindojo/ronin-website.git",
"license": "MIT",
"private": true,
"scripts": {
"dev": "next dev",