Use Cases & Examples

See how DOONKLY transforms productivity across different roles and industries

AI can make mistakes. Information may be incomplete, outdated or incorrect. Always verify important details from reliable sources before making decisions.

Developers & Engineers
TRY THIS PROMPT: rocket_launch "Create a simple Chrome Dino game clone using HTML5 Canvas" send
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width,initial-scale=1" />
  <title>Dino Game (Minimal Clone)</title>
  <style>
    :root{--bg:#f7f7f7;--ground:#555;--dino:#222;--ob:#333;}
    html,body{height:100%;margin:0;font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial}
    .wrap{display:flex;align-items:center;justify-content:center;height:100%;background:linear-gradient(#e9f1ff,var(--bg));}
    .game-card{width:900px;max-width:95vw;background:#fff;border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,0.08);padding:18px}
    header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
    header h1{font-size:16px;margin:0}
    .controls{font-size:13px;color:#555}
    canvas{display:block;width:100%;height:300px;background:linear-gradient(180deg,#9fd3ff 0%,#dbeeff 40%,#fff 100%);border-radius:8px}
    .info{display:flex;gap:12px;align-items:center;margin-top:8px}
    .btn{background:#0b74de;color:#fff;padding:8px 12px;border-radius:8px;border:0;cursor:pointer}
    .meta{font-size:14px;color:#222}
    footer{font-size:12px;color:#666;margin-top:8px}
    @media (max-width:600px){canvas{height:220px}}
  </style>
</head>
<body>
  <div class="wrap">
    <div class="game-card">
      <header>
        <h1>Chrome Dino Clone — HTML5 Game</h1>
        <div class="controls">Press <strong>Space</strong> or tap to jump</div>
      </header>

      <canvas id="game" width="900" height="300"></canvas>

      <div class="info">
        <div class="meta">Score: <span id="score">0</span></div>
        <div class="meta">Highscore: <span id="hi">0</span></div>
        <button id="restart" class="btn">Restart</button>
      </div>

      <footer>Press Space or tap to jump • Score saved locally</footer>
    </div>
  </div>

  <script>
    const canvas = document.getElementById('game');
    const ctx = canvas.getContext('2d');
    const scoreEl = document.getElementById('score');
    const hiEl = document.getElementById('hi');
    const restartBtn = document.getElementById('restart');

    const W = canvas.width;
    const H = canvas.height;

    let gameSpeed = 4;
    let gravity = 0.7;
    let isRunning = false;
    let frame = 0;
    let score = 0;
    let highscore = parseInt(localStorage.getItem('dino_hi') || '0', 10);
    hiEl.textContent = highscore;

    const dino = {
      x: 60,
      y: H - 70,
      w: 44,
      h: 44,
      vy: 0,
      onGround: true,
      jumpPower: -12,
      ducking: false,
      draw() {
        ctx.save();
        ctx.fillStyle = getComputedStyle(document.documentElement).getPropertyValue('--dino') || '#222';
        const h = this.ducking ? this.h * 0.6 : this.h;
        ctx.fillRect(this.x, this.y - h, this.w, h);
        ctx.fillStyle = '#fff';
        ctx.fillRect(this.x + this.w - 12, this.y - h + 10, 6, 6);
        ctx.restore();
      },
      update() {
        this.vy += gravity;
        this.y += this.vy;
        const groundY = H - 26;
        if (this.y >= groundY - this.h) {
          this.y = groundY - this.h;
          this.vy = 0;
          this.onGround = true;
        } else {
          this.onGround = false;
        }
      },
      jump() {
        if (this.onGround) {
          this.vy = this.jumpPower;
          this.onGround = false;
        }
      },
      duck(set) {
        this.ducking = !!set && this.onGround;
      }
    };

    const obstacles = [];

    function spawnObstacle() {
      const h = 30 + Math.floor(Math.random() * 36);
      obstacles.push({x: W + 20, y: H - 26 - h, w: 18 + Math.floor(Math.random()*12), h});
    }

    const ground = {x:0};

    function onKey(e) {
      if (e.code === 'Space') {
        e.preventDefault();
        if (!isRunning) startGame();
        dino.jump();
      }
      if (e.code === 'ArrowDown') dino.duck(true);
    }
    function onKeyUp(e) { if (e.code === 'ArrowDown') dino.duck(false); }
    function onPointer() { if (!isRunning) startGame(); dino.jump(); }
    function onTouchStart(e) { e.preventDefault(); if (!isRunning) startGame(); dino.jump(); }

    function collide(a, b) {
      return a.x < b.x + b.w && a.x + a.w > b.x && a.y - a.h < b.y + b.h && a.y > b.y;
    }

    function resetGame() {
      isRunning = false;
      obstacles.length = 0;
      gameSpeed = 4;
      frame = 0;
      score = 0;
      dino.y = H - 70;
      dino.vy = 0;
      dino.duck(false);
      scoreEl.textContent = 0;
    }

    function startGame() {
      if (isRunning) return;
      isRunning = true;
      loop();
    }

    function loop() {
      if (!isRunning) return;
      frame++;

      dino.update();
      if (frame % Math.max(60 - Math.floor(gameSpeed), 40) === 0) spawnObstacle();
      for (let i = obstacles.length -1; i >=0; i--) {
        const o = obstacles[i];
        o.x -= gameSpeed;
        if (o.x + o.w < -50) obstacles.splice(i,1);
      }

      score += 1;
      scoreEl.textContent = Math.floor(score/10);
      if (score/10 > highscore) {
        highscore = Math.floor(score/10);
        hiEl.textContent = highscore;
      }

      for (const o of obstacles) {
        const dinoBox = {x:dino.x, y:dino.y, w:dino.w, h:dino.ducking ? dino.h*0.6 : dino.h};
        if (collide(dinoBox, o)) {
          isRunning = false;
          const sc = Math.floor(score/10);
          if (sc > parseInt(localStorage.getItem('dino_hi') || '0',10)) localStorage.setItem('dino_hi', sc);
          drawGame(true);
          return;
        }
      }

      drawGame(false);
      requestAnimationFrame(loop);
    }

    function drawGame(gameOver) {
      ctx.clearRect(0,0,W,H);
      drawClouds();
      const groundY = H - 26;
      ctx.fillStyle = getComputedStyle(document.documentElement).getPropertyValue('--ground') || '#555';
      ctx.fillRect(0, groundY, W, 26);
      ctx.fillStyle = '#6a6a6a';
      ground.x = (ground.x - gameSpeed) % 40;
      for (let gx = ground.x; gx < W; gx += 40) ctx.fillRect(gx, groundY + 14, 24, 3);
      dino.draw();
      for (const o of obstacles) {
        ctx.fillStyle = getComputedStyle(document.documentElement).getPropertyValue('--ob') || '#333';
        ctx.fillRect(o.x, o.y, o.w, o.h);
      }
      ctx.fillStyle = '#111';
      ctx.font = '18px system-ui';
      ctx.fillText('Score: ' + Math.floor(score/10), W - 160, 28);
      if (!isRunning) {
        ctx.fillStyle = 'rgba(255,255,255,0.85)';
        ctx.fillRect(0,0,W,H);
        ctx.fillStyle = '#111';
        ctx.font = '22px system-ui';
        ctx.textAlign = 'center';
        ctx.fillText(gameOver ? 'Game Over' : 'Press to Start', W/2, H/2 - 10);
        ctx.font = '14px system-ui';
        ctx.fillText('Press Space or tap to jump', W/2, H/2 + 18);
        ctx.textAlign = 'start';
      }
    }

    function drawClouds() {
      ctx.save();
      ctx.fillStyle = 'rgba(255,255,255,0.9)';
      const t = frame/60;
      for (let i=0;i<3;i++){
        const cx = ((i*300)-(t*20))%(W+200)-100;
        const cy = 40 + i*20;
        ctx.beginPath();
        ctx.ellipse(cx, cy, 36, 18, 0, 0, Math.PI*2);
        ctx.ellipse(cx+24, cy+6, 28, 14, 0, 0, Math.PI*2);
        ctx.fill();
      }
      ctx.restore();
    }

    window.addEventListener('keydown', onKey);
    window.addEventListener('keyup', onKeyUp);
    canvas.addEventListener('pointerdown', onPointer);
    canvas.addEventListener('touchstart', onTouchStart, {passive:false});
    restartBtn.addEventListener('click', ()=>{ resetGame(); startGame(); });

    resetGame();
    drawGame(false);
  </script>
</body>
</html>
Content Creators
TRY THIS PROMPT: palette "Renaissance portrait of a woman in period dress, soft Caravaggio-style lighting, visible brushstrokes and oil-on-canvas textures" send
Caravaggio-style AI generated portrait
Students & Researchers
TRY THIS PROMPT: school "Proof of Heisenberg's theorem" send
Business Professionals
TRY THIS PROMPT: screenshot_region "Analyze the printscreen and make a small resume" send
Business analysis screenshot

The text discusses the impact of geopolitical risk (GPR) and economic policy uncertainty (EPU) on financial markets, focusing on the U.S. and China. It highlights the significance of understanding how shifts in EPU and GPR affect risk transmission between these major powers. The research uses a dual methodology with VAR and Granger causality to study this dynamic, emphasizing the role of the U.S. and China as global and regional uncertainty leaders. The study contributes to the literature on international relations and financial stability by exploring U.S.-China frictions and their implications for systemic risk propagation.

Source: https://www.mdpi.com/1911-8074/18/11/596

Researchers
TRY THIS PROMPT: network_intelligence_history "Designing a winning business model for IT services means creating a structure that not only delivers value to clients but also scales profitably and sustainably. Let's break this down step by step" send

Designing a winning business model for IT services that delivers value to clients while scaling profitably and sustainably involves a strategic approach that encompasses understanding market needs, leveraging technology, and maintaining operational efficiency. Here's a step-by-step breakdown of how to achieve this:

Step 1: Market Research and Analysis

Objective: Understand the market demands, customer pain points, and competitive landscape.

  • Conduct Surveys and Interviews: Gather data directly from potential clients to understand their needs and challenges.
  • Industry Analysis: Study trends, emerging technologies, and regulatory changes that could impact the market.
  • Competitive Analysis: Identify your competitors, analyze their offerings, strengths, and weaknesses to find a gap or an opportunity to differentiate.

Step 2: Define Your Niche and Services

Objective: Pinpoint a specific market segment and tailor your services to meet its unique needs.

  • Select a Niche: Based on your research, choose a niche where you can offer significant value, such as healthcare IT, financial IT services, or small business IT solutions.
  • Service Design: Develop services that specifically address the pain points and requirements of your target niche. This could include managed IT services, cloud solutions, cybersecurity, or custom software development.

Step 3: Develop a Strong Value Proposition

Objective: Create a compelling reason for clients to choose your services over competitors.

  • Unique Selling Points (USPs): Highlight aspects of your service that are unique and beneficial to your target market, such as superior customer service, innovative technology solutions, or cost efficiency.
  • Benefits Over Features: Focus on how your services make your clients' operations smoother, more secure, or more efficient rather than just listing service features.

Step 4: Choose the Right Business Model

Objective: Select a business model that aligns with your services, market needs, and scalability goals.

  • Subscription Model: Provides steady revenue and is ideal for services like cloud computing or ongoing IT support.
  • Project-Based Model: Suitable for customized solutions like software development or IT consulting.
  • Hybrid Model: Combines elements of both to cater to varying client needs.

Step 5: Pricing Strategy

Objective: Develop a pricing strategy that balances competitiveness with profitability.

  • Cost-Plus Pricing: Set prices based on costs plus a markup. Ensures profitability but must be competitive.
  • Value-Based Pricing: Price services based on the value they provide to the customer, which can often command a premium.
  • Competitive Pricing: Set prices in line with competitors, adjusting based on your additional value.

Step 6: Technology and Infrastructure

Objective: Utilize the best technology and infrastructure to deliver high-quality services efficiently.

  • Invest in Technology: Use advanced tools and platforms that enhance your service delivery (e.g., cloud platforms, cybersecurity tools).
  • Automation: Implement automation to reduce costs, increase speed, and eliminate errors in service delivery.

Step 7: Build a Qualified Team

Objective: Assemble a team that can effectively deliver your services and support growth.

  • Hiring: Recruit skilled professionals with experience in your niche.
  • Training and Development: Continuously upgrade your team's skills to keep up with technological advancements.

Step 8: Marketing and Sales Strategy

Objective: Effectively market your services to reach and convert your target audience.

  • Digital Marketing: Leverage SEO, content marketing, and social media to reach a broader audience.
  • Sales Strategy: Develop a sales process that nurtures leads and focuses on converting high-value clients.
  • Networking: Build relationships through industry events and professional groups.

Step 9: Customer Service and Support

Objective: Provide exceptional customer service to retain clients and encourage referrals.

  • Support Channels: Offer multiple channels for support (phone, email, chat).
  • Feedback Loops: Regularly collect and act on customer feedback to improve services.

Step 10: Scalability and Adaptation

Objective: Ensure that your business model is scalable and can adapt to changes in the market.

  • Scalable Processes: Design processes that can be scaled up or down without significant costs.
  • Continuous Improvement: Stay responsive to technology and market trends and adjust your business model as necessary.

Conclusion

A winning business model in IT services is not static but evolves continuously as you refine your understanding of the market, enhance your service offerings, and optimize your operations. Success lies in delivering undeniable value to your clients, maintaining flexibility to adapt to market changes, and scaling operations in a sustainable manner.

Legal Teams
TRY THIS PROMPT: gavel "Create a terms and conditions page" send

Creating a terms and conditions page is crucial for setting the rules and guidelines for users interacting with your IT services. Here's a general template you can modify according to your specific needs and legal requirements:

Terms and Conditions

1. Introduction

Welcome to [Your Company Name]. These terms and conditions outline the rules and regulations for the use of [Your Website URL] and our IT services. By accessing this website and using our services, you accept these terms and conditions in full. If you disagree with any part of these terms and conditions, do not use our website or services.

2. Definitions

  • "Company" refers to [Your Company Name], the provider of IT services.
  • "User," "You," and "Your" refer to the individual or entity using our services.
  • "Services" refer to the IT services provided by the Company as described on our website.

3. Use of Services

  • Eligibility: You must be at least 18 years old to use our services.
  • Account Responsibility: You are responsible for maintaining the confidentiality of your account information and for all activities that occur under your account.
  • Prohibited Activities: You agree not to engage in any activity that disrupts or interferes with our services, including unauthorized access or use of data.

4. Service Terms

  • Service Availability: We aim to provide uninterrupted services but do not guarantee 100% availability. Scheduled maintenance and upgrades will be communicated in advance.
  • Modifications: We reserve the right to modify or discontinue our services at any time without prior notice.

5. Payment and Billing

  • Fees: All fees for services are specified on our website or in your service agreement.
  • Payment Terms: Payments are due in accordance with the terms specified in your invoice. Late payments may incur additional charges.
  • Refunds: Refunds are only provided as outlined in our refund policy.

6. Intellectual Property

  • Ownership: All content, trademarks, and data on this site and through our services are the property of the Company or our licensors.
  • Restrictions: You may not reproduce, duplicate, copy, sell, or exploit any portion of our services without express written permission from the Company.

7. Limitation of Liability

  • Disclaimer: Our services are provided "as is" without warranties of any kind. We do not accept responsibility for any loss or damage incurred as a result of using our services.
  • Limitation: In no event shall the Company be liable for any indirect, incidental, or consequential damages arising out of or in connection with the use of our services.

8. Indemnification

You agree to indemnify and hold the Company harmless from any claims, damages, liabilities, and expenses arising out of your use of our services or breach of these terms.

9. Privacy Policy

Your privacy is important to us. Please review our [Privacy Policy] to understand how we collect, use, and protect your personal information.

10. Governing Law

These terms and conditions are governed by the laws of [Your Jurisdiction], and any disputes will be resolved in the courts of [Your Jurisdiction].

11. Changes to Terms

We reserve the right to update these terms and conditions at any time. Changes will be posted on this page, and your continued use of our services after any changes signifies your acceptance of the new terms.

12. Contact Information

For any questions about these terms and conditions, please contact us at [Your Contact Information].

Note: This template is a general guideline and may need to be adjusted to fit the specific legal and business needs of your company. It's advisable to consult with a legal professional to ensure compliance with applicable laws and regulations.