Solana Mobile Stack: https://docs.solanamobile.com/
- Firebase - Serverless Platform
- Google Cloud - Cloud Platform
- Jest - Testing framework
- TypeScript - Type Check
- ESLint - Linter
- Prettier - Formatter
- Next.js - SSG Framework
- React - UI Framework
- Tailwind - CSS Framework
- Solana Web3.js v2
- Solana Wallet Adapter (Web)
- Recoil - State Management
- React i18n - Localization
- Solana - The fastest L1 Blockchain
- umi - Solana Token Management
- Bubblegum - Solana Compressed NFTs (cNFTs)
- SIWS - Sign In With Solana
- Static Site Generation (SSG) for optimal performance
- Modular service architecture
- Real-time data processing
- Hybrid database support (SQL + NoSQL)
- Serverless deployment
- Web3.js v2 with optimized bundling
- Multi-wallet support
- Real-time transaction monitoring
- NFT transaction tracking
- DeFi protocol integration
- Automated transaction classification
- Cost basis calculation
- Tax lot tracking
- Wash sale detection
- Multi-jurisdiction support
- IRS Form 8949 automation
- Schedule D generation
- Supporting documentation
- Audit trail creation
- Transaction pattern recognition
- Tax optimization suggestions
- Risk assessment
- Compliance validation
- Optimized Solana package bundling
- Efficient chunk splitting
- Modern JavaScript features
- CSS optimization
- Font loading optimization
# Install dependencies
pnpm install
# Start development server
pnpm dev
# Build for production
NEXT_TELEMETRY_DISABLED=1 pnpm build
# Run tests
pnpm test
name: Web Build & Deploy
on:
push:
branches: [main]
paths:
- 'webapp/**'
- '.github/workflows/**'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
- uses: actions/setup-node@v3
with:
node-version: '18'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
- name: Build webapp
run: pnpm build
- name: Deploy to Firebase
uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseToken: '${{ secrets.FIREBASE_TOKEN }}'
projectId: taxifyio
channelId: live
/** @type {import('next').NextConfig} */
const nextConfig = {
output: 'export',
trailingSlash: true,
swcMinify: true,
images: { unoptimized: true },
webpack: (config) => {
// Solana package optimizations
config.resolve.alias = {
'@solana/web3.js': path.resolve('node_modules/@solana/web3.js'),
'@solana/rpc': path.resolve('node_modules/@solana/rpc')
}
// Production optimizations
config.optimization = {
splitChunks: {
cacheGroups: {
solana: {
test: /[\\/]node_modules[\\/]@solana[\\/]/,
name: 'solana',
chunks: 'all',
priority: 10
}
}
}
}
return config
}
}
# Install dependencies
pnpm install
# Start development server
pnpm dev
# Build for production
NEXT_TELEMETRY_DISABLED=1 pnpm build
# Run tests
pnpm test
{
"hosting": {
"target": "taxifyio",
"public": "webapp/dist",
"ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
"rewrites": [{"source": "**", "destination": "/index.html"}],
"predeploy": ["pnpm build"]
}
}
TypeScript Serverless Framework 'Taxfy'.
The Taxfy project was launched with the goal of reducing software development, operation, and maintenance costs.
Build Serverless Apps faster.