Skip to content

liquify-validation/axelarscan-ui

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,204 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔍 Axelarscan UI

The official UI for Axelarscan - Cross-chain explorer for the Axelar Network

🌐 Live Environments

Environment URL
🚀 Mainnet https://axelarscan.io
🧪 Testnet https://testnet.axelarscan.io

🛠️ Development Setup

Prerequisites

  • Node.js 20.19.4 (specified in .nvmrc) - Install via nvm

Local Development

Run the application locally on localhost:3000:

# Switch to the correct Node.js version
nvm use

# Install dependencies
npm ci

# Start development server
npm run dev

Code Quality

# Format code with Prettier
npm run format

# Check code formatting
npm run format:check

# Run ESLint and fix issues
npm run lint

# Check for linting issues
npm run lint:check

TypeScript Support

This project supports both JavaScript and TypeScript files. You can gradually migrate existing JavaScript files to TypeScript or create new TypeScript files.

TypeScript Commands

# Run TypeScript type checking (no emit)
npm run tsc

# Build project with TypeScript checking
npm run build

Testing

Run the test suite to verify functionality:

# Run all tests
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage report
npm run test:coverage

🚀 Deployment and Release Process

📋 Overview

Axelarscan UI uses a straightforward deployment process with Vercel. The project uses a single main branch with feature branches for development.

🌍 Environment Setup

Environment Vercel Project Build Command
Mainnet axelarscan-mainnet npm run build-mainnet
Testnet axelarscan-testnet npm run build-testnet
Staging axelarscan-staging npm run build-staging
Stagenet axelarscan-stagenet npm run build-stagenet
Devnet Amplifier axelarscan-devnet-amplifier npm run build-devnet-amplifier

Each environment uses environment-specific variables loaded from corresponding .env.* files during build.

🔄 Release Process

  1. 👨‍💻 Development:

    • Create feature branches from main using the naming convention feat/* or chore/*
    • Example: feat/add-new-chart or chore/update-dependencies
  2. 🔍 Preview Deployments:

    • Vercel automatically creates preview deployments for branches with the feat/* or chore/* prefix
    • Preview URLs are available directly in the GitHub UI for each commit
    • Branches with other naming patterns (e.g., bugfix/*, hotfix/*) will not trigger preview builds
  3. 🧪 Testing:

    • Test your changes on the Vercel preview URL
    • Make any necessary adjustments in your feature branch
  4. 📦 Release:

    • Once testing is complete, create a Pull Request to merge your feature branch into main
    • After approval and merge to main, Vercel automatically deploys to all environment projects

🛠️ Build Control

The repository includes a vercel.deployment.sh script that controls which branches get deployed:

Status Condition
Builds proceed when • Branch is main, feat/*, or chore/*
• AND the Vercel URL doesn't contain "v1" or "v0"
🛑 Builds are skipped when • Any other branch naming pattern
• OR any deployment URL containing "v1" or "v0" (legacy deployments)

📝 Notes

  • There is no need for environment-specific branches or manual promotion between environments
  • All environments are updated simultaneously when changes are merged to main

About

Axelarscan UI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 67.7%
  • TypeScript 32.3%