M
M
Marie Artie2015-06-10 22:44:32
JavaScript
Marie Artie, 2015-06-10 22:44:32

How are online surveys developed, such as typeform.com?

I really like online surveys like typeform.com, but I want to make my own. I don’t quite understand how this is done on the backend and frontend.
If you were to make a simple survey site, how would you implement it? What would you use for the front, what for the backend? Any frameworks? What js libraries? ruby or php? Where is the best place to store the data received from the survey? Maybe it makes sense to immediately send the results somewhere (to the soap), and not store them? Maybe you have solved similar problems and can share your experience?
For example, I want to make a one-pager with 10 questions about gadgets (the questions have the same order, without branches depending on the answer). How it is more correct to implement it? CMS is not really needed?
https://showroom.typeform.com/to/qTIJCU
(typeform survey example)
ps Yes, there are similar topics on the toaster, but they are old and I could not find an answer to my question

Answer the question

In order to leave comments, you need to log in

2 answer(s)
P
Pavel Volintsev, 2015-06-11
@miminari13

1. I really like online surveys like typeform.com, but I want to make my own. I don’t quite understand how this is done on the backend and frontend.
Frontend typeform.com
* underscore.js
* jQuery
* compiled and compressed possibly via Gulp
* CSS possibly compiled from SCSS or LESS
* I don't see CSS/JS frameworks. Did you write from scratch?
Backend
* Ubuntu OS (by response headers)
* Apache 2.2 (by response headers)
* nginx 1.4.6 (by response headers)
* Programming language, possibly PHP (by presence of PHPSESSID cookie) but could be something else
* Caching to nginx and HTTP level
* Can be cached in memcached/redis or otherwise
* Compression in gzip
2. Where is the best place to store the data received from the survey? Maybe it makes sense to immediately send the results somewhere (to the soap), and not store them?
The database is relational (MySQL or PostgreSQL), but can be a mixture of SQL + noSQL.
You can send a copy to soap, but you need to store it somewhere to see if the soap is lost.
3. How it is more correct to implement it? CMS is not really needed?
I would use Google Forms for such a one-time task, or here is typeform.com
In fact, this project includes just a lot of technologies.
Here is their hidden navigation menu: take.ms/sfRHZ (stupid menu I'll say)
I just marked some with arrows. These arrows highlight parts of the project that are made on different technologies or platforms.
Is there some kind of content management system (CMS) for publishing prices and other small pages, or maybe these are static pages.
Tumblr blog hellotypeform.tumblr.com
There is an API for connecting third-party services + API documentation and a console for testing docs.typeform.io/v0.3/page/sandbox written in node.js + Express framework
There is some kind of internal billing system, and payments are accepted through https://stripe.com/
Some kind of system for working with users is connected helpcenter.typeform.com (Zendesk?)
I found more information about their technology stack here: stackshare.io/typeform
Wow list!
And more information about funding: https://www.crunchbase.com/organization/typeform
The TYPEFORM.COM project since 2012, last year received $1.4 million dollars and during this time they could already rewrite everything from scratch with any crutches.

M
Marie Artie, 2015-06-11
@miminari13

Pavel Volintsev : yes, such a project cannot be repeated on the knee. thanks, Pavel)

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question