Skip to content

Kronos-Guild/kronos-create

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏛️ Kronos Create

Solana Next.js TypeScript Web3.js

The fastest way to create production-ready Solana dApps

Everything you need to build on Solana, pre-configured and ready to go.


🚧 Current Status

Kronos Create is in active development! 🚀

The CLI tool is functional and ready for basic project scaffolding, but many of the advanced features described below are planned for future releases. Here's what's available now vs. what's coming:

✅ Available Now

  • Basic project scaffolding
  • TypeScript support
  • Simple CLI interface
  • Project name configuration

🔮 Coming Soon

  • Multiple template options (DeFi, NFT, Gaming, etc.)
  • Interactive template selection
  • Wallet adapter pre-configuration
  • Analytics integration
  • Advanced CLI options
  • Comprehensive testing setup

Want to contribute or follow progress? Check out our GitHub repository and join our Discord community!


🚀 Quick Start

Create a new Solana project in seconds:

npx kronos-create@latest my-solana-app
cd my-solana-app
npm run dev

Or with pnpm:

pnpm create kronos-create@latest my-solana-app
cd my-solana-app
pnpm dev

✨ Features

  • ⚡ Lightning Fast: Get started with Solana development in under 2 minutes
  • 🏗️ Multiple Templates: Choose from various pre-built templates for different use cases
  • 📱 Modern Stack: Built with Next.js 14, TypeScript, and the latest Solana tooling
  • 🔧 Pre-configured: Wallet adapters, RPC connections, and development tools ready out of the box
  • 🎨 Beautiful UI: Styled with Tailwind CSS and modern design patterns
  • 🔐 Wallet Integration: Support for Phantom, Solflare, and other popular Solana wallets
  • 📊 Analytics Ready: Optional analytics integration for production apps
  • 🧪 Testing Setup: Comprehensive testing environment with Jest and Anchor testing framework

🛠️ Planned Templates

Coming Soon! The following templates are currently in development and will be available in upcoming releases.

DeFi Applications

  • DEX Template: Decentralized exchange with swap functionality
  • Staking Platform: Token staking and rewards distribution
  • Lending Protocol: Lending and borrowing platform

NFT Projects

  • NFT Marketplace: Complete marketplace with minting and trading
  • NFT Collection: Art collection with minting interface
  • NFT Utility: NFT-gated applications and utilities

Gaming

  • Web3 Game: Basic game template with on-chain assets
  • Tournament Platform: Gaming tournaments with token rewards

DePIN & Infrastructure

  • DePIN Node: Decentralized physical infrastructure template
  • Oracle Service: Price feed and data oracle implementation

Basic Templates

  • Minimal: Clean starting point with basic wallet connection
  • Full-stack: Complete dApp with backend integration

📋 Prerequisites

  • Node.js 18.0.0 or later
  • npm, yarn, or pnpm
  • Git (for cloning templates)

🎯 Usage

Interactive Mode

npx kronos-create@latest

Follow the prompts to:

  1. Choose your project name
  2. Select a template
  3. Configure wallet adapters
  4. Set up analytics (optional)
  5. Choose your package manager

CLI Arguments

npx kronos-create@latest [project-name] [options]

Options

  • --template <template-name>: Skip template selection
  • --typescript: Enable TypeScript (default)
  • --javascript: Use JavaScript instead of TypeScript
  • --tailwind: Include Tailwind CSS (default)
  • --no-tailwind: Skip Tailwind CSS
  • --analytics: Enable analytics tracking
  • --no-analytics: Disable analytics tracking
  • --package-manager <npm|yarn|pnpm>: Choose package manager
  • --git: Initialize git repository (default)
  • --no-git: Skip git initialization

Examples

# Create a DEX template with npm
npx kronos-create@latest my-dex --template dex --package-manager npm

# Create a minimal JavaScript project
npx kronos-create@latest simple-app --template minimal --javascript

# Create an NFT marketplace without analytics
npx kronos-create@latest nft-market --template nft-marketplace --no-analytics

🏗️ Project Structure

my-solana-app/
├── components/           # React components
│   ├── wallet/          # Wallet connection components
│   ├── ui/              # UI components
│   └── providers/       # Context providers
├── lib/                 # Utility functions
│   ├── anchor/          # Anchor program utilities
│   ├── solana/          # Solana web3 helpers
│   └── constants/       # App constants
├── pages/               # Next.js pages
├── programs/            # Anchor/Native programs (if applicable)
├── public/              # Static assets
├── styles/              # Global styles
├── tests/               # Test files
├── anchor.toml          # Anchor configuration
├── solana.config.js     # Solana configuration
└── package.json

🔧 Configuration

Wallet Adapters

Configure supported wallets in lib/wallet-adapters.ts:

import { PhantomWalletAdapter } from '@solana/wallet-adapter-phantom';
import { SolflareWalletAdapter } from '@solana/wallet-adapter-solflare';

export const wallets = [
  new PhantomWalletAdapter(),
  new SolflareWalletAdapter(),
  // Add more wallet adapters
];

RPC Configuration

Set up your RPC endpoints in lib/constants/rpc.ts:

export const RPC_ENDPOINTS = {
  mainnet: process.env.NEXT_PUBLIC_MAINNET_RPC || 'https://api.mainnet-beta.solana.com',
  devnet: process.env.NEXT_PUBLIC_DEVNET_RPC || 'https://api.devnet.solana.com',
  testnet: process.env.NEXT_PUBLIC_TESTNET_RPC || 'https://api.testnet.solana.com',
};

Environment Variables

Create a .env.local file:

# RPC Endpoints
NEXT_PUBLIC_MAINNET_RPC=your_mainnet_rpc
NEXT_PUBLIC_DEVNET_RPC=your_devnet_rpc

# Analytics (optional)
NEXT_PUBLIC_ANALYTICS_WRITE_KEY=your_analytics_key

# App Configuration
NEXT_PUBLIC_APP_NAME=My Solana App
NEXT_PUBLIC_NETWORK=devnet

🚀 Development

Start Development Server

npm run dev
# or
yarn dev
# or
pnpm dev

Build for Production

npm run build
# or
yarn build
# or
pnpm build

Run Tests

npm run test
# or
yarn test
# or
pnpm test

Deploy

npm run deploy
# or
yarn deploy
# or
pnpm deploy

🧪 Testing

Kronos Create includes a comprehensive testing setup:

  • Unit Tests: Component and utility function tests with Jest
  • Integration Tests: Full dApp functionality testing
  • Anchor Tests: Smart contract testing with Anchor framework
  • E2E Tests: End-to-end testing with Playwright

Run specific test suites:

# Unit tests
npm run test:unit

# Integration tests
npm run test:integration

# Anchor tests
npm run test:anchor

# E2E tests
npm run test:e2e

📚 Documentation

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Setup

  1. Clone the repository
  2. Install dependencies: pnpm install
  3. Build the CLI: pnpm build
  4. Link for local development: pnpm link-cli

Adding New Templates

  1. Create template in src/templates/
  2. Add template configuration to src/constants/templates.ts
  3. Update tests and documentation
  4. Submit a pull request

🛟 Support

📄 License

MIT License - see the LICENSE file for details.

🙏 Acknowledgments


Built with ❤️ by the Kronos Labs team

WebsiteDocumentationTwitter

About

Kronos Guild CLI to scaffold Solana apps

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors