A React-based web application for the Axon decentralized social network, featuring privacy-preserving interactions, creator economy, and governance participation.
- Zero-Knowledge Proofs: All social interactions protected by zk-STARKs
- Anonymous Posting: Full anonymity with differential privacy
- Pseudonymous Mode: Balance between privacy and identity
- Public Mode: Traditional social media experience when desired
- Privacy-Preserving Feed: Chronological, trending, and algorithmic feeds
- Voting System: "Every like is like a vote" with quadratic voting mechanics
- Content Creation: Rich text posts with polls, images, and tags
- Advanced Search: Privacy-preserving content and user discovery
- Anonymous Subscriptions: Support creators while maintaining privacy
- Multiple Tiers: Flexible subscription models with Nym token payments
- Privacy Analytics: Engagement tracking without user profiling
- Revenue Dashboard: Track earnings and subscriber growth
- Community Voting: Participate in protocol governance
- Proposal Creation: Submit proposals for network improvements
- Quadratic Voting: Prevent whale dominance in decision-making
- Privacy-Preserving Participation: Vote without revealing identity
- .quid Domains: Social media profiles (one per QuID identity)
- .axon Domains: General content domains (multiple per identity)
- Domain Management: Easy registration and management interface
- Node.js 18+ and npm
- NixOS environment (recommended)
- Enter Nix Shell (if using NixOS):
cd /home/wao/lyra/proj/nymverse
nix-shell- Install Dependencies:
cd axon-web
npm install- Environment Setup:
cp .env.example .env.local
# Edit .env.local with your configuration- Start Development Server:
npm startThe application will open at http://localhost:3000
npm run build- React 18 with TypeScript
- Material-UI for component library
- Redux Toolkit for state management
- React Query for data fetching
- React Router for navigation
- QuID Integration: Universal quantum-resistant authentication
- Zero-Knowledge Proofs: Anonymous interactions and voting
- Differential Privacy: Anonymous analytics and search
- End-to-End Encryption: Private messaging and content
- Nym Network: Blockchain for payments and governance
- Axon Protocol: Social networking and content distribution
- NymCompute: Distributed processing for recommendations
- IPFS: Decentralized content storage
- Privacy-focused dark UI reducing eye strain
- Cyan (
#00bcd4) primary color for trust and technology - High contrast ratios for accessibility
- Anonymous Mode: Red privacy badge
- Pseudonymous Mode: Default blue privacy badge
- Public Mode: Green privacy badge
- Sidebar Navigation: Quick access to main features
- Header Controls: Privacy mode switching and notifications
- Responsive Design: Mobile-first responsive layout
- Anonymous Likes: Zero-knowledge proof verification
- Private Voting: Quadratic voting with privacy preservation
- Encrypted Messaging: End-to-end encrypted communications
- Anonymous Subscriptions: Support creators privately
- Local Storage: Minimal data stored locally
- No Tracking: No user behavior tracking or profiling
- Differential Privacy: Anonymous aggregate analytics
- Right to Deletion: Complete data removal on request
npm start- Development servernpm build- Production buildnpm test- Run testsnpm run lint- Code lintingnpm run format- Code formatting
src/
βββ components/ # Reusable UI components
β βββ feed/ # Feed and post components
β βββ layout/ # Layout components
βββ pages/ # Page components
βββ services/ # API service layers
βββ store/ # Redux store and slices
βββ hooks/ # Custom React hooks
βββ types/ # TypeScript type definitions
βββ utils/ # Utility functions
- Feed System: PostList, PostItem, CreatePost
- Authentication: QuID integration with privacy modes
- Navigation: Header with privacy controls, responsive sidebar
- Governance: Proposal voting with quadratic mechanics
- Creator Tools: Dashboard with privacy-preserving analytics
REACT_APP_API_URL=http://localhost:8080/api
REACT_APP_NYM_NODE_URL=ws://localhost:9944
REACT_APP_AXON_GATEWAY=http://localhost:8081
REACT_APP_QUID_AUTH_URL=http://localhost:8082- Build the application:
npm run build - Deploy to static hosting (Vercel, Netlify, IPFS)
- Configure backend API endpoints
- Set up domain and SSL certificates
- Follow TypeScript best practices
- Maintain privacy-first design principles
- Write comprehensive tests for components
- Document privacy implications of new features
- Never store sensitive user data
- Always use zero-knowledge proofs for verification
- Implement differential privacy for analytics
- Provide clear privacy controls to users
This project is part of the Nymverse ecosystem and is licensed under MIT OR Apache-2.0.
- QuID: Universal quantum-resistant authentication
- Nym: Privacy-first cryptocurrency and smart contracts
- Axon: Decentralized social networking protocol
- NymCompute: Privacy-preserving distributed computing
Built with privacy, security, and user empowerment at its core.