Production-Ready Template To Build Decentralised Applications
Here are examples of apps built using "Jolly Roger"
The Bleeps DAO and Its Fully Onchain Sounds
The First Composable Sounds Fully Generated On-Chain With Zero Externalities, no backend, no ipfs, no client-code, and a melody minter where some of the proceeds goes to the Bleeps DAO and its members
Check the source code.
On-chain Generative Bitmaps With Zero Externalities
The First On-Chain Generative Art Project to make full use of token URI to remove all external dependencies. It generates SVG and Bitmap from the smart contract directly.
Check the source code.
A Game of Strategy and Diplomacy Running on the EVM
An unstoppable game of strategy and diplomacy running on the EVM. It allows player to collaborate through on-chain alliances while remaining sovereign. A first of its kind.
Source code not yet available.
This template include setup for smart contracts, indexer and frontend. All runs locally for the best-in-class developer experience.
The web app is fully PWA compliant, with offline caching, etc... The javascript code necessary to launch the app is less than 50kB (15kB compressed), including the home page content. Achieves 100% score on a barebone page without extra themes
Hardhat for contracts, hardhat-deploy for contract deployment, the in-browser ethereum-indexer for contract's api, svelte + Svelte Kit for frontend with HMR (Hot Module Replacement) and production build.
On contract changes, contract get to keep their address and code get updated automatically. On frontend changes, module get replaced using blazing fast Vite es module hot reload.
Fully IPFS ready with proper url routing. The web app works on both IPFS urls and ENS/DNS urls. PWA works on IPFS too with scoped service workers.
The whole app including indexer and, is written in typescript.
By using Svelte Kit (and so Vite) and ES modules, the frontend benefit from code splitting an dynamic imports as well as tree shaking.
The repo is setup as a vscode workspace with recommended plugins. Execute tests from the editor. Auto format, etc...
Everything is setup, except for the private ENV variable to deploy the contracts.