How to!

Guides on how you can do something powerful with Samaaja for your needs!

How can I install Samaaja on my localhost/server (we are assuming you are on Ubuntu Server or Ubuntu Desktop)?

  1. Click here to go to this github repository
  2. download the file and follow instructions depending on the OS.
  3. If you are not comfortable with running bash script files, copy and paste the commands one line at a time, and ask for help if you get stuck.

What is the minimum system configuration (assume you have about 25 concurrent users)? Software:

  • Ubuntu Server 20.0 LTS
  • Python 3.10+
  • Postgres DB


  • 8 GB RAM
  • 2 Cores
  • 30 GB storage if you are collecting images in the forms.

How to use/ deploy Samaaja ?

  • Self hosting - Samaaja is an open source application built on frappe. You can take the code and deploy it on your server. We can support you in this process and also help/ guide to make any further customizations needed. The script in the question above can help with the setup instructions.
  • Cloud hosting - Another option that we are exploring is to host your samaaja instance on cloud that we would run and maintain. This option is still work in progress.

How to update Samaaja to the latest version?

  • Log in to your server, and type " cd frappe-bench/apps/samaaja " to enter the Samaaja app directory
  • type " git pull " to pull latest changes
  • go to frappe-bench directory by typing " cd ../.. " from samaaja directory
  • with samaaja running, type " bench --site migrate " to update the app.
  • type " bench restart " to restart the processes.

How do I add users? How can I get them to auto sign in?

  • You can ask users to go to the URL domainname/login#login. For example - The last line links to a registration page. Frappe, on which Samaaja is built allows you to enable Single Sign Ons - Gmail, Github, Facebook, Twitter etc - the link to read more is here.

How do I create forms?

  • You can add a new webform following this link. Remember, a webform has to have a matching "DocType" aka table to hold the responses.

How do I create dashboards?

  • Login to Desk as an Admin, and search for "New Dashboard"

How do I add badges and the logic to automatically deliver it based on some actions on Samaaja?

  • Once you sign in as the admin, in desk, search for “Badges”
  • You can select Badge List to see existing badges
  • In that screen, you can Select "Add new badge" to add a new badge, or go further down the drop down, in the search bar to find a similar item to add a new badge.
  • Title will be the name of the Badge
  • Icon is the Badge's icon. 128x128px icons are suggested. When uploading, set image as public, and optimise.
  • Set Badge as active and set order to present itself in. There is a section to write the SQL query. An example is SELECT name FROM `tabUser` u where count( > 0 && count(<2 where if the user bas 1 or 2 actions recorded, they get a badge called Starter Cat.
  • Set a presentation number/sequence for the badge. Ensure no duplication in the order of presentation of the badge.
  • Set as active by checking the check box.
  • On edit, the badge logic is applied, as it is computed when the user profile is loaded. This data is not stored in any doctype.

How to edit and format the User Profile? How can I enable Notifications for my users? How can I set up workflows to ease things for my moderators?