This is the landing website for ProxLock, a secure API proxy management platform. ProxLock provides a secure gateway for your applications, ensuring your sensitive API credentials stay safe through an innovative XORed partial key system.
ProxLock is a secure API proxy service that:
- Splits API keys into partial keys using XOR encryption, ensuring your complete key is never stored in one place
- Routes API requests through secure proxy infrastructure
- Validates app instances using Apple's Device Check for authenticity
- Dynamically constructs bearer tokens by combining partial keys at request time
- React 19 - Modern React with the latest features
- TypeScript - Type-safe development
- Vite - Fast build tool and dev server
- Clerk - Authentication and waitlist management
- ESLint - Code quality and linting
- Cloudflare Workers - Deployment platform
Before you begin, ensure you have the following installed:
- Node.js (v18 or higher recommended)
- npm (comes with Node.js) or yarn
- A code editor (VS Code recommended)
git clone <repository-url>
cd landingnpm installIf you need to configure Clerk or other services, create a .env file in the root directory:
VITE_CLERK_PUBLISHABLE_KEY=your_clerk_key_herenpm run devThe application will be available at http://localhost:5173 (or the port Vite assigns).
npm run buildThis will:
- Type-check the TypeScript code
- Build the optimized production bundle
- Output files to the
dist/directory
To preview the production build locally:
npm run previewnpm run dev- Start the development server with hot module replacementnpm run build- Build the application for productionnpm run lint- Run ESLint to check code qualitynpm run preview- Preview the production build locally
The project uses ESLint for code quality. Run the linter before committing:
npm run lintlanding/
├── src/
│ ├── components/ # Reusable React components
│ │ └── DecryptedText.tsx
│ ├── contexts/ # React context providers
│ │ └── ThemeContext.tsx
│ ├── pages/ # Page components
│ ├── assets/ # Static assets (images, icons, etc.)
│ ├── App.tsx # Main application component
│ ├── App.css # Application styles
│ ├── main.tsx # Application entry point
│ └── index.css # Global styles
├── index.html # HTML template
├── vite.config.ts # Vite configuration
├── tsconfig.json # TypeScript configuration
├── wrangler.jsonc # Cloudflare Workers configuration
└── package.json # Dependencies and scripts
We welcome contributions to the ProxLock landing page! Here's how you can help:
- Fork the repository and clone your fork
- Create a new branch for your feature or bug fix:
or
git checkout -b feature/your-feature-name
git checkout -b fix/your-bug-fix
- Follow the existing code style - The project uses TypeScript with React best practices
- Write clean, readable code - Use meaningful variable and function names
- Keep components focused - Each component should have a single responsibility
- Test your changes - Make sure the application runs correctly with your changes
- Run the linter - Ensure your code passes ESLint checks:
npm run lint
-
Commit your changes with clear, descriptive commit messages:
git commit -m "Add feature: description of what you added" -
Push to your fork:
git push origin feature/your-feature-name
-
Create a Pull Request on GitHub with:
- A clear title and description
- Details about what changes you made and why
- Any relevant screenshots or examples
- All pull requests will be reviewed by maintainers
- Be open to feedback and suggestions
- Address any requested changes promptly
- Keep pull requests focused and reasonably sized
See the License file for details.
For questions or issues, please open an issue on GitHub or contact the maintainers.
Note: ProxLock is currently in a limited beta for Apple platforms only. Support for other platforms is planned for the future.