Skip to content

πŸ”₯ Flex those fingers and show the world your fearless vibes! πŸ–±οΈβœ¨ Are you brave enough to top the charts? πŸš€πŸ˜Ž

License

Notifications You must be signed in to change notification settings

yesbhautik/click.fun

Repository files navigation

Click Counter App

A Windows desktop application that tracks mouse clicks and keyboard presses, with real-time synchronization to a MongoDB database through a Node.js backend.

Status

Initial build is DONE and running smoothly on the local! But the MongoDB connections and sync? Totally mashed up πŸ˜…πŸš§ I'll fix it when I get some time. But hey, y'all feel free to drop a PR! πŸ™Œ

Why Did I Make This?

I've noticed that many developers and tech enthusiasts showcase their coding time, stats, matrices, and even Spotify activity. But why not share the total key & click count? That's the main thing! πŸ˜† I tried to find a tool like this, but nothing fit what I had in mind.

If the open-source community is ready to flex their fingers, then let's create apps for Mac, Windows, and Android as well. πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ» Oh, are you typing like this? Haha! πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»πŸ‘‡πŸ»

Features

  • Real-time tracking of mouse clicks and keyboard presses
  • User authentication (login/register)
  • Background synchronization of statistics
  • Minimizes to system tray
  • Server-side data storage with MongoDB
  • REST API backend with Node.js
  • Secure authentication with JWT

Prerequisites

Client Application

  • Windows OS
  • .NET Framework 4.7.2 or later
  • Visual Studio 2019 or later (for development)

Server Application

  • Node.js 14.x or later
  • MongoDB 4.x or later
  • npm or yarn package manager

Installation

Server Setup

  1. Navigate to the api-server directory
  2. Install dependencies:
    npm install
  3. Create a .env file with the following variables:
    MONGODB_URI=your_mongodb_connection_string
    JWT_SECRET=your_jwt_secret_key
    PORT=3000
  4. Start the server:
    npm start

Client Setup

  1. Open the solution in Visual Studio
  2. Restore NuGet packages
  3. Build the solution
  4. Configure the App.config with your server URL:
    <appSettings>
      <add key="ApiEndpoint" value="http://localhost:3000/api" />
    </appSettings>

Usage

  1. Launch the application
  2. Register a new account or login with existing credentials
  3. The application will start tracking mouse clicks and keyboard presses
  4. Statistics are automatically synced to the server every minute
  5. Minimize to system tray to keep tracking in background
  6. Access settings to configure server URL or logout

Development

Project Structure

ClickCounterApp/
β”œβ”€β”€ Forms/                 # Windows Forms UI
β”œβ”€β”€ Models/               # Data models
β”œβ”€β”€ Services/             # Business logic and services
β”œβ”€β”€ Helpers/             # Utility classes
└── api-server/          # Node.js backend
    β”œβ”€β”€ src/
    β”‚   β”œβ”€β”€ models/     # MongoDB schemas
    β”‚   β”œβ”€β”€ routes/     # API endpoints
    β”‚   └── utils/      # Utility functions
    └── tests/          # API tests

API Endpoints

  • POST /api/auth/register - Register new user
  • POST /api/auth/login - User login
  • POST /api/clicks - Save click data
  • GET /api/view/stats - View user statistics

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This repository is licensed under a ο»ΏCreative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. For more information, see the ο»ΏLICENSE file.

Acknowledgments

  • MongoDB for database
  • Node.js for backend
  • .NET Framework for Windows Forms
  • JWT for authentication

About

πŸ”₯ Flex those fingers and show the world your fearless vibes! πŸ–±οΈβœ¨ Are you brave enough to top the charts? πŸš€πŸ˜Ž

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published