A modern web application for practicing and learning meme coin trading on Solana without risking real money. Built with Next.js, Firebase, and MongoDB, this platform provides a safe environment to experiment with trading strategies using demo tokens.
- 🎮 Risk-free demo trading with virtual Solana meme coins
- 🔐 Secure user authentication with Firebase
- 👛 Create and manage multiple demo trading wallets
- 💰 Track demo wallet balances and mock transactions
- 📊 Practice trading strategies without real funds
- 🌓 Dark/Light theme support
- 📱 Responsive design for mobile and desktop
- 🔒 Protected routes with authentication guards
- Frontend: Next.js 13+ with App Router
- Blockchain: Solana (simulated transactions)
- Authentication: Firebase Auth
- Database: MongoDB with Mongoose
- Styling: Tailwind CSS
- State Management: React Context
- Type Safety: TypeScript
- Clone the repository:
git clone https://github.com/Victor-Evogor/cryptotraderwebsite.git
cd cryptotraderwebsite
- Install dependencies:
pnpm install
-
Set up environment variables:
- Copy the example environment file to create your local environment file:
cp .example.env.local .env.local
- Fill in the following variables in
.env.local
:NEXT_PUBLIC_FIREBASE_API_KEY= NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN= NEXT_PUBLIC_FIREBASE_PROJECT_ID= NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET= NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID= NEXT_PUBLIC_FIREBASE_APP_ID= MONGODB_URI=
- Copy the example environment file to create your local environment file:
-
Set up Firebase Admin SDK:
- Go to Firebase Console: https://console.firebase.google.com/
- Select your project
- Go to Project Settings > Service Accounts
- Click "Generate New Private Key"
- Download the JSON file
- Rename it to
firebase_private_key.json
and place it in the root directory of your project
-
Run the development server:
pnpm dev
Open http://localhost:3000 with your browser to see the application.
/app
- Next.js 13+ app router pages and API routes/components
- Reusable React components/lib
- Utility functions and configuration/models
- MongoDB/Mongoose models/public
- Static assets
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.