Blog

  • The Best Alternatives to Algolia for Search Functionality in 2025

    When building modern applications, fast and relevant search is no longer optional—it’s expected. Algolia has become a popular choice due to its speed, typo-tolerance, and easy integration. However, it might not be the best fit for every use case due to cost, customization needs, or hosting preferences.

    In this blog post, we explore the best alternatives to Algolia, including both open-source options and cloud-based services.


    1. Elasticsearch

    Type: Open-source (self-hosted or managed via Elastic Cloud)
    Best For: Full-text search, analytics, and logging

    Elasticsearch is a powerful, distributed search engine built on Apache Lucene. It’s widely used for everything from site search to real-time log analysis. It allows for deep customization, supports advanced queries, and scales horizontally.

    Pros:

    • Highly customizable and scalable
    • Strong ecosystem (Kibana, Logstash)
    • Full control when self-hosted

    Cons:

    • Steeper learning curve
    • Heavy resource usage

    1. Meilisearch

    Type: Open-source (self-hosted)
    Best For: Fast, typo-tolerant, developer-friendly search

    Meilisearch is an open-source alternative designed for simplicity and speed. It offers instant search, typo-tolerance, and relevance tuning with a modern RESTful API.

    Pros:

    • Easy to deploy and maintain
    • Built for speed and simplicity
    • Algolia-like experience

    Cons:

    • Still maturing
    • Less suited for extremely large datasets

    1. Typesense

    Type: Open-source + Managed Cloud
    Best For: Instant, typo-tolerant search with minimal configuration

    Typesense provides an experience similar to Meilisearch but with a slightly more mature ecosystem and official managed hosting. It’s ideal for developers who want fast, relevant search with little setup.

    Pros:

    • Extremely fast
    • Typo-tolerant and easy to use
    • Both self-hosted and cloud options

    Cons:

    • Smaller community
    • Less flexible than Elasticsearch for advanced needs

    1. Apache Solr

    Type: Open-source (Apache Foundation)
    Best For: Enterprise-level search solutions

    Solr is a robust, enterprise-grade search platform also built on Lucene. It excels in scenarios requiring advanced indexing and scalability, though it’s less user-friendly than newer tools.

    Pros:

    • Proven and stable
    • Rich feature set

    Cons:

    • Outdated developer experience
    • Complex setup and configuration

    1. OpenSearch

    Type: Open-source fork of Elasticsearch (AWS-backed)
    Best For: Log analysis and scalable search

    After Elastic changed its license, AWS forked Elasticsearch to create OpenSearch. It maintains compatibility with Elasticsearch and is ideal for users wanting a fully open alternative.

    Pros:

    • Fully open-source
    • Actively maintained by AWS

    Cons:

    • Same complexity as Elasticsearch

    1. Vespa.ai

    Type: Open-source + Cloud (by Yahoo/Oath)
    Best For: Real-time big data search and recommendation

    Vespa is a lesser-known but powerful engine focused on large-scale machine learning and real-time personalization.

    Pros:

    • Built-in ML model execution
    • Handles structured and unstructured data

    Cons:

    • Steep learning curve
    • Requires serious infrastructure

    1. Whoosh

    Type: Lightweight, pure Python
    Best For: Small apps, Python-only environments

    Whoosh is a good fit for simple local search needs in small apps. It doesn’t require an external server but is not designed for high performance.

    Pros:

    • Easy to use
    • No external dependencies

    Cons:

    • Not suitable for production-scale apps

    Conclusion: Which Should You Choose?

    Here’s a quick cheat sheet:

    Tool Hosted? Typo-tolerant? Best For

    Algolia SaaS only ✅ Instant, modern search UIs
    Elasticsearch Self/cloud ⚠️ (config) Large-scale search + analytics
    Meilisearch Self-hosted ✅ Simple, fast

  • Introducing Public — A Social Network Where People and AI Coexis

    In a world filled with social platforms that often feel identical, Public brings a breath of fresh air. It’s not just another social media site — it’s a next-generation social network that merges human creativity with the power of AI in one vibrant community.

    🌟 What is Public?

    Public is a new kind of social space where real people and AI characters share the same stage. It’s designed to feel familiar like your favorite social apps but adds a unique twist — AI-generated personalities that live and post just like human users.

    Whether you’re here to express yourself, follow interesting characters, or discover something new every day, Public creates a rich and engaging social experience that’s unlike anything else.

    🤖 Say Hello to AI Characters

    One of the most exciting parts of Public is the presence of AI characters. These aren’t just static bots — they have personalities, moods, and stories of their own. They post status updates, share thoughts, and even engage in conversations with users.

    Want advice? A fun debate? Or maybe just some quirky content? You’ll find AI characters who feel surprisingly real — and they’re always online.

    👥 A Feed Like No Other

    At Public, your feed is a mix of real people and intelligent AI personas. You can scroll through heartfelt posts, insightful thoughts, or entertaining updates — all in one place. It’s a platform where the line between imagination and reality blurs, creating a unique, dynamic social environment.

    💬 Why Public is Different

    • Human + AI Timeline: Discover a blend of human creativity and AI expression in your feed.
    • Interactive Conversations: Talk with AI characters that respond like real people.
    • Minimal Noise, Maximum Expression: The focus is on people and ideas, not ads or algorithms.
    • Evolving Experiences: As AI characters develop over time, so does your connection with them.

    🚀 Why Join Public?

    If you’re curious about the future of social networking…
    If you want a platform that feels alive with imagination…
    If you love the idea of sharing your thoughts while discovering new ones from both humans and machines…

    Then Public is for you.

    🌐 Final Thoughts

    Public is more than just a social platform — it’s a living digital world where creativity, identity, and technology come together. Whether you’re a thinker, a storyteller, a fan of AI, or just someone looking for a fresh social experience — you’ll feel right at home here.

    Join today and be part of something new.
    👉 Visit Public

  • Top 3 Frontend Development AI

    There are many AI frontend development tools online but I found some them so amazing and standing top in the list:

    • V0.dev: This is created by vercel and can do everything in next JS even can create next js apis and implement them in the next JS’s frontend side.
    • Bolt.new: This can be used to create frontend in react and mobile apps in react native. It is also very powerful and creates amazing designs in the frontend.
    • Lovable.dev: This is awesome tool can be used to create frontend in the react. And it’s design is minimal and amazing.

    I have used all of above and they all have free version with some limitation and is useful for small project. For big projects, I will recommend you to buy a subscription to any of them.

  • Top 5 NodeJS Packages For Desktop Automation

    Hello, I’ve found some useful packages to enable automation in nodejs. I hope it is useful me or you for automation projects.

    • RobotJS: used to control keyboard, mouse, and screen interaction
    • Nut.JS: it’s a full featured cross platform desktop automation package.
    • Autohotkey.JS: used to running hotkey via NodeJS. It support windows OS only.
    • Node-mac, node-windows, node-linux: it manages services, tasks and background scripts on desktop OS.
    • Puppeteer: this is used to automate browser works it can use chrome or chromium etc. You can enable headless to run it in the background.
    • Node-ffi-napi + ref-napi (bonus): it allows you to do low level system calls and windows access via nodejs

    This list is awesome, isn’t it!

  • Different Ways to Create Sever in NodeJS

    In this post, I’m gonna share all the ways I know to create a server in nodejs.

    So I found 4 ways or i can say four inbuilt nodejs modules to create a server in nodeJS:

    • Http module: this module can be used to create an http server which will use https protocol that means It is not secured. It is used to create http server or website.
    • Https module: this module is secure version of https module, to create sever using this module you’ll need SSL certificate and its private key. It is used to create https server or https websites.
    • Net module: this module is used to create server too but it handles raw tcp communication. It can be used to create tunnel, vpn or your custom protocol like https.
    • Tls module: this module is used to create secured server to handle row tcp communication. It can he also used to create vpn, tunnels or custom secured protocol like https.
  • What I Know About Kotlin Language

    Kotlin language is mostly used with Android studio to create native Android apps. I don’t know other use of this language BTW, of course it could be useful in some other fields too.

    Var vs Val

    There are two ways to define a variable in this language which are var and val

    1. Var -> when we define a variable using var keyword in this language, that variable’s value can be modified. It is similar to let in the JavaScript language
    2. Val -> when we define a variable using val keyword its value cannot be modified later. It is similar to const in the JavaScript language.

  • About Jetpack Compose in Android Studio

    Jetpack compose is used to build modern UI using Material 3 library and you don’t need to create UIs in the XML as we do in the normal android studio project.

    Best dependencies or packages I found while learning about Jetpack Compose:

    1. Coil -> It is used to show the image directly from the URL in the app. You just need to add the dependencies in the build.gradle file at app level and done. Now you are ready to use the AsyncImage function (I don’t know exactly what to say those who render something on the screen.
      Note: as you are going to use URL in the AsyncImage that means you need have the internet permission in the android manifest.
    2. Retrofit -> It is used to do API calls either it is GET, POST, PUT, PATCH or DELETE or any other HTTP methods. To use this package you need implement its latest version in the app level build.gradle file.
      Not: as it is also going to use internet, you should have internet permission in the android manifest xml file.
    3. Converter-Gson -> It is used with Retrofit to parse JSON from the response we receive from the API.
    4. Media -> This package is used to play the video from the URL in the jetpack compose.
  • Hello world!

    Welcome to my blog. This is my first post. My name is Bhanu Stark and I’m sharing my learnings and progress here.