Very good work, especially for a solo developer. Feedback:
1. Design language of the forms feels too much like Typeform, you're a talented designer: differentiate the design to establish your own identity. If the forms look like Typeform, form-fillers are not going to investigate what form software it is and use it -- which was a big part of why Typeform grew.
2. The name is terrible. Blocks? The name sounds like you decided on it for a different project (some sort of component framework using Markdown?) and then reused it for this. The domain forms.md is available to register. Anything that include "form" in the name would be a significant improvement.
> differentiate the design to establish your own identity.
But maybe the Typeform design i not very original, too. Maybe it makes sense to use some design that is rather neutral, easy on the eye, automatically recognizable without an effort to parse.
I see a commendable humility in picking a clean, usable, not catchy rendering. What's original here is the form language, which is actually the centerpiece. And frankly, I wish the code examples were more colorful, bringing attention to the keywords and separating them from the static text runs. It would help understand the language structure easier.
1. Yeah I would say this was intentional. Typeforms are almost instantly recognizable, which is a good thing for a new product I think. I actually want to offer more than one form style though. If you look at the CSS file, everything is a variable so that I can add more styles/themes.
2. Haha you're right actually, the idea was slightly different and the name sort of stuck (it was originally blocksdb, which is worse). I don't mind blocks.md though, but marketing is definitely not my best skill.
It says Business Source License 1.1 which basically means I’m free to use as long as I don’t use it to build a competitive offering. Fair enough.
But it changes to AGPL-3.0 on 2028-07-01, what? Basically now I need to open source my entire stack that has any connection to the form? Why would you change it to a more restrictive license (for anyone not looking to build a competitive offering) after a few years?
---
Unrelated, I find the DSL increasingly unwieldy as you get to more advanced features (especially styling). Might want to consider offering a JSX/TSX alternative for more advanced use cases.
So I did not want to open-source yet, which is why I picked BUSL-1.1, and from what I can tell, the other BUSL-1.1 I've looked at had this clause to open-source at a later date (AGPL3 is an open-source license after all).
I'm still trying to figure out the licensing around this whole thing, so this is temporary I believe.
IANAL but from what I understand, folks will be able to use the current version of the software as it is currently licensed, forever. The author is making clear their intent to change the license on a certain date, at which point new versions of the software will only be available under AGPL.
I agree it's odd that folks who use this software something that isn't a "competitive offering" may have to open-source their software stack if they upgrade to a new version in 2028. But, they will always have the option to use an older version of the software that is still covered by the BSL.
This style of form is aggravating to fill out, but kudos on making it beautiful.
If you want to be kind to your users, allow them to scroll through the entire form, see it on one screen and ideally skip ahead without filling out required options but block submission.
I suppose for me it kind of matters how many questions are being asked. I'm fine with this UX if it's a specific question or two, but for a whole questionnaire with 14 questions or more, then I'd also prefer to be able to get an overview first.
You can actually have more than one form field within the same slide. I haven't made that very obvious, but one of the advantages here compared to Typeform is the flexibility.
name* = TextInput(
| question = What is your name?
| description =
Let's get started with the survey. First, please tell
us your full legal name according to your passport.
)
Could be just this:
name* = TextInput
# What is your name?
Let's get started with the survey. First, please tell
us your full legal name according to your passport.
Yeah I'm curious if the Markdown form syntax here is totally new or if other people have done something similar. I'm building an app that extends Markdown with Excel-like formulas (think function calls, not arithmetic) and have considered having formulas that instantiate form elements.
Yeah, is anyone familiar with other DSLs for form/survey building and logic?
For my work, where we produce lots of surveys and reuse parts of them/run near duplicates monthly, I've been curious to see if there's any dual code and GUI options out there to allow for survey programming to be version controlled and forked, etc.
I feel like this falls into an uncanny valley between requiring the skill to cognitively model forms in your mind as text, which is fairly close to coding and using a form builder UI.
Yeah, it'd be great if over time they/a community provided a system for visualizing the form logic and a form builder GUI so you can go full-circle with this (building via code and GUI and saving/versioning/forking forms via source).
nice product. but prohibitively expensive. 60$ and even more concerning "Varies" price for actual use is pretty much no-go for this product.
if you are small startup this is too expensive, if you are big company, you might as well built it yourself. got to be cheaper!
UPD: typeform charge more but they provide hosting and analytics, very convenient for people who don't want/cant to code anything. this library is "bring your own backend, analytics, etc.", need coding too, but prices are nearly same ballpark. too expensive.
Hmm I'm still trying to figure out pricing. The "Varies" Enterprise option is just there so people who are interested and I can have a proper chat because the product is so new. Definitely not a typical sales call, although I haven't done a good job to explain that.
Hey builder of this thing here. This blew up like crazy! Thanks for all of the feedback everyone. I'll try to reply to all of them, I think most of it is very valid. In case someone wants to reach out for questions, my email is tahmid(dot)hm(dot)dev(at)gmail.com.
Looks interesting, but I’m having a hard time seeing why a team would adopt this over something like MDX. A comparison page between the two would be great!
Great alternative. I'm the founder of Buildform.ai which is an AI first typeform alternative. With buildform, it's faster and easy to build high-conversion conversational forms and analyze and use the data you collected.
Hey, really appreciate this user test. Like I mentioned in another comment, I would love to catch a chat with you if you're interested: tahmid(dot)hm(dot)dev(at)gmail.com. Thanks again for taking the time to make a video.
why would someone self host? There is always resistance in managing server on our own.
So only people will buy such self hosted typeform alternatives are maybe the one who are using typeforms at scale, large businesses.
1. I don't understand why there's a pricing model for some CSS on forms. if I'm hosting the form & submission endpoint why do I need your backend (? not even sure what your role is here)
2. why not make it into a selfhosted typeform alternative; would be cooler than this saas bs
[+] [-] aimazon|1 year ago|reply
1. Design language of the forms feels too much like Typeform, you're a talented designer: differentiate the design to establish your own identity. If the forms look like Typeform, form-fillers are not going to investigate what form software it is and use it -- which was a big part of why Typeform grew.
2. The name is terrible. Blocks? The name sounds like you decided on it for a different project (some sort of component framework using Markdown?) and then reused it for this. The domain forms.md is available to register. Anything that include "form" in the name would be a significant improvement.
[+] [-] Terretta|1 year ago|reply
`forms.md` says what it is on the label.
And `filldown` has a lot of extensions available:
https://www.namecheap.com/domains/registration/results/?doma...
[+] [-] nine_k|1 year ago|reply
But maybe the Typeform design i not very original, too. Maybe it makes sense to use some design that is rather neutral, easy on the eye, automatically recognizable without an effort to parse.
I see a commendable humility in picking a clean, usable, not catchy rendering. What's original here is the form language, which is actually the centerpiece. And frankly, I wish the code examples were more colorful, bringing attention to the keywords and separating them from the static text runs. It would help understand the language structure easier.
[+] [-] darkhorse13|1 year ago|reply
1. Yeah I would say this was intentional. Typeforms are almost instantly recognizable, which is a good thing for a new product I think. I actually want to offer more than one form style though. If you look at the CSS file, everything is a variable so that I can add more styles/themes.
2. Haha you're right actually, the idea was slightly different and the name sort of stuck (it was originally blocksdb, which is worse). I don't mind blocks.md though, but marketing is definitely not my best skill.
[+] [-] oefrha|1 year ago|reply
It says Business Source License 1.1 which basically means I’m free to use as long as I don’t use it to build a competitive offering. Fair enough.
But it changes to AGPL-3.0 on 2028-07-01, what? Basically now I need to open source my entire stack that has any connection to the form? Why would you change it to a more restrictive license (for anyone not looking to build a competitive offering) after a few years?
---
Unrelated, I find the DSL increasingly unwieldy as you get to more advanced features (especially styling). Might want to consider offering a JSX/TSX alternative for more advanced use cases.
[+] [-] darkhorse13|1 year ago|reply
I'm still trying to figure out the licensing around this whole thing, so this is temporary I believe.
[+] [-] uneekname|1 year ago|reply
I agree it's odd that folks who use this software something that isn't a "competitive offering" may have to open-source their software stack if they upgrade to a new version in 2028. But, they will always have the option to use an older version of the software that is still covered by the BSL.
[+] [-] mmastrac|1 year ago|reply
If you want to be kind to your users, allow them to scroll through the entire form, see it on one screen and ideally skip ahead without filling out required options but block submission.
[+] [-] diggan|1 year ago|reply
In what sense?
I suppose for me it kind of matters how many questions are being asked. I'm fine with this UX if it's a specific question or two, but for a whole questionnaire with 14 questions or more, then I'd also prefer to be able to get an overview first.
[+] [-] Terretta|1 year ago|reply
[+] [-] darkhorse13|1 year ago|reply
[+] [-] nine_k|1 year ago|reply
Not the case here though.
[+] [-] mg|1 year ago|reply
This:
Could be just this:[+] [-] steve_adams_86|1 year ago|reply
[+] [-] rafram|1 year ago|reply
An actual Markdown syntax extension for forms would be interesting. [_____] for text fields?
[+] [-] verdverm|1 year ago|reply
https://mdxjs.com/
You can write any components normally and pass them in to be available in MDX. You can make forms and much more
[+] [-] nine_k|1 year ago|reply
[+] [-] darkhorse13|1 year ago|reply
[+] [-] lukasb|1 year ago|reply
[+] [-] bthallplz|1 year ago|reply
For my work, where we produce lots of surveys and reuse parts of them/run near duplicates monthly, I've been curious to see if there's any dual code and GUI options out there to allow for survey programming to be version controlled and forked, etc.
[+] [-] bberenberg|1 year ago|reply
[+] [-] breck|1 year ago|reply
Yes, but he's very close to the obvious solution that will spark web 4.0.
Closest I've seen yet.
[+] [-] bthallplz|1 year ago|reply
[+] [-] nikolayasdf123|1 year ago|reply
if you are small startup this is too expensive, if you are big company, you might as well built it yourself. got to be cheaper!
UPD: typeform charge more but they provide hosting and analytics, very convenient for people who don't want/cant to code anything. this library is "bring your own backend, analytics, etc.", need coding too, but prices are nearly same ballpark. too expensive.
[+] [-] darkhorse13|1 year ago|reply
[+] [-] darkhorse13|1 year ago|reply
[+] [-] lottamus|1 year ago|reply
[+] [-] unknown|1 year ago|reply
[deleted]
[+] [-] darkhorse13|1 year ago|reply
[+] [-] vunderba|1 year ago|reply
[+] [-] darkhorse13|1 year ago|reply
[+] [-] Stanlyya|1 year ago|reply
[+] [-] breck|1 year ago|reply
My user test: https://www.loom.com/share/9287cfe4e7024330bfe752ef8b9ad9bd
[+] [-] darkhorse13|1 year ago|reply
[+] [-] heyarviind2|1 year ago|reply
https://formlick.com
[+] [-] devops000|1 year ago|reply
[+] [-] j12a|1 year ago|reply
[+] [-] darkhorse13|1 year ago|reply
[+] [-] waishnav|1 year ago|reply
Nonetheless great design!
[+] [-] dcreater|1 year ago|reply
[+] [-] darkhorse13|1 year ago|reply
[+] [-] goforbg|1 year ago|reply
[+] [-] Esras|1 year ago|reply
The field on the form is indeed of `type=tel`, which Mozilla helpfully points out has no validation (see the above document): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/in...
[+] [-] anon1094|1 year ago|reply
[+] [-] cpb|1 year ago|reply
[+] [-] compootr|1 year ago|reply
1. I don't understand why there's a pricing model for some CSS on forms. if I'm hosting the form & submission endpoint why do I need your backend (? not even sure what your role is here) 2. why not make it into a selfhosted typeform alternative; would be cooler than this saas bs
[+] [-] darkhorse13|1 year ago|reply