how to access my pc on wan

Step 1: Ensure Your PC is Reachable

  1. Get your Public IP Address
    • Search “What is my IP” on Google from your PC.
    • This is the address you’ll use to reach your network from outside.
  2. Check if Your ISP allows inbound connections
    • Some ISPs block incoming traffic on common ports (especially on mobile/hotspot internet).
    • If blocked, you may need to request a static IP or use a VPN service.

Step 2: Configure Your Router

  1. Enable Port Forwarding
    • Log in to your router’s admin panel.
    • Forward the port(s) you need to your PC’s local IP.
      • For Remote Desktop (RDP): TCP port 3389.
      • For SSH: TCP port 22.
      • For VNC: TCP port 5900.
    Example: Forward TCP 3389192.168.1.100:3389.
  2. Reserve a Static Local IP
    • Assign your PC a static IP in router DHCP settings so port forwarding always works.

Step 3: Secure Remote Access

  • Windows PC (RDP)
    • Enable Remote Desktop:
      Settings > System > Remote Desktop > Enable.
    • Use your public IP + :3389 from outside (e.g., 123.45.67.89:3389).
    • Change RDP port or use a VPN for security.
  • Linux / macOS
    • Use SSH (ssh user@publicIP).
    • Or install VNC server and forward port 5900.

Step 4: Make it Reliable

  1. Dynamic DNS (DDNS)
    • If your ISP changes your public IP frequently, use a free DDNS service (like No-IP or DuckDNS).
    • This gives you a domain (e.g., myhomepc.ddns.net) instead of remembering IP.
  2. VPN Option (Safer)
    • Instead of exposing RDP/SSH directly, set up a VPN server on your router or PC (WireGuard, OpenVPN).
    • Connect to VPN, then access your PC like you’re on the LAN.

Example Setup (Windows Remote Desktop over WAN)

  1. Public IP: 123.45.67.89
  2. Router Port Forwarding: TCP 3389192.168.1.100:3389
  3. On another computer:
    • Open Remote Desktop Client.
    • Enter 123.45.67.89:3389.
    • Log in with your Windows account.

free ai api for developers

Several platforms offer free AI APIs for developers, allowing access to various AI models and functionalities for building applications. These platforms typically provide free tiers or usage credits suitable for development and testing.

Notable Free AI API Platforms:

  • Google AI Studio: Provides generous access to Gemini models and other Google AI tools for tasks like translation, image analysis, and speech-to-text. Usage is free in available regions.
  • Hugging Face: Offers free credits for accessing a vast collection of open-source machine learning models through their Inference API, ideal for testing specialized models.
  • DeepAI: A user-friendly platform with a free tier and usage-based plans, offering access to various AI tools and APIs for enhancing creativity and analytical tasks.
  • Eden AI: Provides a unified API to access multiple AI models from different providers (e.g., OpenAI, Google) with a free tier for single-member teams.
  • Cohere: Offers a developer plan with monthly request limits, suitable for building business-grade text features.
  • OpenRouter: Allows access to many free models via a single API, enabling developers to compare different AI models for specific tasks.
  • Assembly AI: Provides a generous free tier for speech-to-text functionality, offering up to 416 free hours without requiring a credit card.
  • Stability AI: Offers open-access AI models, including Stable Diffusion for image generation, with free trials available for developers and creators.
  • Anthropic: Provides API keys for their powerful Claude models (e.g., Claude 3) which are free to obtain, though subject to usage restrictions.

Choosing an API:

The best choice depends on the specific AI task and project requirements. Consider factors like the type of AI model needed (e.g., language, vision, speech), the platform’s ease of use, documentation, and the limitations of the free tier. Many platforms allow exploring different models and functionalities before committing to a specific solution.

free api for AI

Several platforms offer free tiers or completely free APIs for artificial intelligence, suitable for various applications like text generation, natural language processing, image recognition, and more.

Examples of Platforms Offering Free AI APIs:

  • OpenAI: Offers a free tier for their API, allowing access to a selection of their models for a limited number of requests, ideal for initial exploration and small projects.
  • Google Cloud AI: Provides free usage tiers for many of its AI products, including Translation, Speech-to-Text, Natural Language, and Video Intelligence, up to specified monthly limits. New customers may also receive free credits for platforms like Vertex AI.
  • IBM Watson: Includes a free tier for its API, enabling limited calls to services like Watson Assistant, Natural Language Understanding, and Visual Recognition, suitable for prototyping.
  • Wit.ai: Offers free APIs for building natural language experiences, focusing on understanding and interacting with human language.
  • Puter.js: Provides a free and open-source solution to access OpenAI API capabilities without requiring an OpenAI API key or server-side setup, utilizing a “User Pays” model where individual users cover their own usage costs.
  • Pollinations.AI: Offers free, no-signup APIs for text, image, and audio generation without requiring API keys. 
  • Eden AI: An API aggregator that provides access to a wide range of AI models from various providers, including some with free access or free tiers.

Considerations when choosing a free AI API:

  • Usage Limits: Free tiers often come with limitations on the number of requests, data volume, or features available.
  • Model Capabilities: The specific AI models and functionalities accessible through the free tier may vary significantly between providers.
  • Documentation and Support: Assess the quality of documentation and available support resources for ease of integration and troubleshooting.
  • Community and Open Source: Platforms with active communities or open-source projects can offer additional resources and support.

How to create YouTube short video using PowerPoint

To save a PowerPoint presentation as a 9:16 (portrait) MP4 video, first, change the slide size to a portrait orientation under the Design tab > Slide Size>> > Custom Slide Size, selecting Portrait. Then, go to File > Export > Create a Video, select your desired quality and timing settings, click Create Video, and save it as an MP4 file. 

Step 1: Set Your Slide Size to Portrait

  1. Open your PowerPoint presentation. 
  2. Go to the Design tab on the top menu. 
  3. Click on Slide Size. 
  4. Select Custom Slide Size from the dropdown menu. 
  5. In the dialog box that appears, change the Orientation dropdown for both “Slides” and “Notes, Handouts & Outline” to Portrait. 
  6. Click OK. You may be asked to choose between “Maximize” or “Ensure Fit” for existing content; choose the option that best fits your presentation’s needs. 

Step 2: Export to MP4 Video

  1. With your presentation open in portrait mode, click on the File tab. 
  2. Select Export. 
  3. Choose Create a Video. 
  4. Select the desired video quality. 
  5. Decide if you want to use recorded timings and narrations, and set the default time per slide if you’re not using recorded timings. 
  6. Click Create Video. 
  7. Choose a location to save your file, enter a file name, and select MPEG-4 Video as the Save as type. 
  8. Click Save to begin the video conversion process. A progress bar will appear, indicating the status of the conversion. 

1 rs credited in account through imps icici bank

An ICICI Bank account receiving a Re.1 IMPS credit is usually a Penny Drop Verification by a financial institution to confirm account accuracy, ownership, and active status before a larger fund transfer. This verification process uses a tiny deposit to validate the bank account number and IFSC code. You may also receive a confirmation SMS from the remitter with a transaction reference number. 

What is a Penny Drop Verification?

  • It’s a method used by financial institutions to verify bank account details. 
  • A small amount of money, like ₹1, is transferred to a specified account. 
  • This validates the account number, IFSC code, and that the account holder has access to it. 

Why You Received It

  • Account Verification: The institution sending the ₹1 needs to ensure that the bank account details provided are correct and the account is active before sending a larger sum. 
  • Fraud Prevention: This method helps prevent fraud by confirming account ownership and authenticity. 
  • Onboarding: Financial firms use it during the onboarding process for customers or partners to ensure accurate data entry. 

What to Do 

  1. Check for Confirmation: Look for a confirmation SMS from the remitter with a transaction reference number.
  2. Note the Transaction: Make a note of the transaction for your records.
  3. Wait for the Main Transfer: If this was a verification, the main payment is likely to follow.

If you did not request or expect this transaction, you should contact the institution that sent it or ICICI Bank’s customer care for clarification. 

1 rs credited in account through imps

A 1 Rupee credit via IMPS (Immediate Payment Service) is typically a “penny drop” verification by a financial institution to confirm your bank account details are correct before a larger transaction or account opening. This is a legitimate process, not a fraud, used by banks, lenders, or other firms to ensure they’re sending funds to the right account by checking the name and account number. 

What it is:

  • Verification: It’s a test payment to verify your name, bank account number, and mobile number are correct and active. 
  • Security Measure: This prevents money from being sent to a wrong or fraudulent account, protecting both the sender and the recipient. 
  • Penny Drop: This method is often called a “penny drop” because it involves depositing a very small amount, like ₹1, into your account. 

How to identify the sender: 

  1. Check your transaction history: Log in to your internet banking or mobile banking app.
  2. Find the details: Look for the specific IMPS transaction and check the sender’s name or account details in the transaction history.

What to do next: 

  • You don’t need to do anything: Since the amount is small and the purpose is verification, no action is required on your part.
  • Expect a larger transaction: If the penny drop was a precursor to a larger payment, you can expect the main amount to be credited soon after.

how to create user preference in JavaScript on webpage click

<button id="themeToggle">Toggle Theme</button>
<p>Hello! This text will change theme.</p>
<style>
body {
  background: white;
  color: black;
}
body.dark {
  background: black;
  color: white;
}

</style>
<script>
// Get saved preference (if any)
let userPref = localStorage.getItem("theme");
 document.cookie = "theme=light; path=/";
// Apply saved preference
if (userPref === "dark") {
  document.body.classList.add("dark");
  document.cookie = "theme=dark; path=/";
}

// Button click event
document.getElementById("themeToggle").addEventListener("click", () => {
  document.body.classList.toggle("dark");

  // Save user preference
  if (document.body.classList.contains("dark")) {
    localStorage.setItem("theme", "dark");
    document.cookie = "theme=dark; path=/";
  } else {
    localStorage.setItem("theme", "light");
    document.cookie = "theme=light; path=/";
  }
});

</script>

text message in centre in whatsapp

No, you cannot truly center a text message on WhatsApp. The app’s built-in formatting options, which are based on the Markdown language, do not include a “center” or “align” function. All messages will appear left-aligned. 

However, you can create the visual illusion of a centered message by adding spaces and new lines. This method is most effective for short, one or two-word messages. 

How to “center” text manually

  1. Compose your message. Type out the word or phrase you want to center.
  2. Add spaces. Before your text, add spaces to manually push the message toward the middle of the chat bubble.
  3. Use multiple lines (optional). To make the message stand out even more, you can include multiple line breaks by pressing the “Enter” or “Return” key on your keyboard before and after your text. 

Example

For a simple word like “Hello,” you can create the illusion of a centered message by arranging it like this:

`

Hello

`

Alternative formatting options

While centering isn’t possible, WhatsApp does offer other ways to format text to make it stand out: 

  • Bold: Place an asterisk on both sides of the text (*text*).
  • Italic: Place an underscore on both sides of the text (_text_).
  • Strikethrough: Place a tilde on both sides of the text (~text~).
  • Monospace: Place three backticks on both sides of the text (`text`).
  • Block quote: Start a new line with a greater-than symbol and a space (> text). 

main dart js too large

A large main.dart.js file in a Flutter web application can impact loading times and user experience. Several strategies can be employed to reduce its size:

1. Optimization during Build:

  • Build in Release Mode:Always build your Flutter web application in release mode using flutter build web --release. This enables optimizations like tree-shaking and minification, which remove unused code and reduce file sizes.
  • Tree Shaking:Ensure that unused code and packages are effectively removed during the build process. Review your dependencies and remove any that are not actively used.
  • Dart Obfuscation:While primarily for security, obfuscation can also slightly reduce the size of the generated JavaScript by shortening variable and function names.

2. Code and Asset Management:

  • Compress and Optimize Assets:Large images, fonts, and other assets can significantly contribute to the overall size. Compress and optimize these assets before bundling them with your application.
  • Remove Unused Packages:Unused packages add unnecessary code to your application. Regularly audit your pubspec.yaml file and remove any packages that are no longer needed.
  • Use SizedBox for Whitespace:Instead of Container widgets for simple spacing, use SizedBox as it is a lighter widget and can contribute to a smaller bundle size.

3. Server-Side Optimization:

  • Enable Compression:Configure your web server to serve the main.dart.js file with compression (e.g., Gzip or Brotli). This significantly reduces the file size during transmission to the user’s browser.
  • Implement Caching:Set appropriate caching headers for static assets, including main.dart.js, to allow browsers to cache the file and avoid re-downloading it on subsequent visits.
  • Use a CDN:Content Delivery Networks (CDNs) can distribute your static assets globally, reducing latency and improving loading times for users in different geographical locations.

4. Advanced Techniques:

  • Deferred Loading (Code Splitting):For very large applications, consider implementing deferred loading (also known as code splitting) to load parts of your application only when they are needed. This can be achieved using packages like qlevar_router for route-based splitting.
  • Analyze main.js:Inspect the generated main.js file (both minified and unminified versions) to identify any large or repeated functions that might indicate areas for optimization.

why flutter web release load take time

Why Flutter Web Release Loads Slowly

  1. Big JS Bundle
    • Flutter compiles your Dart code into JavaScript (main.dart.js).
    • This file can be 5–10 MB (or more if you use many packages).
    • First-time users must download this entire file.
  2. CanvasKit Rendering
    • By default, Flutter Web uses CanvasKit (a WebAssembly engine for drawing).
    • The CanvasKit WASM + fonts + JS adds a few MB extra.
    • First load = slow, but cached later.
  3. Fonts & Assets
    • Custom fonts and images increase load time.
    • Flutter embeds fonts into the app.
  4. No Code-Splitting
    • Unlike React/Angular, Flutter bundles everything into one big JS file.
    • Even if you only need a small page, the whole app must load.
  5. Hosting/Server Speed
    • If you’re hosting on slow servers (or no CDN), the download is slower.
    • On free hosting (like GitHub Pages), initial load may be 5–10 sec.

How to Improve Load Speed

  1. Use --release build (already does optimizations) flutter build web --release
  2. Enable Tree Shaking for Icons
    If you use material icons: flutter build web --release --pwa-strategy=offline-first Or add to pubspec.yaml: flutter: uses-material-design: true This removes unused icons.
  3. Use WebRenderer = html (lighter but less accurate graphics) flutter build web --release --web-renderer html
    • html: smaller, faster load, but less accurate animations.
    • canvaskit: better quality, heavier.
  4. Compress Assets & Fonts
    • Use only required fonts.
    • Convert PNG → WebP.
    • Remove unused assets.
  5. Enable GZIP/Brotli Compression on Server
    • If hosting on Nginx/Apache/Cloudflare, enable compression.
    • Reduces JS size by 70%+.
  6. Host on a CDN (Firebase Hosting, Vercel, Netlify)
    • Faster delivery worldwide.
    • Built-in caching.
  7. Use Service Worker (PWA)
    • Offline-first caching makes subsequent loads instant.

First-time load will always be slower (user must download ~2–6 MB).
But with compression + html renderer + caching, you can make it 2–3 sec even on average internet.