StarkPulse is a cutting-edge, decentralized crypto news aggregator and portfolio management platform built on the StarkNet ecosystem. This monorepo contains the complete web application stack including frontend, backend API, and data processing modules.
StarkPulse Web delivers a comprehensive ecosystem for cryptocurrency enthusiasts, featuring real-time news aggregation, portfolio management, and StarkNet blockchain integration. The platform combines a futuristic UI design with powerful backend services and intelligent data processing capabilities.
This repository is organized as a monorepo containing three main modules:
starkpulse-web/
βββ frontend/ # Next.js frontend application
βββ backend-api/ # Express.js backend API
βββ data-processing/ # Python data processing module
- Futuristic UI/UX π¨: Sleek, modern interface with animated components and responsive design
- StarkNet Wallet Integration π: Seamless connection with StarkNet wallets for secure authentication
- News Aggregation Dashboard π°: Real-time crypto news from multiple trusted sources
- Portfolio Visualization π: Interactive charts and metrics for tracking crypto assets
- Transaction History π: Comprehensive view of on-chain activities
- Community Engagement Tools π₯: Rating, commenting, and content contribution features
- RESTful API π: Robust backend services for data management
- Intelligent Data Processing π: Advanced crypto data aggregation and analytics
- Next.js 14: App router, server components, and streaming
- React 18: Component-based UI development
- TypeScript: Type-safe code
- TailwindCSS: Utility-first styling
- Zustand: State management
- Starknet.js: StarkNet blockchain interaction
- Lucide: Modern icon library
- Recharts: Responsive charting library
- Node.js: Runtime environment
- Express.js 4.18.2: Web framework
- RESTful Architecture: Clean API design
- CORS Support: Cross-origin resource sharing
- Nodemon 3.0.1: Development hot reload
- Python 3.9+: Core processing language
- Crypto Data Processing: Market data aggregation
- News Processing: Content aggregation and analysis
- Portfolio Analytics: Performance tracking
- StarkNet Integration: Blockchain data processing
- Node.js 18.0.0 or higher
- Python 3.9 or higher
- npm package manager
- pip package manager
- Git
- Clone the repository:
git clone https://github.com/Pulsefy/Starkpulse-web.git
cd starkpulse-web
- Setup Frontend:
cd frontend
npm install
npm run dev
Access at: http://localhost:3000
- Setup Backend API:
cd backend-api
npm install
npm start
API available at: http://localhost:8000
- Setup Data Processing (Optional):
cd data-processing
pip install -r requirements.txt
python main.py
The Next.js frontend application providing the user interface.
Key Directories:
app/
- Next.js app router pagescomponents/
- Reusable UI componentshooks/
- Custom React hookslib/
- Utility functions and constantspublic/
- Static assetsproviders/
- Context providers
Scripts:
npm run dev
- Start development servernpm run build
- Build for productionnpm run start
- Start production servernpm run lint
- Run ESLintnpm run test
- Run tests
Express.js backend providing RESTful API services.
Features:
- Health monitoring endpoints
- Comprehensive error handling
- JSON request parsing
- Development hot reload
Scripts:
npm start
- Start production servernpm run dev
- Start development server with nodemon
Python module for cryptocurrency data processing and analysis.
Processors:
CryptoDataProcessor
- Market data aggregationNewsProcessor
- News content processingPortfolioProcessor
- Portfolio analyticsStarkNetProcessor
- Blockchain data processing
-
Frontend Environment:
- Copy
.env.example
to.env.local
in the frontend directory - Configure environment variables as needed
- Copy
-
Data Processing Environment:
- Copy
.env.example
to.env
in the data-processing directory - Configure API keys and database connections
- Copy
For full development setup, run all modules simultaneously:
# Terminal 1 - Frontend
cd frontend && npm run dev
# Terminal 2 - Backend API
cd backend-api && npm run dev
# Terminal 3 - Data Processing (Optional)
cd data-processing && python main.py
Each module can be deployed independently:
- Frontend: Deploy to Vercel
- Backend API: Deploy to Railway
- Data Processing: Deploy to cloud functions or container services
We welcome contributions to StarkPulse Web! Please follow these steps:
- Fork the repository
- Create your feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add some amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
- Follow the existing code style and conventions
- Write tests for new features
- Update documentation as needed
- Ensure all modules work together seamlessly
This project is licensed under the MIT License - see the LICENSE file for details.
- Divineifed1 π¨βπ»
- Cedarich π¨βπ»
- Frontend Documentation
- Backend API Documentation
- Data Processing Documentation
- StarkNet Documentation
Built with β€οΈ by the StarkPulse Team
This project uses environment variables for configuration. Copy .env.example
to .env.development
, .env.staging
, or .env.production
as needed and fill in the values.
DB_HOST
: Database hostDB_PORT
: Database portDB_USER
: Database userDB_PASS
: Database password (keep secret!)API_KEY
: API key for external services (keep secret!)NODE_ENV
: Application environment (development
,staging
,production
)PORT
: Port the app runs on (default: 3000)
Never commit real secrets to version control. Use .env.example
as a template only.