| docs | Started basic documentation | |
| examples | Massive improvement for next iteration | |
| www-form | Massive improvement for next iteration | |
| LICENSE.txt | Initial commit | |
| picoforms-roles.sql | Massive improvement for next iteration | |
| picoforms.sql | Massive improvement for next iteration | |
| README.md | Mentioned mdbook | |
Overview
Picoforms is a lightweight, efficient, free & open source solution for creating and sharing web forms, as well as collecting answers to them. It is a fully self-hostable service: only you own all data, without any third-party. Whether you've got to create a survey, quiz or an event announcement, Picoforms allows you to do that with ease and convenience!
Features
- Fields with various inputs:
- text input;
- options selection;
- number input.
- Required fields.
- Grouping fields into pages.
- Reusable form components:
- using one input in multiple fields;
- using one page in multiple forms.
- Answer export via JSON.
- Customizable form themes via CSS.
- Customizable client UI localization.
- Customizable client identification to prevent duplicate answers.
- JavaScript-free! All fields are validated server-side.
- Separate installation of a client UI and editor.
- Privilege separation: different editors own their own forms, pages and inputs.
Implemented
- Web form UI
- Form database
- Interactive form editor
Demonstration
You can find a live demo form at https://forms.lch361.net/form/00000000-0000-0000-0000-000000000000.
Documentation
docs directory includes installation instructions and user manual, along with other information that may be useful for Picoforms users, admins and developers. You can also build documentation using mdbook.
Similar web form software
Questions & answers
Why not google forms?
Proprietary = garbage.
Why not free & open source alternatives?
They lack certain features that I've initially expected from a form editor. Picoforms has a unique set of features, only partially interfering with alternatives' feature sets.
Why no JavaScript?
I never liked the idea of interactive web apps in browser: first of all, that's what desktop is built for, and second of all, performance of some JavaScript websites leaves a lot to be desired. Furthermore, I'm not very proficient with JavaScript at all.
However, this doesn't strictly mean that JavaScript is banned on this project. If you want to make a contribution with a JavaScript that you believe to be useful, be my guest. But please do not make web UI inoperable without JS.
Is collaborative form editing supported?
Picoforms allows multiple concurrent editors of the database. However, there is a privilege separation: if you're a form editor, you can only edit forms, pages and inputs that you created.