6 ms·
Show HN: My not-for-profit search engine with no ads, no AI, & all DDG bangs
I've been working on a little open source [1] search engine, nilch. I noticed that nearly all well known search engines, including the alternative ones, tend to be run by companies of various sizes with the goal to make money, so they either fill your results with ads or charge you money, and I dislike this because search is the backbone of the internet and should not be commercial, so it runs in a not-for-profit style and aims to survive on donations. Additionally I'm personally really sick of AI in my search results so I got rid of that, and I wanted DuckDuckGo bangs so it supports all of them. Like many alternative search engines, it is fully private.
Sadly, it currently does not have its own index but rather uses the Brave search API. Once I'm in a financial position that it's possible, I would absolutely love to build a completely new index from the ground up which is open source, as well as an open source ranking and search algorithm, to back it.
I posted on Reddit and got an amazing amount of feedback which I implemented a number of feature requests, so I would really like your ideas, critiques, and bug reports as well. Thank you and sorry for the long post!
[1] https://github.com/UnmappedStack/nilch https://github.com/UnmappedStack/nilch
- irishmanlondon 9mo ago[dead]
- Imustaskforhelp 9mo agoAwesome project, I have a quick suggestion but can you please make adding custom ddg bangs into your project itself rather quickly? There was this project on hackernews which was recently shown where they (scraped?) the internet and then created an really efficient embedding of the search engine. I wish if you could look more into it or contact the creator of that project perhaps. https://news.ycombinator.com/item?id=44878151 https://news.ycombinator.com/item?id=44878151 (Show HN: Building a web search engine from scratch with 3B neural embeddings) Looks like https://search.wilsonl.in/ https://search.wilsonl.in/ they have since then closed the live demo but I had used it when it was live and in my opinion, it was a mix of that if things needed some improvements but that it was also usable for some things which were in the dataset (Of course you wouldn't get Organic chemistry questions/answers for high schoolers as an example in there but you will find most things (usually wikipedia) and then some good sources, usually the ones popular but it was really cool overall so perhaps you can look more into it and helps Now I really love your project a lot and I think there should be not for profit search engines, but I am a little worried about using it since if I use it as my search engine, then it might cost you a lot of money (using the brave api) . I just searched and it seems that ecosia is a non profit as well so you can definitely partner up with them, I remember a post about qwant and ecosia partnering up to create an independent search engine. I think that there should be competition within the search engine space especially via non profits in a way similar to wikipedia one might say ideally. Wishing you the best for this project's future!
- prmoustache 9mo agoEcosia is still making money (that it uses to plant trees). That means it is selling something and we can reasonnably think that is your data/privacy.
- UnmappedStack 9mo agoAs far as I'm aware, Ecosia does sell ads.
- UnmappedStack 9mo agoThank you! I would definitely consider custom ddg bangs, yes. Is there any particular reason you want that rather than just all ddg's bangs like it is currently? I'll have a look into that project, thank you. Cost is a slight issue so far, yes. There have been about 4,000 searches in the past couple days but I've slightly improved cost efficiency with caching, and I've received two small donations which do help a bit, so the hope is that donations will be able to sustain it. Partnering with Ecosia is a really interesting idea, however I think that there may be a conflict of interest since they do aim to make money with ads, just to go towards environmental efforts rather than a corporation. They would be disadvantaged if nilch was at an advantage over their users. I do love the wikipedia model and I hope that nilch can run similarly. Thank you again!
- Imustaskforhelp 9mo ago[dead]
- Leftium 9mo ago(replying to dead reply downthread) Kagi (custom) bangs[1] already supports `!cobalt <youtube video>` I just added !cobalt to my custom bangs as `https://cobalt.meowing.de#%s https://cobalt.meowing.de#%s`, and it works. Kagi also accepts new public bangs: https://github.com/kagisearch/bangs#contribution-guidelines https://github.com/kagisearch/bangs#contribution-guidelines Kagi bangs are free for everyone (a subscription is required for custom bangs and regular search). - Example of how to use Kagi bangs without subscription: https://kagi.com/search?q=!chatgpt+TEST https://kagi.com/search?q=!chatgpt+TEST - https://zbang.leftium.com/ https://zbang.leftium.com/ uses Kagi bangs under the hood. [1]: https://help.kagi.com/kagi/features/bangs.html#custom-bangs https://help.kagi.com/kagi/features/bangs.html#custom-bangs
- everfree 9mo agoI believe an open source ranking algorithm is antithetical to good search, sadly. It hands spammers a recipe for how to push past legitimate sites to dominate the search results.
- UnmappedStack 9mo agoThis is sadly probably quite true. I'm sure there are workarounds, like slightly changing it every month or two, although that would require quite heavy maintenance. Perhaps the core algorithm stays the same but some constants that decide on the weights of different things are randomised? Not too sure.
- Tepix 9mo agoThe topic of ranking mechanisms sits at the core of many of our issues with social networks and centrally operated instances. I think it deserves far more attention. And these algorithms should be open source and we should be able to pick our own and mash them. Related: Build Your Own Timeline Algorithm: A Blueprint https://blog.mozilla.ai/build-your-own-timeline-algorithm-a-blueprint-2/ https://blog.mozilla.ai/build-your-own-timeline-algorithm-a-...
- renegat0x0 9mo agoHow is it different from searxng then?
- UnmappedStack 9mo agoI see nilch as slightly more about being simplistic and not having many features that are unnecessary. I do share many of the values and benefits with searxng (and really love their work!), however this is also about my own specific desire for something that is clean and has very little that is unnecessary.
- KomoD 9mo agoYou don't need to touch any of the "unnecessary" features in SearXNG, it's as simple as any search engine, just write your query into the input and look at the results
- DeepSeaTortoise 9mo agoI'm in no way an expert, but IMO there is a major misconception in the free-ish software community that profit should be at most secondary to offering a fair and as good as sustainably possible product. I strongly disagree with this. IMO developers of free-ish as in freedom products OWE it, not only to themselves, but their community to be as profitable as possible within the rules they think that should be followed (and those that are mandatory ofc). Profit is not only by far the strongest motivating factor for others to adopt your set of rules, but also a guarantee to your community that the product will still be around in a few years and not turn into a rug pull because its developer is burned out after working 80 hour weeks for months or even years for less than minimum wage. It is also something you can trade for your values, e.g. offering great working conditions to your employees or funding projects or lobbying for laws you think will benefit society.
- grey-area 9mo agoProfit is fine. Profit from advertising is highly corrosive and corrupts everyone it touches (social networks, your tube, search etc etc).
- UnmappedStack 9mo agoHonestly I agree. This is part of what I love about the idea of Kagi. I do believe a not-for-profit alternative is needed, however if there's any for-profit model a search engine should have, it should be paid for by the user rather than the advertiser imo.
- BrenBarn 9mo agoIt depends what you mean by "profit". If you mean "the developers/maintainers can pay the bills of a modest lifestyle", then yes, I think that's important. But often "profit" is used to refer to the idea of unlimited upside, that there are stocks, that the project will be sold, that some kind of sizable windfall is expected, etc. And that I think is to be avoided.
- UnmappedStack 9mo agoThis is a really interesting view, but I'm not sure I agree. So many amazing projects are truly free without the goal of profit yet their maintainers still do amazing work. I feel like part of the reason this works is because often the load is split between several maintainers (of which I hope to onboard soon, and have one or two offers already from people to contribute) and also the fact it's genuinely something enjoyable to work on (of course, to the extent it's not too stressful and overworked).
- angel- 9mo agoWill you include suggested autocomplete searches?
- UnmappedStack 9mo agoI do intend to support this and have actually already been asked to!
- Tiberium 9mo agoRight now it seems like the project is just a thin wrapper over Brave Search. Building a complete search engine is way harder than that. You could look into using https://github.com/MarginaliaSearch/MarginaliaSearch https://github.com/MarginaliaSearch/MarginaliaSearch if you want to run a real search index - https://marginalia-search.com/ https://marginalia-search.com/ is powered by it.
- UnmappedStack 9mo agoYup, it is pretty much just a better frontend for existing search. I want to build my own index and ranking algorithm in the future, but sadly it's quite resource intensive so it will depend on financial viability a bit in terms of timeframe.
- RadiozRadioz 9mo agoSo it's not a search engine, it's a frontend for a search engine.
- UnmappedStack 9mo agoSure, would've made for a chunky post title tho :P
- dangus 9mo agoYou can just turn off the AI feature in Brave search so it’s sort of extra pointless. It’s possibly worth pointing out that the about page doesn’t offer any indicator that this is an actual nonprofit entity from a legal standpoint, so at this point I have to assume it’s just a sole proprietorship that is pinky promising to become a non-profit. In that sense I’m quite happy “donating” to Kagi to provide a stable and supported product from a company with employees.
- UnmappedStack 9mo agoThat's fair enough. For the record I do intend to apply for a non-profit official entity. I would say it still has a role as opposed to Brave considering the lack of advertising though.
- axiolite 9mo agoDoesn't seem to like double-quoted search strings: SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data Single-quotes don't seem to work (doesn't change search results... doesn't exclude irrelevant results that don't contain the exact string).
- UnmappedStack 9mo agoOh! I will make sure to fix that, thank you for the bug report!
- consp 9mo agoEscaping and encapsulating input data strikes again.
- ILoveHorses 9mo agoI get this error anytime I search anything. Error loading search results. Please try again. SyntaxError: JSON.parse: unexpected keyword at line 1 column 1 of the JSON data
- BaudouinVH 9mo agoyou are not alone
- UnmappedStack 9mo agoI see, that is odd and I haven't run into that yet, thank you! I'll have a look into it and try to reproduce the issue, which browser+OS are you on?
- thesdev 9mo agoSearching for "DOMContentLoaded" gives me an error "'noresults' is not valid JSON" and the page gets stuck in an infinite refresh loop. Edit: It's actually unrelated to the search term, I get this for anything I search for. I'm using Vivaldi Android with adblocker on, maybe that's the problem.
- UnmappedStack 9mo agoWoah it was because I had run out of API credits, fixed! I'll improve the error screen for that. Sorry, did not expect this traffic, it's had several thousand searches today!
- ckardaris 9mo agoInteresting project. Thanks for sharing. I am also a fan of DDG bangs and I see two missing features: 1. DDG supports bangs at any place in the query (even in the middle of it). I can search "topic !wiki" and it will work as expected. 2. DDG also supports following the first result in a query if a bare '!' is present in the query. Searching " hacker news !" will land me in the actual website without having to click anything in the results page. Maybe you can consider adding these.
- UnmappedStack 9mo agoI actually did not know if these, but I definitely will implement those!
- jbaber 9mo agoI thought ddg supported !s at arbitrary locations, but came across enough exceptions that I now invariably put them at the beginning or end.
- supermatt 9mo agoYou NEED to validate/escape untrusted input. Searching “ causes an error https://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet.html https://cheatsheetseries.owasp.org/cheatsheets/Input_Validat...
- UnmappedStack 9mo agoYeah I really do need to, I'm not sure why I didn't from the start...
- soldthat 9mo agoThe fact that “no ads and no AI” reads like a luxury feature set in 2025 says a lot about the state of search. Nice reset to sane defaults.
- UnmappedStack 9mo agoYeahhh I like to think of it as search like it's 2015...
- IshKebab 9mo agoSearch had ads in 2015. They were just a bit less obtrusive.
- nubinetwork 9mo agoTypescript failed to fetch?
- ngc6677 9mo agoCan also checkout https://github.com/internet4000/find https://github.com/internet4000/find for a client side "search router" supporting custom bangs.
- immibis 9mo ago> nilch uses the Brave search API internally for results. I wish wrappers would stop being called search engines. Google is a search engine, and so is Bing, and Yandex, and Marginalia Search. DDG, Brave, Nilch, and Kagi are search interfaces, or search coats of paint.
- throwatdem12311 9mo agoYou can just turn off ads and AI on the duck.
- GaryBluto 9mo agoWhy would I use this over Brave search if I were already using it? Especially when all it seems to add is a childish rant against LLMs, "G**gle" and "D*ckD*ckGo".
- mesosan 9mo agoI'd love to fork this and archive the results from brave's api Lazily as people search and then use that to snowball scrape. If you got users then that's a really good strat for snowballing the relevant internet.
- amortka 9mo agoI’d be more convinced if the project explicitly scoped itself as “best possible frontend + governance model” first, and treated a custom index as an aspirational, separate phase.
- AmiteK 9mo agoI think this distinction matters less to users than to builders. From a user perspective, what’s novel here is policy and intent (no ads, no AI, privacy-first), not whether the index is first-party yet. Many projects start as thin layers over existing infrastructure and only later take on the hard parts as resources allow. Being explicit about that roadmap feels like the right tradeoff early on.
- Terretta 9mo ago"No AI, no ads, just search." Clicked to give it a try, only to be greeted with this LLM authorship trope. If "sick of AI", rehumanize the slogan? And carry on! "We were there" when DDG and Kagi got started; hope you enjoy carving a niche as well. // Yes, LLMs learned it from SEO and marketing slop predating LLMs, but the "No A, No B, Just C" association is too dominant for your brand.