Track and calculate your SkillRack points effortlessly using this powerful tool built with React, Express, Node.js, Axios, Cheerio, MongoDB, Mongoose, and deployed on Vercel. This project is designed to scrape user data from SkillRack, calculate points, and display them with a progress bar.
- React: Frontend user interface.
- Express: Backend API.
- Node.js: Server-side runtime environment.
- Axios: HTTP client for making requests.
- Cheerio: HTML scraping and parsing.
- MongoDB: Database for storing user data.
- Mongoose: ODM library for MongoDB.
- Vercel: Deployment platform.
- react-circular-progressbar: Progress bar component for React.
- js-cookie: Handling cookies in the browser.
- dotenv: Managing environment variables.
- nodemailer: Sending email notifications.
- Scrapes user data from SkillRack.
- Calculates points based on the user's activities.
- Displays points with a circular progress bar.
- Stores user data in MongoDB.
- Handles cookies for session management.
- Sends email notifications to admin for new user insertions.
- Schedule Planning
- Node.js
- npm
- MongoDB
-
Clone the repository:
git clone https://github.com/yourusername/skillrack-points-tracker.git cd skillrack-points-tracker
-
Install dependencies for the client and server:
cd client npm install cd ../server npm install
-
Set up your environment variables in a
.env
file in the server directory:# MongoDB connection string MONGODB_URI=your_mongodb_uri # SMTP Email configuration SMTP_HOST=your_smtp_host SMTP_PORT=your_smtp_port SMTP_SECURE=true_or_false FROM_ADDRESS=your_email_address TO_ADDRESS=recipient_email_address SMTP_USER=smtp_username SMTP_PASS=smtp_password # LOG LOG_BOT_TOKEN=bot_token LOG_CHAT_ID=chat_id
-
Start the client:
cd client npm start
-
Start the server:
cd server node index.js
-
The application should now be running on
http://localhost:3000
.
Deploy the application to Vercel:
-
Install Vercel CLI:
npm install -g vercel
-
Run Vercel deployment:
vercel
-
Follow the prompts to complete the deployment.
Contributions are welcome! Please fork the repository and submit a pull request for review.
This project is licensed under the MIT License - see the LICENSE.md file for details.