VOIX is a decentralized social media platform built with React Native (Expo), Node.js, and Solana blockchain integration. Users can create buzzes, interact with content, send tips, and manage friendships.
VOIX/
├── frontend/voix-app/ # React Native (Expo) frontend
├── Backend/ # Node.js backend with Express
├── smart_contract/ # Solana smart contract (Anchor)
└── Readme.MD # This file
Before running the project, ensure you have the following installed:
- Node.js (v18 or higher)
- npm or pnpm (recommended)
- Expo CLI (
npm install -g @expo/cli) - Rust (for smart contract development)
- Anchor CLI (for Solana smart contracts)
- Solana CLI (for blockchain interactions)
cd frontend/voix-appnpm install
# or
pnpm installnpm install @solana/web3.js @solana/spl-tokennpm start
# or
expo start# iOS Simulator
npm run ios
# Android Emulator
npm run android
# Web
npm run webcd Backendnpm install
# or
pnpm install# Generate Prisma client
npx prisma generate
# Run database migrations
npx prisma migrate dev
# (Optional) Seed the database
npx prisma db seedThe backend provides the following main API endpoints:
- Authentication:
/api/v1/auth/* - Buzzes:
/api/v1/buzz/* - Friends:
/api/v1/friend/* - Wallet:
/api/v1/wallet/* - Tips:
/api/v1/tip/* - Karma:
/api/v1/karma/* - Search:
/api/v1/search/*
- API base URL:
frontend/voix-app/config/constants.ts - Environment variables:
frontend/voix-app/.env
- Database:
Backend/prisma/schema.prisma - Environment:
Backend/.env - Routes:
Backend/src/routes/
- Program ID:
smart_contract/Anchor.toml - Program logic:
smart_contract/programs/voix/src/
- Metro bundler issues: Clear cache with
expo start -c - Database connection: Check DATABASE_URL in
.env - Solana RPC issues: Verify SOLANA_RPC_URL in backend
.env - Build failures: Ensure all dependencies are installed
- Android: API level 21+