Sol.College

Full lesson

elyse

What it does

From the project README:

The **"Elyse"** project is a versatile infrastructure in cryptocurrencies and blockchain, intending to unite diverse crypto projects into a unified space to simplify the use of blockchain technology for users worldwide.
Original
s11leo/elyse
SuperStack fork
Blockchains/elyse @ 77b39eb
Stars
0
Last push (original)
2024-07-02
Languages
CSS, JavaScript, HTML, SCSS
Detected stack
web3.js
Categories
Other
Licence
MIT

Architecture

51 source files. By extension: .js ×51.

Top-level directorySource files
app_page28
elyse-app22
(root)1

✅ Operational, verified 2026-11-02 Tested on 2026-11-02: full log results.json

Build it yourself: step-by-step guide

Every command below was run on 2026-11-02 by tests/run_fork.py against the pinned commit, and the results come from that run. The full output is in the committed log.

1. Prerequisites (versions we tested with)

2. Clone at the tested commit

git clone https://github.com/Blockchains/elyse.git && cd elyse
git checkout 77b39ebe97763dc1ab86b10699e99ba616ed8e28

3. Configure

No environment file is needed.

4. Install dependencies

DirectoryCommandResultTime
elyse-appnpm install --no-audit --no-fund --legacy-peer-deps✅ pass14s
app_pagenpm install --no-audit --no-fund --legacy-peer-deps✅ pass4s

5. Build

DirectoryCommandResultTime
elyse-appnpm run build✅ pass9s
app_pagenpm run build✅ pass1s

7. Deploy to a local validator

8. Run and exercise it

DirectoryCommandResultTime
elyse-appbash /workspace/sol-college/repo/tests/serve_probe.sh 3103 / python3 -m http.server 3103 -d dist✅ pass2s
app_pagebash /workspace/sol-college/repo/tests/serve_probe.sh 3104 / python3 -m http.server 3104✅ pass2s

Extend it

  1. Add an integration test that runs the main flow end to end and asserts every account state change.
  2. Add a negative test: call each instruction with the wrong signer or account and check that it fails.
  3. Make the frontend read the cluster from an env var, deploy it to GitHub Pages and point it at your devnet program.
  4. Wire the build into CI by copying this site's verify-forks workflow.

Open the dapp

Open the dapp The fork's own webpack frontend (wallet dashboard). It reads balances from public RPCs; it has no on-chain program of its own. Connect your own wallet; every transaction is signed in your wallet. Use devnet with free SOL from faucet.solana.com. Mainnet uses real tokens: alpha software, high risk.

Built with dapps/static_build.sh elyse.

Key code, explained

Excerpts chosen automatically where the code uses the most Solana concepts, pinned to the fork's commit.

s11leo/elyse · app_page/token_faucet/faucet.js L1–24 @ 77b39eb · MIT · original
const express = require('express');const bodyParser = require('body-parser');const fetch = require('node-fetch');const { Connection, Keypair, PublicKey, Transaction } = require('@solana/web3.js');const { sendAndConfirmTransaction } = require('@solana/web3.js');const { getOrCreateAssociatedTokenAccount, createTransferInstruction, getAccountInfo } = require('@solana/spl-token');const https = require('https');const app = express();const cors = require('cors');const fs = require('fs');// const moment = require('moment'); app.use(bodyParser.json()); const corsOptions = {    origin: 'https://hackathon-test-project.space',}; app.use(cors(corsOptions)); const serverOptions = {    key: fs.readFileSync('/etc/letsencrypt/live/hackathon-test-project.space/privkey.pem'),    cert: fs.readFileSync('/etc/letsencrypt/live/hackathon-test-project.space/fullchain.pem')};
  1. Line 5 const { sendAndConfirmTransaction } = require('@solana/web3.js');: Submits the signed transaction to the cluster.
  2. Line 6 const { getOrCreateAssociatedTokenAccount, createTransferInstruction, getAccountInfo } = r: An SPL token transfer through the Token Program.

How to run, build and test

These commands come from the repo's own manifests (package.json scripts, Anchor.toml, Cargo, go.mod, Makefile). Check the README for prerequisites and environment variables.

DirectoryCommandRuns
elyse-appnpm run startwebpack serve --config webpack.config.js --mode development
elyse-appnpm run buildwebpack --config webpack.config.js --mode production
app_pagenpm run devwebpack serve --open --mode development
app_pagenpm run buildwebpack --mode production
app_page/kumekanpm run startreact-scripts start
app_page/kumekanpm run buildreact-scripts build
app_page/kumekanpm run testreact-scripts test
app_page/token_faucetnpm run testecho "Error: no test specified" && exit 1

What you could build from it