Winlock Web is a Next.js 15 web application that serves as the portal for downloading Winlock—a Windows desktop application that securely locks your folders—as well as for purchasing activation keys for Winlock Premium or Pro plans.
- Download Winlock: Direct link for users to download the Winlock desktop application.
- Purchase Activation Keys: Seamless integration with Razorpay to handle transactions for Premium and Pro plans.
- Secure Activation: Uses JWT for creating and verifying activation keys.
- Database Integration: Connects to MongoDB for managing user and transaction data.
- Email Notifications: Configured to send emails via Google for key confirmations and updates.
To get a local copy up and running, follow these steps:
-
Clone the repository:
git clone https://github.com/akash-singh8/winlock-web.git cd winlock-web
-
Install dependencies:
npm install
-
Create a
.env
file:
Copy the provided environment variables (see Environment Variables) into a.env
file in the root directory. -
Run the development server:
npm run dev
Your application should now be running on http://localhost:3000.
The application requires the following environment variables to function correctly. Create a .env
file in your project root and add:
# JWT secret for activation keys
JWT_SECRET_KEY="secret to create or verify activation keys"
# MongoDB connection string
MONGODB_URI="database url"
# Download link for the Winlock installer
NEXT_PUBLIC_DOWNLOAD_LINK="https://github.com/akash-singh8/winlock/releases/download/v1.0.0/WinlockSetup.exe"
# Email configuration for sending notifications
GOOGLE_EMAIL="xyz@example.com"
GOOGLE_APP_PASS="email app password"
# Payment related variables - not compulsory
RAZORPAY_KEY="abc"
RAZORPAY_SECRET="xyz"
NEXT_PUBLIC_RAZORPAY_KEY="abc"
Make sure to replace the placeholder values with your actual credentials and configuration details.
Contributions are welcome! If you have suggestions or improvements, please feel free to fork the repository and submit a pull request.
- Fork the Project.
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
). - Commit your Changes (
git commit -m 'Add some AmazingFeature'
). - Push to the Branch (
git push origin feature/AmazingFeature
). - Open a Pull Request.
For any questions, issues, or feedback, please open an issue on GitHub or contact us.
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0) license. For more details, see the license page.
Happy Coding!