I made an open source AI app search engine built with Next.js and Supabase

Hey SitePoint community! :wave: I’m excited to share a project I’ve been working on that might interest web developers and AI enthusiasts alike. It’s called AskAITools, an open-source search engine for AI applications.

The Problem

As developers, we’re always on the lookout for tools to streamline our workflow. With the AI boom, there’s been an explosion of AI-powered tools. But finding the right one? That’s become a challenge in itself.

The Solution: AskAITools

After exploring nearly 200 AI directory sites (yes, really!), I decided to build my own search engine. Here’s what makes AskAITools unique:

  1. Massive Index: Over 10,000 AI applications indexed
  2. Smart Search: Combines keyword and semantic search
  3. Data-Driven: Shows metrics like monthly visits and interaction rates
  4. Clean UI: No ads, just pure functionality

Tech Stack

For the web devs curious about the under-the-hood stuff:

  • Frontend: Next.js
  • Styling: Tailwind CSS
  • Backend: Supabase (PostgreSQL)
  • Search:
    • Keyword: PostgreSQL Full-Text Search
    • Semantic: pgvector extension
  • Embeddings: OpenAI’s text-embedding-3 model

The Secret Sauce: Hybrid Search Architecture

AskAITools uses a combination of:

  1. Traditional keyword search for precise matching
  2. Vector-based semantic search for context understanding
  3. Custom fusion algorithms to balance relevance and popularity

Open Source Goodness

The core functionality is open-source! You can find it here: AskAITools Community Edition

Feel free to use it as a base for:

  • Building your own specialized search engines
  • Creating internal document search systems
  • Experimenting with search algorithms

Try It Out

You can check out the live version at https://askaitools.ai

Looking for Feedback

As this is an MVP, there’s still a lot to improve. I’d love to hear your thoughts:

  • What features would you like to see?
  • Any bugs or issues you’ve noticed?
  • How could it be more useful for web developers?

Your input is invaluable in shaping the future of this tool. Let’s make discovering AI tools easier for everyone in our community!

Happy coding, and looking forward to your feedback! :rocket:

1 Like

Well, i’m not sure i’m the target audience, given that i’ve never once had the thought “I should find an AI tool” in my time as a web developer, but i’ve no doubt that smoeone’s gotta write the AI to find the AI’s using AI logic, so we’ve reached that level of the rabbit hole already…

I cant say i’m entirely thrilled with the results sticking the word “test” into your search engine turned up; I will say, there were a couple of decent suggestions in the list here and there, but the ones that rose to the top could easily be identified as "Anything with the letters “Test” in the title. Now anything with the letters “Test” anywhere in the description. Now something that looks like actual thought went in. I know that you dont necessarily control the input content, but i ended up with (among actual relevant results) multiple generators of testimonials, at least one of which i’m fairly sure is designed to fake human testimonials for your website… a student test database so you can cheat on your exams… and a marketing tool that proports to evaluate marketing campaigns’ effectiveness on humans by…not using humans. So, the fake, the notAnAI, and the confusing.

Displaying sites’ page-viewing time is… a choice… while i can understand its value for deciding on what to click on, it… is also a pointed reminder “you are being tracked”, and i’m not sure how many people will be comfortable with that information being shoved under their nose before they click a link…

Which, by the by, your site isnt warning people about. Your Privacy Policy states “We comply with relevant data protection laws and regulations”, but i’m pretty sure GDPR would like a word with you about your further Privacy declaration that you collect users’ “Email Address… First and Last Name… Contact Information” and that you use “Cookies or Browser Cookies” to do so… without required notification and acceptance by users of such usage, which would be a violation of those compliances…)

Your site also appears to go to the interesting length of disabling the developer console and context menu. For a site supposedly for web developers that… screams shady. I’d suggest not doing that. Incidentally, you cant stop the developer console from being open before someone navigates to your page, and them still having full developer console access to your site. So all you’re doing at that point is annoying someone.

Your open-source AI app and search engine built with Next.js and Supabase sounds impressive! It’s exciting to see how you’ve leveraged modern technologies to enhance search capabilities. I’m curious about the challenges you faced during development and how you addressed them. Looking forward to exploring the app and its features

Thank you for your patient and detailed reply. After reading it, I do feel a bit embarrassed, but I believe some explanation is necessary.

Search engines are inherently complex, especially when users can input anything into the search box. Achieving results that meet user expectations for every query is challenging, even in a vertical field like AI tool search. Regarding content moderation and filtering, my search engine has indexed over 10,000 AI tools. As an independent developer, individually reviewing each tool for ethical concerns is, unfortunately, not feasible at this stage.

About the page view duration, I should clarify that this isn’t data I track personally. It’s sourced from a third-party platform, Similarweb, and is used to help evaluate the quality of each search result. I acknowledge that I should have made this clearer on the site.

Concerning the collection of user privacy information, I understand the importance of this and will implement a Cookie consent popup as soon as possible. As an indie developer, navigating the legal aspects takes some time, but I’m committed to addressing this promptly.

Lastly, regarding the console disabling issue, my initial intention was to reduce the possibility of hacker attacks and malicious scraping. While I understand this doesn’t completely prevent such activities, I hoped it might increase the cost of potential attacks. I’m a front-end novice, having started learning HTML just about six months ago. I built this website with the assistance of GPT-4. I recognize that there may be many downright foolish and amateurish design choices at present. It’s embarrassing to admit, but my inexperience has led to some truly face-palm-worthy decisions. However, I’m committed to learning from them and dedicated to improving and refining these aspects over the coming months.

Once again, thank you for your insightful comments and feedback. They’re invaluable in helping me improve AskAITools and make it more user-friendly and compliant with best practices.

“Hacker Attacks”
So i can kind of get the idea of preventing hacker attacks, but…
1, what are they hacking? Their own search results? That… uhm… that doesnt affect anything.
2, why? What value does hacking your search engine represent to a hacker?
3, how does preventing right clicking or the developer console dissuade that? (See below)

“Malicious scraping”
… you’re a search engine. Your results will be unique to each viewer, and your data is itself scraped from other directories. So lets put “pot calling the kettle black” aside for a moment…
What makes you think that anyone who is “maliciously scraping”… is doing it manually? Nothing your site does can prevent an automated system from scraping your site, and if someone is a “Malicious scraper”… they’re not putting the effort in to manually scrape your site, they’ll knock together 5 lines of code (probably written by the AI’s you’re linking to) and scrape your site automatedly by looking at the HTML and Javascript you are forced to send to the browser by virtue of actually putting something on the internet.