-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Kârūn The Rich
committed
May 25, 2024
1 parent
2c4e956
commit 3c86612
Showing
21 changed files
with
236 additions
and
53 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
import request from 'supertest'; | ||
import app from '../app'; | ||
|
||
describe('GET /', () => { | ||
let get: request.Test; | ||
beforeEach(() => { | ||
get = request(app).get('/'); | ||
}); | ||
it('should return w/an HTTP code = 302 Found', async () => { | ||
await get.expect(302); | ||
}); | ||
}); | ||
describe('GET /*/manifest.json', () => { | ||
let get: request.Test; | ||
beforeEach(() => { | ||
get = request(app).get('/home/manifest.json'); | ||
}); | ||
it('should return w/an HTTP code = 302 Found', async () => { | ||
await get.expect(302); | ||
}); | ||
}); | ||
describe('GET /home', () => { | ||
let get: request.Test; | ||
beforeEach(() => { | ||
get = request(app).get('/home'); | ||
}); | ||
it('should return w/an HTTP code = 200 OK', async () => { | ||
await get.expect(200); | ||
}); | ||
it('should return w/a Content-Type ~ html', async () => { | ||
await get.expect('Content-Type', /html/) | ||
}); | ||
it('should return w/a Content-Length > 0', async () => { | ||
await get.expect((res) => { | ||
const length = BigInt(res.headers['content-length']); | ||
expect(length).toBeGreaterThan(0); | ||
}); | ||
}); | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
import { Router } from 'express'; | ||
import { env_of } from './functions'; | ||
const router = Router(); | ||
|
||
/** REDIRECT to manifest.json. */ | ||
router.get(/\/[^/]+\/manifest\.json$/, (req, res) => { | ||
res.redirect('/manifest.json'); | ||
}); | ||
/** REDIRECT to home page. */ | ||
router.get('/', (req, res) => { | ||
res.redirect('/home'); | ||
}); | ||
/** GET home page. */ | ||
router.get('/home', (req, res) => { | ||
res.render('home/home.pig', { | ||
DESCRIPTION: 'Mine & Mint Proof-of-Work XPower Tokens', | ||
TITLE: 'XPower', ...env_of(req), | ||
}); | ||
}); | ||
export default router; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<div class=two-card><div class="d-flex flex-column lhs"><h1>Mine & Mint Proof-of-Work XPower Tokens</h1><p>Mining XPower <strong>XPOW</strong> tokens is simple and rewarding: By using computational power to solve complex puzzles, you can earn tokens.<p>The effort put into solving these puzzles ensures that everyone has a fair chance to acquire them — for widespread distribution.<div class="align-items-center d-none d-sm-flex flex-grow-1 justify-content-center logo"><img alt="XPOW logo"height=128 src=images/svg/xpow.svg width=128></div></div><div class=rhs><img alt="Mine XPOW"height=1442 src=/images/jpg/desktop-mine.jpg width=1002></div></div><hr><div class=two-card><div class="d-flex flex-column lhs"><h1>Mint stakeable XPower NFTs</h1><p>Creating XPower NFTs is unique: By depositing your <strong>XPOW</strong>, you can mint NFTs that represent something that's similar to bonds.<p>These NFTs are not only of artistic value but also functional, allowing you to stake them and earn rewards over time.<p class="align-items-center d-none d-sm-flex flex-grow-1 justify-content-center emoji">🖼️</div><div class=rhs><img alt="Mint NFTs"height=1442 src=/images/jpg/desktop-nfts.jpg width=1002></div></div><hr><div class=two-card><div class="d-flex flex-column lhs"><h1>Claim APower Token Rewards</h1><p>When you stake your XPower NFTs, you start earning APower <strong>APOW</strong> tokens: The longer you hold and stake your NFTs, the more <strong>APOW</strong> you accumulate.<p>This process ensures that your participation is continuously rewarded, making it an attractive option for those looking to maximize their involvement in the ecosystem.<div class="align-items-center d-none d-sm-flex flex-grow-1 justify-content-center logo"><img alt="APOW logo"height=128 src=images/svg/apow.svg width=128></div></div><div class=rhs><img alt="Claim APOW"height=1442 src=/images/jpg/desktop-ppts.jpg width=1002></div></div><hr><div class=two-card><div class="d-flex flex-column lhs"><h1>Swap XPower & APower Tokens</h1><p>You have the ability to seamlessly swap your XPower <strong>XPOW</strong> and APower <strong>APOW</strong> tokens on a decentralized exchange, offering flexibility and convenience in managing your assets.<p>Further, with the upcoming lending and borrowing feature, you'll be able to leverage your <strong>APOW</strong> as collateral to borrow <strong>XPOW</strong> or vice versa.<p class="align-items-center d-none d-sm-flex flex-grow-1 justify-content-center emoji">🏛️</div><div class=rhs><img alt="Swap XPOW & APOW"height=1442 src=/images/jpg/desktop-swap.jpg width=1002></div></div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
extends ../app.pug | ||
|
||
block styles | ||
include ../theme/theme.pug | ||
|
||
block globals | ||
include ../global/contracts.pug | ||
include ../global/urls.pug | ||
|
||
block header | ||
include ../header/header.pug | ||
|
||
block content | ||
content | ||
div: include ./content.html | ||
|
||
block footer | ||
include ../footer/footer.pug |
Oops, something went wrong.