A full-stack web application that allows content creators to manage posts, track engagement, and earn rewards through various interactions. The platform consists of a React frontend and Node.js backend.
The Creator Dashboard is a comprehensive platform designed for content creators to:
- Browse and save content from social media platforms (Reddit, Twitter)
- Report inappropriate content
- Earn rewards through various interactions
- Track engagement and manage their profile
The platform also includes an admin interface for content moderation and user management.
This monorepo contains both frontend and backend components:
creator-dashboard/
├── Frontend/ # React frontend application
├── Backend/ # Node.js backend API
└── README.md # This file
- React 19
- Redux Toolkit
- TailwindCSS
- React Router
- Axios
- Vite
- Node.js
- Express
- MongoDB with Mongoose
- JWT Authentication
- Redis (optional)
- bcrypt
- Node.js (v18 or higher)
- MongoDB instance
- Redis instance (optional)
- Git
- Clone the repository
git clone https://github.com/mian312/Creator-Dashboard.git
cd creator-dashboard- Set up the backend
cd Backend
npm install
# Create .env file with required variables (see Backend/README.md)
npm start- Set up the frontend
cd ../Frontend
npm install
# Create .env file with required variables (see Frontend/README.md)
npm run dev- Access the application
- Frontend: http://localhost:5173
- Backend API: http://localhost:3000
- Authentication (register/login)
- Browse content feed from multiple sources
- Save posts for later viewing
- Report inappropriate content
- Earn coins through various interactions:
- Daily login
- Sharing posts
- Saving posts
- Completing profile
- View and manage profile
- Separate authentication system
- View and manage reported content
- Adjust user coin balances
- View all users and their activities
For detailed documentation on each component:
The backend can be deployed to any Node.js hosting service like Heroku, AWS, or DigitalOcean.
The frontend can be deployed to any static hosting service like Netlify, Vercel, or GitHub Pages.
- 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
Milan Dey