| Environment | URL |
|---|---|
| 🚀 Mainnet | https://axelarscan.io |
| 🧪 Testnet | https://testnet.axelarscan.io |
- Node.js 20.19.4 (specified in
.nvmrc) - Install via nvm
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# 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:checkThis project supports both JavaScript and TypeScript files. You can gradually migrate existing JavaScript files to TypeScript or create new TypeScript files.
# Run TypeScript type checking (no emit)
npm run tsc
# Build project with TypeScript checking
npm run buildRun 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:coverageAxelarscan UI uses a straightforward deployment process with Vercel. The project uses a single main branch with feature branches for development.
| 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.
-
👨💻 Development:
- Create feature branches from
mainusing the naming conventionfeat/*orchore/* - Example:
feat/add-new-chartorchore/update-dependencies
- Create feature branches from
-
🔍 Preview Deployments:
- Vercel automatically creates preview deployments for branches with the
feat/*orchore/*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
- Vercel automatically creates preview deployments for branches with the
-
🧪 Testing:
- Test your changes on the Vercel preview URL
- Make any necessary adjustments in your feature branch
-
📦 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
- Once testing is complete, create a Pull Request to merge your feature branch into
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) |
- There is no need for environment-specific branches or manual promotion between environments
- All environments are updated simultaneously when changes are merged to
main