(评论)
(comments)

原始链接: https://news.ycombinator.com/item?id=38809145

要是! 从纯文本 Markdown 文件文件夹创建 Docker 镜像将是一项绝妙的壮举。 这让我想起了很多 Tinder for Websites,我昨晚偶然发现了它:https://tinderforwebpages.com/。 不错。 由于哈希冲突和 Git 的底层工作方式,我最初对静态文件的 Tinder 实现最终提供了大量重复页面。 最终决定随机添加一个唯一的后缀,以减少基于碰撞的 ID 的频率。 然而,在某些情况下,5 人或更少的人根据哈希冲突分配了相同的 ID。 不过,它基本上只是将字符串连接在一起,所以可能没问题。 我怀疑这有一些类似的问题,尽管希望更少,因为它们只是为文件名添加前缀,而不是完全随机分配数字标识符。 https://tinderforwebpages.com/ 的最新实例 (https://zhupeiluozhen.cloud/) 在峰值负载期间具有一些非常奇怪的性能特征。 看起来在空闲负载方面相当不错,特别是因为它们设法缓存并使所有内容保持较小。

相关文章

原文
Hacker News new | past | comments | ask | show | jobs | submit login
Blot turns a folder into a website (blot.im)
528 points by angrymouse 1 day ago | hide | past | favorite | 134 comments










I announced Blot on Hacker News almost 10 years ago. Thank you all for helping to get it started. It was a nice surprise to see it posted again here today.

The goal of Blot is to bring the benefits of the static site generator to people who haven't heard of static site generators



Please increase your pricing transparency. I could not easily figure out the price of your hosted service without having to use a search engine.

Blot[1] (open source software) turns a folder into a website, and blot.im offers a hosted Blot service for $5/mo.

1. https://github.com/davidmerfield/blot



Fair point – I have just added:

https://blot.im/pricing



Some people are pointing out that they found it easy to read your pricing before you added this site. I’d like to offer a different perspective. So many tech products and startups lack this sort of easy to find clarity.

Many times in my professional life we’ve dismissed products we might have bought if they had a pricing page as clear as yours. Not so much because they necessarily did anything wrong, but because we rarely have the time to “research” tech products that are “nice” but not “necessary”. So where some companies might have sold us an eternal product license for $5 a month, they didn’t because they didn’t have this sort of pricing page, where they very clearly explain the exact price of their product in as few words as possible. Some may find that ridiculous, but I’m fairly certain that if we do this, then others does as well as we’re very rarely unique.

One of the consequences of having done this professionally at many organisations for two decades is that I also do it as a private person. Maybe that’s even more lazy, but it is what it is.

So I think you did well to add this!



I want to second this view--simple transparency and being upfront about pricing sets the tone for an entire ongoing relationship, and is even critical to beginning one. I have a 99 percent rejection rate of every website that doesn't put pricing up front, along with a customer service phone number. If I have to click more than once for pricing, and if that phone isn't on the landing page, the entire product goes straight into the ether. Ignoring these basics is a fundamental lack of respect for my time and attention as a customer, and I won't have it. I know this view is pervasive, yet dark patterns persist.


[flagged]



English isn’t my first language.


Completely ignore the troll, your reply was perfectly structured and I really enjoyed your take on decision making when buying software.


Devjab's comment was both relevant and informative. Yours was neither.


To be fair, it's very clearly fronted on the Sign Up form, which has a prominent button in the top right corner. A dedicated Pricing page/section would be nice simply because people often look for it, but it's not like they're trying to be sneaky or use dark patterns.


Yeah, this is just a usability issue for sure. Unfortunately for me, I didn't want to click "sign up" until after I could locate the pricing, leading me into a catch-22 situation.


I second this. Why would I want to click a sign up link without knowing the price in advance? No price no sale. Every service has a pricing page.

Anyway, it seems that they fixed it because there is a Pricing link in the menu now. Well done.



Ye "sign up" implies that you have accepted the pricing.

A common dark pattern is that you need to enter PI to get to the pricing so that they can call spam you forever. (I am not accusing the linked site of doing it, I haven't checked.)



Did you think it would sign you up without confirmation or something? It seems strange to me to not want to hit sign up to see how much it would cost.


Personally it never even occurred to me that the "sign up" button would show pricing - in fact it wasn't even apparent that this was a paid product. Usually services have a separate "pricing" link somewhere at the top that explain things.

I pretty much never click on "sign up" buttons unless i have already been convinced the service is something i want to sign up for.



I think of a "sign up" button as something I click after I've chosen to use that product. The button click signals my intent to do so. Having to click it to see pricing is something that would just not happen for me, because I'd never intend to sign up without seeing pricing.


I agree sign-up is not how I would look for pricing. Sign-up is something I click when I'm ready to commit to using but until then I'm looking for information and I expect something like a Pricing page.

If I can't find the pricing I'm never going to click "sign up"



Indeed. In fact, I will refuse to sign up out of spite.


HubSpot popularized collecting emails before providing pricing. A lesson from corporate sales in other industries. (Urgh)


But at least they'd offer something, even if it was just tepid whitepaper about CRMs or email marketing.


The interesting question is how did you arrive at this site layout where the pricing is hidden in the sign up page when every single SaaS site on the internet has a pricing link in the header and in the footer. Genuinely curious.


I second this, in fact from the site i didn't even knew this was something you'd pay for or that it was open source.


This seems like a very nice product.

I wanted to look into the developer guide to customizing a template. It's to add RTL support for Arabic content.

This give me error tho https://blot.im/developers



As a HN reader it was a little hard to figure out if this was a static site generator or a dynamic script like those old school php files that turned a folder of images into a image gallery website.

But for your target audience, it might be confusing to compare your service to those.



Been a happy customer since 2018! Thank you so much for making it.


Are table of contents on posts possible?


Just what I needed!


Related. Others?

Blot is a blogging platform with no interface. It turns a folder into a website - https://news.ycombinator.com/item?id=32041158 - July 2022 (9 comments)

Blot – a blogging platform with no interface - https://news.ycombinator.com/item?id=17314858 - June 2018 (120 comments)

Blot – blogging from a Dropbox folder - https://news.ycombinator.com/item?id=10078031 - Aug 2015 (17 comments)

Show HN: Blot, a static blog powered by Dropbox - https://news.ycombinator.com/item?id=8183498 - Aug 2014 (36 comments)



Express application that converts files to HTML with pandoc and serves the results, with a dashboard.

The TODO file in the repo[1] is fascinating.

1: https://github.com/davidmerfield/Blot/blob/39d9583395c190534...



Fascinating as in should have been added to .gitignore?


It's intentionally public. The news page is generated from todo.txt and my git commit messages:

https://blot.im/news



Interesting, he has links to his inbox in the file…!


Unusual, but not a security risk, I hope?

Thankfully, only the first name of the recipients is listed.



> The TODO file in the repo[1] is fascinating.

I had no idea!



I recently migrated my own static Hugo blog onto Blot, and I just about couldn’t be happier with it.

I’m not versed in web development, but Blot’s developer (David) seems to have a great goal in mind & similar enough priorities to what I wanted that it was a great fit. I finally got to set up the photography site I’d been planning, too.

It’s http://ristrettoshots.com/ if anyone was curious what one take on a Blot photo site would look like.



This makes me think of the early/mid-2000s & https://blosxom.sourceforge.net. Blosxom had this delightful concept of file extensions as "flavours." For example, you could have a ".rss" flavour that would present that hierarchy of your site as an RSS feed if you added ".rss" to the URL. Brilliant!


This used to be fairly common. Reddit is another site. A company I worked at.aroind the same time also had .xml, .rss, .atom. .xml would serve up the raw xml our middleware generated, which was normally "rendered" via xsl (what can I say to redeem myself for that?) server side. It was great for both debugging (you could browse the site in "xml mode") and to provide an API.

I still like the url approach - being able to browse until you have the view you need, and then just copy the URL and change format in order to find the right API call can be very nice. The challenge, of course, is that you need to be very cautious about which urls you guarantee will be stable, or you'll be locked into a site structure you might regret.



> xsl (what can I say to redeem myself for that?)

Why? XSL is awesome even if a little arcane now.

Time makes fools of us all.



Try to format dates in a generic way with XSL.

It's doable. It's also a massive pain.

The big problem was that the easy way out is that your XML ends up being changed to be "XSL-friendly", which means a ton of concessions that effectively encodes knowledge of the expected presentation no matter how much you want to keep it largely semantic.

Small presentation changes far too often result in changes to the XML to accommodate weaknesses in XSL.

I still like the idea. But not the use of XSL to achieve it. Unfortunately, we don't have any great alternatives that aren't horrible in all kinds of different ways.



I briefly contributed to Blot (its code is Public Domain [1]). David keeps working on Blot constantly, and it's pretty cool to see the progress changelog with direct mapping to git commits [2].

1. https://github.com/davidmerfield/Blot

2. https://blot.im/news



Thanks for contributing – Rakhim created the 'questions' forum:

https://blot.im/questions



We've come full circle


Soon we may even be able to put a website into a folder.


CTRL+SHIFT+N New Folder/website

EDIt: this is a good thing.



You used to be able to serve websites via a Dropbox of .html files. It supported CSS, JS and everything. At some point after 2015 they turned off that capability .


I laughed, thanks :D

If there's anything to learn about humanity it's that we apply this technique in many ways.



If I remember correctly earliest version of Apache also did this (though it used S/FTP instead of dropbox and .html instead of .md)


Current versions of Apache also do this.


Now how do I serve my micro service from here? Just drop in a js, py or rb file :-)

What if I drop in a tf file?



WTF is "tf"?


Terraform i assume


The internet is made of tubes. And tubes are made of circles.

2024 is the year of PHP.



Jokes on you. I've been using PHP since.... 2001. Shit, that's a long time.


Perl CGI is the way to go to get ready for 2026


Maybe Vercel and Netfly could think about doing Perl serverless.


Well, I'm off to learn about Apache Tomcat so I can be ready for 2025.


1. Old solution becomes new again

2. Folks clamor that we actually had things right the first time

3. Hype dies down

4. Blog posts complain that the solution "just doesn't scale" and that the complete opposite approach (or some hybrid) is better

5. GOTO 1



GOTO

1. Old solution becomes new again

Points 2 and 3

4. Dijkstra enters the picture with the paper: Go To Statement Considered Harmful [1]

5. Wait, did this ever happen? :’)

I wonder if there’s a modern language practice that extensively uses GOTO

[1] https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.p...



I use goto whenever I have the opportunity, which, sadly, is not that often.

I don't know why people don't like it -- it's essentially an unconditional jump (can replace all while(true);, for example).



I do a low-tech version[1] of this using tree-1.8.0...

[1] https://every.sdf.org/



Very creative and retro!


Haven't tried blot, but I discovered that with a basic stylesheet "tree -H" can be super useful.


Show ?


Just man tree if it's on your system. I used it for temporary jobs, like where I needed to give some students a quick website of a folder of source files. Not much to it.

     -H baseHREF

     Turn on HTML output, including HTTP references. Useful for ftp sites.
     baseHREF gives the base ftp location when using HTML
     output. That is, the local directory may be `/local/ftp/pub', but
     it must be referenced as `ftp://hostname.organization.domain/pub'
     (baseHREF should be `ftp://hostname.organization.domain').
     Hint: don't use ANSI lines with this option, and don't give more
     than one directory in the directory list. If you wish to use
     colors via CSS style-sheet, use the -C option in addition to this
     option to force color output.

     -T title
     Sets the title and H1 header string in HTML output mode.
and that's about it!


Oooooh, sorry, sorry. I was thinking more about the CSS !

But even so I didn't check out `-H`, I thought it was just the help flag and immediately thought the comment was a bit lacking, my bad.



A similar thing: http://tiiny.host/

I use them and I'm a big fan.



It seems a bit different. Blot keeps pulling changes from Dropbox/Google Drive/etc, so you don't have to upload the folder manually.


https://site44.com is kind of similar, except that all files in a given folder do not become public


Whoa, “Remove ${HOST}’s banner”. That brings back memories.


Wow, I’m surprised I’ve never never heard of this and I’ve been working in web dev for 10+ years. I love this idea and I have some things I want to put out there without much management on my part. This will be perfect


Longtime fan of Blot and the founder's (David) work.


Props to _0vzt for keeping Blot rocking for a decade - it's like they've got a secret sauce for static site magic. And yeah, Sephr's right about needing clearer pricing. It's like playing hide and seek with numbers! Lastly, devjab's take on pricing clarity is spot on. It's a breath of fresh air when you don't have to turn into a detective to figure out what something costs.


I built something similar - https://github.com/mxsjoberg/md2website


Is there an option to pay and to self host? Recently my boss asked me for things to spend money on to use up some budget at the end of the year. We can't use hosting services but would pay for support or an "enterprise" edition if we could host it ourselves. Probably not your market but just something to consider.


Maybe buy the hosted service (to pay them), don't use it, then just use the Open Source?


I used Blot for about 5 years for Second Breakfast. Its ease of use got me started blogging. Very cool app/service, highly recommend.

I had it strung up with RSS to Mailchimp to auto-send new posts to a mailing list. Recently just switched to Ghost to make that more integrated, we'll see how it goes!



https://spinup.dev is a similar thing I made a few years ago, with free analytics out-of-the-box for each deploy. Syncing changes is a feature I'd like to add, but time is tight for side-projects at the moment.


Can someone explain this to us 35+ year olds? What am I missing?


I'm 48 and I get this (although I prefer Hugo and Github pages).

What part is confusing to you? I'm happy to help.



"Static Site Generator as a Service."


It let's you create a simple web site without writing any HTML. You just provide a folder of files (text, photos) and choose a template, and it'll turn that into a web site for you.


Basically you provide the app a folder of files and that app transforms the files into web pages and then (maybe?) serves them.


It's like if dropbox automatically exposed your files on the web.


I think you mean when, not if.

The public folder feature was really nice.



Drop had that features. I was warned multiple times when I started hosting my file download away from my website host to Dropbox.


I've been using Blot for years (for two websites), and I can't say enough good things about it. Happy to see it featured here!


This is pretty much how my website worked back when running Dropbox as a headless service on Linux was “easy” and bloat-free. Glad to see it as a service.


Love the simplicity! Looks like this shouldn't need a server, but instead could just be a static site generator. Am I missing something?


Looks to be principally a turnkey service that shelters consumers from the details of web servers and static site generators.


How do you want to serve pages without an http[s] server ?


The next innovation I expect to see on HN is a service that, on a set schedule, gathers articles about a set of topics that you follow, prints them out onto paper, and delivers them to you as a bound volume for easy perusal.

This has a number of advantages for privacy (there's no way for the publishers to know how much time you spent reading each story), offline-first availability (dead-tree is the ultimate), and sharing (you can hand someone the entire volume rather than just a link to it, and they get the whole contents, all offline).

It really sounds like it could be the hot new thing, if only some forward-thinking VC would invest in it.



You are joking, but I honestly would like it to get a personalized weekly collection of articles, a wiki lemma, a comic or two and some reviews delivered as PDF or on paper.

The crux being that it's personalized. It could use my Pocket, RSS reader, reddit/hn voting habits, even my bookmarks db as inspiration. I don't know or care, as long as it manages to deliver me a week's worth every week. Filled with content that I'm going to like 90% of the time, i'd love it and pay for it. I'd even accept ads every few pages.



This is what Google promised, and I hope the near future of AI is able to deliver on.


From what I understand and from what I know of Google (or any big tech), this won't be a "weekly" digest, but rather a constant barrage of "personalized" attention seeking push notifications. Breaking news! Something you should comment on! This movie is trending, watch it now! Your friends have read this book, why haven't you!? Kinda stuff.

What I envisioned, is truly slow paced. Like the "old" in depth weekly magazines. Or journals. Something that I have a week to go through, and that doesn't get stale if I don't.

Maybe I should make it myself (though I guess that's my impulsive ADD brain tricking me into yet another hare chase)



> prints them out onto paper, and delivers them to you as a bound volume for easy perusal.

You joke, but this would be great, and something that every digital solution has failed at replicating so far.

The best we have are newsletters (each from a different site/author) which clutter up my inbox and make me not want to read them. A printed weekly digest of everything (preferably with the comment threads included) would be a great way to spend a weekend.



You can get a subset of the English Wikipedia printed and bound, that gives you even more privacy, as you don't need to share the topics you are interested in with any electronic service.

Hint: Using a public (book) library also means your reading behavior is tracked by intelligence agencies, unfortunately, so you need to own the books you may want to read.



Sometimes I wish you could link directly to specific comments on HN to pass around...

Although it needs the context to really appreciate the funny.



The link to a sepecific comment is on the timestamp: https://news.ycombinator.com/item?id=38810949


I'm guessing they mean non-static server. I.e. just nginx without node or php or ruby or python should suffice to serve the static files.


I’ve been a happy blot user for a while now.

Thanks for building this.

Also, my website is https://independentlypoor.com/



On an iPhone 14 Pro your nav bar covers the content btw https://i.imgur.com/8OZTys7.png


Cool idea. This is a project I’ve done that feels in a similar vein. https://github.com/pseudosavant/player.html


I love this service. Happy customer!


I sort of have a bad taste about this project. I'll use proper support channels and won't rant here, but what happened was that my card was being declined trying to sign up. Thought I could self-host on a linode somewhere given the code is in the public domain, but there is no documentation :/


Is it possible that you are in India and affected by recurring billing regulations? Email us and we'll get you up and running:

https://blot.im/contact



> Is it possible that you are in India

I am, unfortunately.

> Email us and we'll get you up and running

Will do. Thank you very much!



How does this compare to Zrok's integrated server? I've been very impressed with zrok even though I haven't done anything with it in production yet.


I'm the lead developer of zrok. I've also had a habit of building static site generators over the years. Might be an interesting little crossover possibility.

There's a bunch of zrok stuff in the pipeline that's way more important to get to first... but maybe down the line we can support some kind of extension mechanism in zrok and static site generators could just sort of snap right in...

Stuff to think about anyway.



It might be more similar to zrok's caddy integration where you can get "fancier" than just delivering files? Blot is trying to do different stuff than zrok is it seems. Like, it's processing markdown, zrok doesn't try to do that for example. zrok is more about sharing easily. blot doesn't appear to be open source from what i can tell and it's not self-hostable as far as I can tell. seems pretty different overall. I'm not exactly sure what blot is trying to do/be.




S-so does Apache?


Apache only listens to us nerds


Does anyone remember scriptogr.am? It was a similar idea, but it's long gone now.

https://hn.algolia.com/?q=scriptogr.am



if json and xml files become database tables we can get rid of everything else


if only this website didnt autoplay


> Files and folders whose name starts with an underscore do not become posts or pages. You can link to or embed them in posts.

So you cannot link to "posts"? Only to files whose names starts with underscore?



You can link to posts. I imagine this feature is mainly to have images to use in blog posts that do not become standalone pages on their own.


You can specify URLs for specific posts/pages via tags in the post/page file & then link to those URLs directly on other pages.


I see. thanks


How do projects like this routes traffic? Similar to ngrok?


You know what else turns a folder into a website? Installing nginx from your distro repositories. Then every folder beneath the www dir is a website. I'm not joking around. Files in folders is really the best way to make websites.


Would be cool if it could be self hosted


It's not trivial and mostly undocumented, but not terrible. https://github.com/davidmerfield/blot




Isn't that literally just a web server?


Only if the web server transparently converts non-HTML sources (Markdown, Word docs, Google docs, LaTeX, image galleries) into HTML on the fly.


Web browsers can render more than just HTML, can't they? Plain text at the very least, many do PDF as well.

That function really seems like it should be in the browser anyway. The server serves, the renderer renders.



if the server side file format has something semantically similar to #include then your lovely simple binary model fails (without browsers having the same)


HTML has this, yet browsers seem to cope...?


nginx has a lot of modules, this one can render markdown apparently

https://nginx-extras.getpagespeed.com/modules/markdown/



Especially older servers have quite a lot of those types of capabilities, rendering directories to fancy indexes, processing input files in various ways.

Like they'd even spawn arbitary processes for you (w/ CGI).



How about dynamic data from remote db ?


An interesting idea!


AKA www.creedthoughts.gov.wwwcreedthoughts


If there only was a Docker image...






Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact



Search:
联系我们 contact @ memedata.com