Skip to content
🐚 Dynamic Forms Engine (and Data Storing), built on Electron
JavaScript HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
assets
.gitignore
README.md
index.html
package.json

README.md

triton-forms

🐚 Dynamic Forms Engine (and Data Storing), built on Electron

Project Setup

triton-forms built on Electron is a typical nodeJS application we assumed that you're familiarized with this technologies, otherwise there are useful link nodeJS

For OSX Users, we suggest install nodeJS through Homebrew

With nodeJS + Electron Environment installed, use this commands to run triton-forms

  git clone https://github.com/lexmartinez/triton-forms.git
  cd triton-forms
  npm start

And voilà triton-forms now should be running as desktop app

Form Engine

The triton-forms concept, is simple, a basic JSON document stored in MongoDB collection named forms, contains all configurations for the form and data that you want to save.

Here is an example of form configuration:

{
  "name" : "Contacts",
  "target" : "contacts",
  "config" : [
      {"type" : "text","label" : "Name","model" : "name"},
      {"type" : "text","label" : "Organization","model" : "organization"},
      {"type" : "text","label" : "Phone","model" : "phone"},
      {"type" : "textarea","label" : "Notes","model" : "notes"},
      {"type" : "select","label" : "Group","model" : "group",
          "options" : ["Family",   "Work", "Friends"]
      },
      {"type" : "checkbox","label" : "Favorite","model" : "favorite"}
    ],
  "model" : "{ \"name\": \"String\", \"organization\" : \"String\", \"phone\" : \"String\", \"group\" : \"String\", \"favorite\" : \"Boolean\"}"
}

Where..

  • name is the name and title for your form.
  • target is collections name when data will be stored.
  • model is mongoose schema definitions for the object.
  • config is an array of every input on form (all possible input types can be found there).

Useful links

You can’t perform that action at this time.