EZQ42: Simplify Background Jobs for Serverless Functions (beta)

Effortless Queue Management for Next.js and Vercel

EZQ42 is the ultimate solution for developers seeking a streamlined background job queue service tailored for serverless functions, particularly those running Next.js applications on Vercel. Our service enables you to manage long-running tasks efficiently, enhancing your application's performance and user experience.

Why Choose EZQ42?

How It Works

EZQ42 simplifies the process of managing background jobs in your serverless environment:

  1. Create an API Endpoint: Set up an API endpoint or Route handler in your Next.js app
  2. Implement Job Logic: Write your long-running job logic within the endpoint
  3. Add Job to EZQ42: Specify the URL of your endpoint and the data to be processed
  4. Let EZQ42 Handle the Rest: Our service will call your endpoint with the provided data, managing the queue and execution

Getting Started

Free Tier

Ideal for small projects and testing, our free tier offers:

To use the free tier, simply make a POST request:

curl -X POST "https://app.ezq42.com/api/v1/job" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "your@email.com",
    "payload": {
      "url": "https://your-app.com/api/your-job-endpoint"
    }
  }'

Note: The email field is required for all requests.

Paid Tier

For production applications and higher volume needs, our paid tier offers:

To get started with the paid tier:

  1. Purchase a license key from our Gumroad page
  2. Activate your key:
curl -X POST "https://app.ezq42.com/activate-key" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "your@email.com",
    "apiKey": "your-license-key"
  }'
  1. Use your activated key in job requests:
curl -X POST "https://app.ezq42.com/api/v1/job" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "your@email.com",
    "apiKey": "your-license-key",
    "payload": {
      "url": "https://your-app.com/api/your-job-endpoint"
    }
  }'

Important: Please keep your license key private and do not share it with anyone or hard code it in your project code.

Request Payload

The request payload is a JSON object which should conform to the following zod schema:

const requestSchema = z.object({
  email: z.string().email(),
  apiKey: z.string().optional(),
  delay: z.number().int().nonnegative().default(0),
  concurrency: z.number().int().positive().default(1),
  payload: z.object({
    url: z.string().url(),
    method: z
      .enum(["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"])
      .optional()
      .default("GET"),
    headers: z.record(z.string()).optional(),
    body: z.any().optional().optional(),
  }),
});

Example Project

See EZQ42 in action! Check out our example project on GitHub to get a hands-on understanding of how to integrate EZQ42 into your Next.js application.

Why Background Job Queues Matter

In the world of serverless computing, efficiently managing long-running tasks is crucial. EZQ42 addresses common challenges faced by developers:

Use Cases

EZQ42 is perfect for a wide range of applications, including:

Open Source

Want to contribute or run EZQ42 locally? Follow these steps:

  1. Clone the repository: git clone https://github.com/nicnocquee/ezq42.com.git
  2. Install dependencies: npm install
  3. Set up environment variables: cp .env.example .env and fill in the required values
  4. Start the development environment: docker-compose -f docker-compose.dev.yml up
  5. Run the development server: npm run dev

The full source code is available on GitHub.

Support

If you have any questions or need assistance, please contact us at hi@nico.fyi using e-mail address you used to purchase your license key. Please also include your license key and any relevant details about your project.


Made in Zürich, Switzerland by Nico.