dependabot[bot] 3c5b7b7c2f chore(deps): bump the npm_and_yarn group across 1 directory with 12 updates
Bumps the npm_and_yarn group with 12 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [brace-expansion](https://github.com/juliangruber/brace-expansion) | `1.1.11` | `1.1.12` |
| [braces](https://github.com/micromatch/braces) | `3.0.2` | `3.0.3` |
| [cross-spawn](https://github.com/moxystudio/node-cross-spawn) | `7.0.3` | `7.0.6` |
| [esbuild](https://github.com/evanw/esbuild) | `0.19.2` | `0.19.12` |
| [js-yaml](https://github.com/nodeca/js-yaml) | `4.1.0` | `4.1.1` |
| [micromatch](https://github.com/micromatch/micromatch) | `4.0.5` | `4.0.8` |
| [node-forge](https://github.com/digitalbazaar/forge) | `1.3.1` | `1.3.3` |
| [rollup](https://github.com/rollup/rollup) | `3.28.1` | `3.29.5` |
| [serialize-javascript](https://github.com/yahoo/serialize-javascript) | `6.0.1` | `6.0.2` |
| [serve-static](https://github.com/expressjs/serve-static) | `1.15.0` | `1.16.2` |
| [tar](https://github.com/isaacs/node-tar) | `6.1.15` | `6.2.1` |
| [undici](https://github.com/nodejs/undici) | `5.23.0` | `5.29.0` |



Updates `brace-expansion` from 1.1.11 to 1.1.12
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12)

Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

Updates `cross-spawn` from 7.0.3 to 7.0.6
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

Updates `esbuild` from 0.19.2 to 0.19.12
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/v0.19.12/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.19.2...v0.19.12)

Updates `js-yaml` from 4.1.0 to 4.1.1
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

Updates `micromatch` from 4.0.5 to 4.0.8
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

Updates `node-forge` from 1.3.1 to 1.3.3
- [Changelog](https://github.com/digitalbazaar/forge/blob/main/CHANGELOG.md)
- [Commits](https://github.com/digitalbazaar/forge/compare/v1.3.1...v1.3.3)

Updates `rollup` from 3.28.1 to 3.29.5
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG-3.md)
- [Commits](https://github.com/rollup/rollup/compare/v3.28.1...v3.29.5)

Updates `serialize-javascript` from 6.0.1 to 6.0.2
- [Release notes](https://github.com/yahoo/serialize-javascript/releases)
- [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.1...v6.0.2)

Updates `serve-static` from 1.15.0 to 1.16.2
- [Release notes](https://github.com/expressjs/serve-static/releases)
- [Changelog](https://github.com/expressjs/serve-static/blob/v1.16.2/HISTORY.md)
- [Commits](https://github.com/expressjs/serve-static/compare/v1.15.0...v1.16.2)

Updates `tar` from 6.1.15 to 6.2.1
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.1.15...v6.2.1)

Updates `undici` from 5.23.0 to 5.29.0
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.23.0...v5.29.0)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.12
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: braces
  dependency-version: 3.0.3
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: cross-spawn
  dependency-version: 7.0.6
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.19.12
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: micromatch
  dependency-version: 4.0.8
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: node-forge
  dependency-version: 1.3.3
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: rollup
  dependency-version: 3.29.5
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: serialize-javascript
  dependency-version: 6.0.2
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: serve-static
  dependency-version: 1.16.2
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: tar
  dependency-version: 6.2.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: undici
  dependency-version: 5.29.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-06 16:07:46 +00:00
2023-09-01 19:54:12 +08:00
2023-09-01 19:54:12 +08:00
2023-09-01 19:54:12 +08:00
2023-09-01 19:54:12 +08:00
2024-03-20 01:14:54 +08:00
2023-09-01 19:54:12 +08:00

XDPL

A lightweight proxy server for DeepL Translator built with Nitro, providing a clean API interface to DeepL's translation services.

Features

  • 🚀 Fast and lightweight proxy server
  • 🔒 Secure routing through Nitro
  • 🌐 Full DeepL API compatibility
  • 📦 Easy deployment to various platforms
  • ⚡ Built-in caching and optimization

Tech Stack

  • Framework: Nitro - Universal JavaScript server
  • Runtime: Node.js
  • Package Manager: pnpm
  • TypeScript: Full TypeScript support

Getting Started

Prerequisites

  • Node.js 18+
  • pnpm (recommended) or npm

Installation

  1. Clone the repository:

    git clone https://github.com/xixu-me/XDPL.git
    cd XDPL
    
  2. Install dependencies:

    pnpm install
    
  3. Start the development server:

    pnpm dev
    

The server will start on http://localhost:3000

Available Scripts

  • pnpm dev - Start development server with hot reload
  • pnpm build - Build for production
  • pnpm preview - Preview production build locally
  • pnpm prepare - Prepare Nitro types

Usage

The proxy server forwards all requests to DeepL's API. You can use it as a drop-in replacement for direct DeepL API calls:

// Instead of calling https://www2.deepl.com/jsonrpc
// Call your deployed proxy
fetch('https://your-domain.vercel.app/jsonrpc', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    // Your DeepL API request
  })
})

Deployment

Deploy to Vercel

Deploy with Vercel

Option 1: One-Click Deploy

Click the "Deploy with Vercel" button above to deploy instantly.

Option 2: Manual Deploy via CLI

  1. Install Vercel CLI:

    npm i -g vercel
    
  2. Login to your Vercel account:

    vercel login
    
  3. Deploy from your project directory:

    vercel
    
  4. For production deployment:

    vercel --prod
    

Option 3: Deploy via Git Integration

  1. Push your code to a Git repository (GitHub, GitLab, or Bitbucket)
  2. Visit vercel.com and import your repository
  3. Vercel will automatically detect the Nitro configuration and deploy

Vercel Configuration

The project is pre-configured for Vercel deployment. Nitro automatically generates the necessary Vercel configuration during the build process.

Deploy to Other Platforms

This Nitro application can also be deployed to:

  • Netlify: nitro build --preset netlify
  • Cloudflare Workers: nitro build --preset cloudflare-pages
  • AWS Lambda: nitro build --preset aws-lambda
  • DigitalOcean: nitro build --preset digitalocean

For more deployment options, see the Nitro deployment documentation.

Configuration

The main configuration is in nitro.config.ts:

export default defineNitroConfig({
  routeRules: {
    "/**": {
      proxy: "https://www2.deepl.com/**",
    },
  },
});

Data Privacy & Security

Privacy Considerations

  • Proxy Operation: XDPL acts as a transparent proxy, forwarding requests directly to DeepL's servers without storing or logging translation content
  • No Data Retention: Translation requests and responses pass through the proxy without being cached or stored locally
  • Direct Communication: Your data flows directly between your application and DeepL's secure infrastructure

Security Features

  • HTTPS Support: All communications are encrypted in transit when deployed with HTTPS
  • No API Key Exposure: Your DeepL API credentials remain between your client and DeepL's servers
  • Minimal Attack Surface: Lightweight proxy design reduces potential security vulnerabilities
  • Server-Side Processing: Runs on secure server infrastructure (Vercel, Netlify, etc.)

Best Practices

  • Use HTTPS: Always deploy with HTTPS enabled for encrypted communication
  • Environment Variables: Store sensitive configuration in environment variables, not in code
  • Regular Updates: Keep dependencies updated to ensure security patches are applied
  • Monitor Usage: Implement proper logging and monitoring for your deployment

Compliance

  • GDPR Friendly: No personal data is stored or processed by the proxy
  • Data Sovereignty: Translation data flows directly to DeepL, maintaining your existing compliance posture
  • Audit Trail: Server logs can be configured according to your compliance requirements

License

This project is licensed under the MIT License - see the LICENSE file for details.

S
Description
Lightweight proxy server for DeepL Translator built with Nitro, providing a clean API interface to DeepL's translation services
Readme MIT
195 KiB
0 Stars 1 Watchers 0 Forks
Languages
JavaScript 63.8%
TypeScript 36.2%