Skip to content

Commit

Permalink
Merge pull request #390 from elsoul/addStakeRow
Browse files Browse the repository at this point in the history
add Stake for Open-Source Row
  • Loading branch information
KishiTheMechanic authored Apr 5, 2024
2 parents d824e4b + 935a19d commit fac6eb7
Show file tree
Hide file tree
Showing 7 changed files with 125 additions and 0 deletions.
15 changes: 15 additions & 0 deletions website/skeet-doc/public/locales/en/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -114,5 +114,20 @@
"title": "Concentrate on Desired Functionalities",
"description": "Skeet consistently utilizes TypeScript to enable the creation of essential features and UI as needed, without the worry of infrastructure design and management. Just write the code to solve the problems, and you're ready to go global.",
"link": "Explore the Full Architecture"
},
"StakeForOpenSourceRow": {
"subtitle": "Stake for the future of Open-Source Development",
"title": "Let's support Open-Source Development while earning staking rewards.",
"description": "※ These are not intended for investment advice. The information are based on the situation at the time of writing. Please check for the most current information. Always NFA/DYOR.",
"feature1": {
"title": "Solana Mainnet Validator",
"description": "By staking SOL tokens with the Solana mainnet validator operated by ELSOUL LABO, you can earn a staking reward of 7.04% APR (Annual Percentage Rate, as of April 5, 2024), after deducting fees and other expenses. All fees incurred for this purpose will be used as operating expenses for ELSOUL LABO, aimed at improving the open-source development environment.",
"button": "Go to Validator Detail"
},
"feature2": {
"title": "Buidlers Collective (BDLC) NFT",
"description": "When you stake BDLC NFTs on the Epics platform, you can earn $EPCT token rewards. Additionally, an equivalent amount of $EPCT is donated to the open-source project where the NFTs are staked, to be used for future development. This initiative utilizes blockchain technology to enable socially beneficial NFT staking and No Loss Donation, where staking rewards are donated without losing the principal.",
"button": "Go to NFT Marketplace"
}
}
}
15 changes: 15 additions & 0 deletions website/skeet-doc/public/locales/ja/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,5 +113,20 @@
"title": "つくりたい機能に集中",
"description": "Skeetは一貫してTypeScriptを使用して、必要な機能やUIを必要なだけ作ることができます。そのためのインフラ設計や管理の心配はいりません。問題を解決するコードを書けば、グローバルにアプリや機能を公開する準備はできています。",
"link": "全体アーキテクチャ"
},
"StakeForOpenSourceRow": {
"subtitle": "オープンソース開発の未来にステークを",
"title": "ステーク報酬を獲得しながらオープンソース開発を応援しましょう",
"description": "※ これらは投資助言などを目的としたものではありません。また、記載された情報は、執筆時点のものです。最新の情報をご確認ください。常に NFA / DYOR でお願いいたします。",
"feature1": {
"title": "Solana メインネットバリデーター",
"description": "エルソウルラボが運用するSolanaメインネットバリデーターにSOLトークンをステークすることで、APR(年利、2024年4月5日現在) 7.04% のステーク報酬(手数料等差し引き後)を獲得できます。このために発生したすべての手数料はエルソウルラボの運営費として、オープンソース開発環境改善のために活用されます。",
"button": "バリデーター詳細へ"
},
"feature2": {
"title": "Buidlers Collective (BDLC) NFT",
"description": "BDLC NFT を Epics プラットフォームにてステークすると、$EPCT トークン報酬を獲得でき、さらに同額の $EPCT がステーク先のオープンソースプロジェクトに寄付され、将来の開発に活用されます。ブロックチェーンを活用して社会貢献型の NFT ステーキング、そして No Loss Donation(元本を失わずステーキング報酬を寄付する)を実現させる取り組みです。",
"button": "NFT マーケットへ"
}
}
}
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.
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
import { useTranslation } from 'next-i18next'
import Image from 'next/image'
import SolanaMainnetValidatorImage from '@/assets/img/work/ELSOULLABOSolanaMainnetValidator.jpg'
import NoLossDonationStakingMechanismJA from '@/assets/img/work/NoLossDonationStakingMechanismJA.jpg'
import NoLossDonationStakingMechanismEN from '@/assets/img/work/NoLossDonationStakingMechanismEN.jpg'
import { useMemo } from 'react'

const features = [
{
name: 'common:StakeForOpenSourceRow.feature1.title',
description: 'common:StakeForOpenSourceRow.feature1.description',
imageSrc: (_isJapanese: boolean) => SolanaMainnetValidatorImage,
imageAlt: 'ELSOUL LABO Solana Mainnet Validator',
imageLink: (_isJapanese: boolean) =>
'https://www.validators.app/validators/Fumin2Kx6BjkbUGMi4E7ZkRQg4KmgDv2j5xJBi98nUAD?locale=en&network=mainnet',
button: 'common:StakeForOpenSourceRow.feature1.button',
},
{
name: 'common:StakeForOpenSourceRow.feature2.title',
description: 'common:StakeForOpenSourceRow.feature2.description',
imageSrc: (isJapanese: boolean) =>
isJapanese
? NoLossDonationStakingMechanismJA
: NoLossDonationStakingMechanismEN,
imageAlt: 'Epics Platform Buidlers Collective (BDLC) NFT Staking',
imageLink: (_isJapanese: boolean) =>
'https://magiceden.io/marketplace/buidlersc',
button: 'common:StakeForOpenSourceRow.feature2.button',
},
]

export default function StakeForOpenSourceRow() {
const { t, i18n } = useTranslation()
const isJapanese = useMemo(() => i18n.language === 'ja', [i18n])
return (
<div className="pb-64 pt-16 sm:pb-80">
<div className="mx-auto max-w-7xl px-6 lg:px-8">
<div className="mx-auto flex max-w-4xl flex-col items-center justify-center lg:text-center">
<h2 className="bg-gradient-to-tr from-purple-400 via-blue-400 to-green-400 bg-clip-text text-lg font-semibold leading-7 tracking-tight text-transparent">
{t('common:StakeForOpenSourceRow.subtitle')}
</h2>
<p className="mt-2 text-4xl font-extrabold tracking-tighter text-gray-900 dark:text-white sm:text-5xl">
{t('common:StakeForOpenSourceRow.title')}
</p>
<p className="text-md mt-6 max-w-3xl text-center text-gray-600 dark:text-gray-200">
{t('common:StakeForOpenSourceRow.description')}
</p>
</div>
<div className="mx-auto mt-12">
<dl className="grid grid-cols-1 gap-x-8 gap-y-16 lg:grid-cols-2">
{features.map((feature) => (
<div key={feature.name} className="flex w-full flex-col">
<a
href={feature.imageLink(isJapanese)}
target="_blank"
rel="noopener noreferrer"
className="hover:opacity-80"
>
<Image
src={feature.imageSrc(isJapanese)}
width="1600"
height="900"
alt={feature.imageAlt}
className="h-full w-full rounded-md"
unoptimized
/>
</a>
<dt className="mt-7 flex items-center text-xl font-semibold leading-7 tracking-tight text-gray-900 dark:text-white">
{t(feature.name)}
</dt>
<dd className="mt-2 flex flex-auto flex-col text-base leading-7 text-gray-600 dark:text-gray-200">
<p className="flex-auto">{t(feature.description)}</p>
</dd>
<a
href={feature.imageLink(isJapanese)}
target="_blank"
rel="noopener noreferrer"
className="mt-6 hover:opacity-80"
>
<button className="rounded-md bg-gray-900 px-3 py-1.5 font-medium text-white dark:bg-white dark:text-gray-900">
{t(feature.button)}
</button>
</a>
</div>
))}
</dl>
</div>
</div>
</div>
)
}
2 changes: 2 additions & 0 deletions website/skeet-doc/src/pages/[locale]/company.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import TeamRow from '@/components/pages/company/TeamRow'
import ContactRow from '@/components/pages/common/ContactRow'
import MissionRow from '@/components/pages/company/MissionRow'
import OurWorksRow from '@/components/pages/common/OurWorksRow'
import StakeForOpenSourceRow from '@/components/pages/common/StakeForOpenSourceRow'

const seo = {
pathname: '/company',
Expand All @@ -31,6 +32,7 @@ export default function Company() {
<InformationRow />
<TeamRow />
<OurWorksRow />
<StakeForOpenSourceRow />
<ContactRow />
</>
)
Expand Down
2 changes: 2 additions & 0 deletions website/skeet-doc/src/pages/[locale]/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import AIAutoCodeDevelopmentRow from '@/components/pages/common/AIAutoCodeDevelo
import SolanaMobileStackRow from '@/components/pages/common/SolanaMobileStackRow'
import SkeetArchitectureRow from '@/components/pages/common/SkeetArchitectureRow'
import BooksRow from '@/components/pages/common/BooksRow'
import StakeForOpenSourceRow from '@/components/pages/common/StakeForOpenSourceRow'

const articleDirName = 'news'

Expand Down Expand Up @@ -53,6 +54,7 @@ export default function Home({
<GoToQuickstartRow />
<SkeetDemoRow />
<WhyOpenSourceDevelopmentRow />
<StakeForOpenSourceRow />
<TopNewsRow articles={articles} urls={urls} />
<BooksRow />
<MediaLogoRow />
Expand Down

0 comments on commit fac6eb7

Please sign in to comment.