Skip to main content

Template Creation Guide

Introduction

Templates in AnyDB are pre-designed data structures that define how information is organized, displayed, and manipulated. They help structure your data efficiently, ensuring consistency, usability, and scalability across your organization. A well-designed template serves as a blueprint that can be reused whenever you need to capture similar types of information.

This guide walks you through the best practices for designing effective templates in AnyDB, from basic concepts to advanced techniques.

Approaches

There are two fundamental approaches to AnyDB template creation:

  • Single Item: The entire dataset (including all related data fields, formulas and visualizations) is self-contained within one item
  • Parent-Child Structure: The dataset is split into hierarchical items with relationships. Parent items typically contain summary information, while child items store detailed data.

AnyDB Template Creation Guide

When to Use Each Approach

Single ItemParent and Child
Best for records that change little and not many new rows or columns are planned to be addedBest for multi-level datasets (e.g., tracking expenses over different years but summarized )
Simple and self-contained.More complex with multiple interrelated items.
Need new columns and new rows as new data is trackedRequires new items to be added as children to parent as new data is tracked
All users will have same level of access.Can implement different permission levels for parent vs. child items
Item size is limited for peformance to not more than 50x50 grid (2500 cells)Parents can rollup data from many children, and that can be organized without any size limits

Single Item Example

A simple weekly timesheet that contains all the days of the week and the hours worked, all totaled up to total hours worked.

Parent-Child Example

A more detailed timesheet, where each day is a child and each day has separate entries for work performed, including hours worked, location, client etc.

Creating Effective Templates

To create good templates, make sure to follow the guides on the following sections for each section of the template.

Template Name

AnyDB supports dynamic item naming, allowing you to create templates whose instances have meaningful, context-specific names. You can use any valid formulas as part of template names. Dynamic names make items instantly recognizable in lists and search results. It is recommended to set dynamic item names whenever possible.

Examples

This expression sets the name as 'Employee - John Smith' if name in B2 is set, otherwise 'Employee - Unknown'

CONCAT('Employee - ', IF(B2==0,'Unknown', B2))

This expression sets the name as 'Receipt - April 25, 2025' if date in A1 is set, otherwise 'Receipt - NO DATE'

CONCAT('Receipt - ', IF(A1 == 0, 'NO DATE', READABLEDATE(A1)))

Template Description

Set a useful AnyDB item description that appears in the item listing.

A good description:

  • is concise (recommended less than 100 characters)
  • Clearly identifies the purpose of the template
  • Mentions key capabilities or features

Example for a Customer Template: "Tracks contact details, interaction history, and purchase data with automated follow-up reminders."

Badges

AnyDB supports badges to summarize important data in the item. Add badges as needed to summarize the most important information in your item.

Effective badge uses:

  • Status indicators (Active/Inactive, Complete/Pending)
  • Priority levels (High/Medium/Low)
  • Key metrics (Budget utilization, Days remaining)
  • Counts (Number of tasks, open issues)

Example badge for a document approval template would have a badge that shows document approval priority.

Priority: B1

Recommendation for Badges

  • Is short and usually one word names. For example, use 'Risk' rather than 'Status Risk'
  • Should have a background color
  • Limit to 3-4 badges and a max of 5 badges

Cells

The cells of the template contain the content.

Recommendation for Content

  • Ensure each cell has a label. You can set a 'Display Label' for a cell or use F2 key to set the name.
  • Avoid setting background colors unless absolutely needed. Use Styling Guidelines below
  • Lock cells that shouldn't be modified by the user
  • Hide cells that have calculations
  • Use 'Hide in Forms' to hide cells that shouldn't show up in forms
  • Description: Add descriptions to cells to clarify the data to be entered
  • Readonly: Mark cells as readonly if it is a computed field using a formula
  • Hidden: Mark cells as hidden to hide these cell contents from users
  • When possible make templates not more than 6 cells in span just so that it fits in normal resolution monitors and easier to print and download as PDF.

Styling Guidelines

AnyDB uses a minimalistic aesthetic. To maintain consistency, adhere to the following design principles:

Headers

  • When possible start template with cell A1 with a Template name in UPPERCASE and BOLD

Text Formatting

  • Headings: Use bold text for section headers
  • Instructions: Use slightly smaller italic text for user guidance

Cell Colors

Use cell colors sparingly

  • Accent Color or Heading Color: Background with light gray (#FAFAFA)
  • Key User Input Cells: Highlight with a light pastel blue (#E9F3F7 )
  • Computed, Non-Editable Cells: Use "Locked" property to mark these as uneditable

When cell background colors need to show status like error, success etc use these colors

  • Success State Cells: Use pastel green (#EEF3ED)
  • Failure State Cells: Use pastel red (#FAECEC)
  • Warning State Cells: Use pastel yellow (#FAF3DD)
  • Uncommon Danger Failure State Cells: Use darker red (#EFC2C2)
Conditional Formatting for Cells

Use conditional formatting to visually highlight important information:

URGENT, HIGH, MEDIUM, LOW

IF(CURRCELL=='Urgent', '#EFC2C2', IF(CURRCELL=='High', '#FAECEC', IF(CURRCELL=='Medium', '#FAF3DD', '#FFFFFF')))

OPEN, CLOSED, OTHER

IF(CURRCELL=='OPEN', '#FAECEC', IF(CURRCELL=='CLOSED', '#EEF3ED', '#FFFFF'))

< 50%, < 70%>, above 70%

IF(CURRCELL < 0.5, '#FAECEC', IF(CURRCELL < 0.7, '#FAF3DD', '#EEF3ED'))

Badge Colors

  • Success Badge: Use Green (#A6DBC7)
  • Urgent Badge: Use dark red (#FF7575)
  • Failure Badge: Use Red (#FFB5A6)
  • Warning Badge: Use yellow (#FFF9C4)
  • Unknown Badge: Use gray (#F1F1EF)
  • Informational Badge: Use Blue (#ACC7E9)
Conditional Formatting for Badges

Use conditional formatting to visually highlight important information:

URGENT, HIGH, MEDIUM, LOW

IF(CURRCELL=='Urgent', '#FF7575', IF(CURRCELL=='High', '#FFB5A6', IF(CURRCELL=='Medium', '#FFF9C4', '#F1F1EF')))

OPEN, CLOSED, OTHER

IF(CURRCELL=='OPEN', '#FFB5A6', IF(CURRCELL=='CLOSED', '#A6DBC7', '#F1F1EF'))

Layout Best Practices

  • Data Summarization: Include key data summaries at the top of the template for quick insights
  • Logical Grouping: Organize related fields together for better readability
  • Progressive Disclosure: Place most common fields first, followed by less frequently used fields
  • Consistent Spacing: Maintain consistent row heights and column widths
  • Field Alignment: Right-align numbers, left-align text, center short status values

Template Checklist

Before sharing your template, test it thoroughly to ensure it works as expected:

  • Name: Check if the name has a dynamic formula
  • Name: Check if the name matches the template correctly
  • Description: Check if the description is short and concise and doesn't use words like 'template'
  • Badges: Check if there is atleast 1 badge at the minimum and not more than 5 badges
  • Badges: Check if badges have background color
  • Badges: Check if badges have dynamic background color support
  • Badges: Check if Badge Display Names are short and one word if possible
  • Badges: Check if Badge colors match badge color schemes
  • Content: Check if A1 cell has template name in UPPERCASE and BOLD
  • Content: Check if colors match cell color schemes
  • Content: Check if description is added to required cells especially where user input is needed

Publishing your Template

Before publishing your template, ensure you have the following three required components:

1. Exported Template JSON

  • Navigate to the Export Menu in AnyDB.
  • Select "JSON" format and choose "Template only."
  • Save the file as TEMPLATEID.json which would look like example '67c5bb8fb4da497ff08eb69a.json'

2. Screenshot for Preview

  • Take a JPEG screenshot of the completed template.
  • Ensure the image resolution is 1080x720 pixels.
  • Save the file as preview.jpg.

3. Metadata File (meta.md)

  • This Markdown file should include the following sections
- Overview
- Description
- Key Data Stored
- Business Use Cases
- Why This Template is Powerful

Example shown here:

# AnyDB Job Application Template

## Overview

The AnyDB Job Application template is designed to streamline the job application process,
allowing potential candidates to directly submit their information into the AnyDB system.
This template facilitates efficient data capture and management, enabling
HR teams to process applications effectively and systematically.

## Description

This template provides a structured form for job applicants to enter their personal
and professional information. It includes fields for names, contact details,
LinkedIn profile URLs, and resume uploads. The template also features
administrative sections, such as tracking the application stage and assigning
applications to hiring managers, which are hidden from the applicants.
The template is designed to be customizable, allowing for job-specific
details to be included, such as location preferences and job descriptions.

## Key Data Stored

- **Job Title:** The title of the job being applied for.
- **Location:** The preferred location type (On Site, Hybrid, Remote).
- **Onsite Location:** The specific location if the role is on-site.
- and more

## Business Use Cases

- **Efficient Applicant Tracking:** Centralizes applicant data, making it easy
to track and manage applications.
- **Streamlined Recruitment:** Simplifies the application process, reducing manual data entry
and administrative overhead.
- **Improved Candidate Experience:** Provides a user-friendly form for applicants to submit their information.
- and more

## Why This Template is Powerful

- **Direct Data Input:** Allows candidates to submit information directly into the system, reducing errors.
- **Customizable Job Descriptions:** Enables the tailoring of job descriptions within the application form.

4. Select the categories in which this template should appear

Either provide the existing categories or subcategories or provide new ones. Note a template can be listed in more than one category/subcategory.

For example an invoice template can be under sales, financials->accounts receivables and customer.

5. Send all the 3 files along with the categories to support@anydb.com

You can zip these files up in case you are sending multiple templates.