Knack Blog

The Knack team on web applications, online databases, and beautifully designed products.


Example App: Purchase Orders

04/24/2013 Posted by Brandon

We’re starting to add more compex apps to our example catalog that show off some of Knack’s advanced features.

First up is a purchase order app. Staff can log in and manage vendors and products and submit purchase orders. Reports can be run on weekly totals and vendor and item totals.

Some features the purchase order app is using:

  • Equations: Item totals are automatically calculated from the quantity and item price
  • Formulas: Totals are summed for each product and vendor.
  • Form Rules: The logged in user is assigned via a form rule as the author of the purchase order
  • Reports: Reports are run for weekly totals and vendor and item totals.
We’re planning on starting on some project management and CRM apps next.

Continue reading...

New Feature: Using Remote Images

04/22/2013 Posted by Brandon

Knack image fields now have the ability to use images hosted on other websites. You can set this option when editing an image field in your database:

This means you can now easily use images hosted on your own site, CDN or asset library with your Knack app. It also means these images can be imported by including the URL in the CSV.

We also included the ability to add thumbnail versions. It still needs to load the full image but you have the option of using different sized thumbnails of your images throughout you app.

Continue reading...

Example App: Equipment Tracker

04/11/2013 Posted by Brandon

Our latest example app is an Equipment Tracker. This is an online database of available equipment that employees can log in and view. They can then “check out” an item, which sets that item as unavaliable for anyone else to checkout.

We used “Equipment” but this app would also work well for libraries, rentals, and any resource tracking where items need to be removed from availability.

This is a good example of using form rules to add connected records. In this case, whenever an item is borrowed or returned, it adds a log of the transaction to the item’s history.

This enables Admins to view a complete checkout history of each item, tracking when it was checked out and returned:

This is type of logging could be used for a variety of scenarioes including versions, history, change logs, and more.

It’s also a good example of establishing “work flow” in Knack, where you can use a form rule to set a “status” field and then filter your views to only show records with certain status values.

In this case, we’re only showing equipment items where “status” equals “available”. Checking out an item uses a form rule to set the status to “unavailable”.

You could use form rules to set a status from new to pending to approved and have different user roles see the records for each status.

Continue reading...

Filtering and Limiting Connections

04/02/2013 Posted by Brandon

We recently added features to filter and limit the records that show in connection inputs.


You can now add filters to any connection input to filter which records will display.

For example, let’s say you have a form to add a new Rental. Each Rental is assigned to a Product, which has an “available” field. You can now add a filter to only show those Products where “available = true”.

Showing records connected to another form input

Multiple connection inputs can be added to a form so that the records of a child connection input will display depending on which parent connection record is selected.

For example, if you have connections to both companies and employees, you can edit employees so that only records connected to the currently selected company will display. When the user selects a different company the employee records will automatically update.

Limiting child records connected to the same parent

You can also limit connection records that have a parent that has been selected in the app or connected to the logged-in user.

For example, let’s say you select a Company from a table and then have a form to add a Project to that Company. Projects can also be assigned to an Employee. When selecting Employees, you’ll only want to show the Employee records that are connected to the selected Company.

You can now edit that Employee input in the form and have

Please note: these features are in beta

Please note that these features are in beta. Please contact us immediately if you notice any issues with these features.

Continue reading...

Featured Web Apps: March

03/25/2013 Posted by Brandon

This is the latest entry in a series describing different online databases and web apps being built by Knack users:

  • Materials Database: A Plastics Engineering company uses Knack for an online database of materials so users can search and download engineerings specs.
  • Price List: A Commodoties Buyer uses Knack to list precious metal prices for their customers using daily changes and equations for different measurements.
  • Recruiting Database: a College uses Knack to manage the recruiting process for football student athletes.
  • Job Placement App: a University Administrator uses Knack to manage a Job Board for students and employers.
  • Advertisement Tracker: a Media Company uses Knack to manage available advertising locations and the customers and revenue generated for each.
We’re still amazed by the variety of custom web apps and online databases we continue to see. This only gets more interesting as we continue to add great features. Can’t wait to see what’s next!

Continue reading...

Announcing the Knack API

03/06/2013 Posted by Brandon

We’re thrilled to announce the release of the Knack API!

The API was designed to provide access to your Knack online database, as well as tools and documentation for extending your Knack apps:

  • Root Data Access: a secure API is provided for full access to your raw data. You can use this for integrating your data with other services and APIs, running maintenance tasks, inserting and updating records…the opportunities are endless.
  • Scene Access: a scene API is provided for working with your app’s Scenes and Views. This is much more limited and follows any rules defined by your application, like logins and user roles. This API can be used with JavaScript to respond to app events and further extend the functionality.
  • JavaScript Events: you can add JavaScript listeners to respond to specific events triggered by your app. For example, when a view renders you may want to insert your own button or set the color of a specific element. Or when a form is submitted, you may want to insert that record into Salesforce.
  • CSS Customization: when you publish a Knack app to your own website you can use your site’s CSS to modify the visual look and design of the app.
We’re really excited to see how it’s used:
  • Front-end coders can use Knack to easily build a custom online database, set up a basic interface, and completely control and customize the app with jQuery and CSS.
  • Mobile developers can create apps where the data is stored in the Knack online database. You can create Knack apps that can enable admins to update or view the data the mobile app is using.
  • Designers can publish Knack apps directly in their client websites and completely control the look and feel to match their designs.
You can access documentation for the API here:

Please try it out and let us know what amazing creations you come up with!

Continue reading...

Example App: Employee Hours

03/01/2013 Posted by Brandon

We released a new example web app: an employee hours app. It’s using a new timer field we’ve been developing.

Employees can log in from any device or computer and add their hours for the day. They can also view their past hours.

It could be extended to track any additional info you may want to record. One example is a hospital volunteer app where volunteers track both time and the number of patients visited.

Supervisors can manage employees and run reports on hourly totals as both pivot tables and line charts.

This is another great example of combining User Roles with an online database to make a really funtional app. Knack makes working with user roles really simple.

Please get in touch if you’d like to add this employee hours database app to your account.

Continue reading...

Featured Web Apps: February

02/18/2013 Posted by Brandon

This is the latest entry in a series describing different web apps and online databases that Knack users are building:

  • Project Management: Photobox, the leading European online photo service, uses Knack to manages special projects across multiple teams.
  • Cashflow Management: a bag manufacturer is using Knack to manage orders, deliveries, and cash-flow reports. Special access is given to accountants for key reports.
  • Homeowners Portal: an HOA uses Knack for a neighborhood directory and for tracking HOA issues.
  • Freight Management: a trucking company uses Knack for a full service freight management solution, including invoices and accounting, trips and logs, and fleet management.
  • Production Whiteboard: an online marketing firm uses Knack to manage production roles and deadlines.

We’re really excited about each of these custom web apps and online databases. We can’t wait to see what will be built with Knack next!

Continue reading...

New Feature: Tracking Record Changes

02/13/2013 Posted by Brandon

For Knack users with a Pro plan or above, we’ve added some features for managing records in your online database. There’s now a small edit icon with each record:

You can click on that icon to edit the entire record at once:

You can click on the History tab to review changes for that record:

This will provide the version of the record every time it was changed, highlighting any changes from the previous record with a color.

It also notes the time of the change, whether it was updated in the builder or the app, and who changed it (if applicable).

Continue reading...

Create Custom Mobile Workforce Apps

02/05/2013 Posted by Brandon

We recently added a new example app called job tasks.

It’s a fairly simple app, but it presents a framework for easily building distributed and mobile workforce apps with Knack.

The idea is you have a workforce that is either distributed across multiple regions or just doing most of their work on mobile devices away from the office.

Companies that do work activites off site often are using incredibly cumbersome paper systems to transfer information from the job to the company. We’re seeing the following as just a few examples for migrating to mobile apps:

  • installations
  • repairs
  • appraisals
  • inspections
  • contract estimates

Knack makes building online database apps for your mobile workforce really easy.

You set two user roles: “Supervisors” and “Employees” (or similar). When a Supervisor adds a new job or task, he connects that record to one or more Employees.

The Employees can then log in from any mobile device to view and update their assigned tasks. So right from the field they can enter their inspection data, or view installation instructions, or set a task as completed.

The key is Knack’s great User Authentication features. We’ll soon be releasing a video tutorial on setting up a mobile workforce app from scratch.

In the meantime please let us know if you’re working on a mobile workforce app or need help with setting up your online database.

Continue reading...