Build Complete Applications with T-SQL

TSQL.APP is a revolutionary SQL-first framework that lets you develop enterprise-grade applications directly from your database. Eliminate the frontend-backend divide and leverage your SQL expertise.

Result Preview
TSQL.APP Hello World
Hello, John!
-- Hello World Example
DECLARE @Name NVARCHAR(MAX);
DECLARE @GreetButton NVARCHAR(MAX);
DECLARE @Greeting NVARCHAR(MAX);

-- Synchronize with modal state
EXEC sp_api_modal_get_value 
   @name = N'@Name', 
   @value = @Name OUT;
EXEC sp_api_modal_get_value 
   @name = N'@GreetButton', 
   @value = @GreetButton OUT;

-- Display title
EXEC sp_api_modal_text 
   @text = N'Hello World Example';

-- Input field for name
EXEC sp_api_modal_input 
   @name = N'@Name',
   @value = @Name OUT,
   @placeholder = N'Enter your name';

-- Greet button
EXEC sp_api_modal_button 
   @name = N'@GreetButton',
   @value = N'Greet',
   @valueout = @GreetButton OUT,
   @class = N'btn-primary';

-- Handle button click
IF @GreetButton IS NOT NULL
BEGIN
   IF LEN(TRIM(ISNULL(@Name, N''))) = 0
   BEGIN
      SET @Greeting = N'Please enter your name';
      EXEC sp_api_toast 
         @text = @Greeting, 
         @class = N'btn-warning';
   END
   ELSE
   BEGIN
      SET @Greeting = CONCAT(N'Hello, ', @Name, N'!');
      EXEC sp_api_toast 
         @text = @Greeting, 
         @class = N'btn-success';
   END
END

Why Choose TSQL.APP?

Leverage your SQL expertise to build complete applications

Rapid Development

Build complete applications in days, not months. Automatic CRUD operations, UI generation, and business logic implementation.

SQL-First Approach

Use T-SQL as the primary programming language. No need to learn multiple languages or frameworks.

Enterprise-Ready

Built-in security, role-based access control, audit trailing, and multi-language support for business-critical applications.

Powerful Features

SQL-Centric Development

Build entire applications using T-SQL as the primary programming language. No separate frontend/backend codebases needed.

Auto-Generated UI

Automatically generate forms, lists, and detail views from your database structure. Customize with T-SQL stored procedures.

Built-in Reporting

Create PDF, Excel, and HTML reports directly from your data. Built-in formatting, styling, and export options.

Developer Tools

Integrated VS Code editor, debugger, table builders, and more. The complete toolset for SQL-first development.

Security & Access Control

Role-based permissions, data encryption, and comprehensive audit logging. Enterprise-grade security built-in.

Responsive Design

All applications are automatically mobile-responsive with modern UI components powered by Bootstrap.

How It Works

Two-Database Architecture

TSQL.APP uses a non-invasive approach that preserves your existing database investments:

  • Source Database: Your existing database remains completely untouched
  • Project Database: Contains all UI metadata and custom configurations
  • Seamless Integration: References source objects through synonyms
  • Clean Separation: UI/presentation logic separate from business data
TSQL.APP UI (Web/Mobile)
A_PROJ Database
(UI Metadata & Configuration)
Source Database (A)
(Your Existing Data)

Development Flow

1

Create Database Tables

Design your data model or use existing database objects

2

Configure Cards

Set up UI views for your tables and customize fields

3

Write Action Scripts

Implement business logic using T-SQL procedures

4

Deploy Instantly

Changes are immediately available to all users

See TSQL.APP in Action

Create a Complete Order Form

This example shows how to create an interactive order entry form with validation, lookups, and database operations - all in T-SQL:

-- Create an order entry form with validation
DECLARE @CustomerID NVARCHAR(MAX);
DECLARE @ProductID NVARCHAR(MAX);
DECLARE @Quantity NVARCHAR(MAX);
DECLARE @SubmitButton NVARCHAR(MAX);
DECLARE @Message NVARCHAR(MAX);

-- Get form values from modal
EXEC sp_api_modal_get_value @name=N'@CustomerID', @value=@CustomerID OUT;
EXEC sp_api_modal_get_value @name=N'@ProductID', @value=@ProductID OUT;
EXEC sp_api_modal_get_value @name=N'@Quantity', @value=@Quantity OUT;
EXEC sp_api_modal_get_value @name=N'@SubmitButton', @value=@SubmitButton OUT;

-- Display form title
EXEC sp_api_modal_text @text = N'New Order Entry', @class = N'h3';

-- Customer dropdown
EXEC sp_api_modal_select
    @name = N'@CustomerID',
    @value = @CustomerID OUT,
    @card_name = N'customers',
    @placeholder = N'Select Customer';
    
-- Product dropdown
EXEC sp_api_modal_select
    @name = N'@ProductID',
    @value = @ProductID OUT,
    @card_name = N'products',
    @placeholder = N'Select Product';
    
-- Quantity input
EXEC sp_api_modal_input_decimal
    @name = N'@Quantity',
    @value = @Quantity OUT,
    @placeholder = N'Enter Quantity';
    
-- Submit button
EXEC sp_api_modal_button
    @name = N'@SubmitButton',
    @value = N'Create Order',
    @valueout = @SubmitButton OUT,
    @class = N'btn-primary';

-- Handle form submission
IF @SubmitButton IS NOT NULL
BEGIN
    -- Validation
    IF @CustomerID IS NULL OR @ProductID IS NULL OR ISNULL(@Quantity, N'') = N''
    BEGIN
        SET @Message = N'Please fill in all required fields';
        EXEC sp_api_toast @text = @Message, @class = N'btn-warning';
        RETURN;
    END
    
    -- Insert order into database
    INSERT INTO orders (customer_id, product_id, quantity)
    VALUES (@CustomerID, @ProductID, @Quantity);
    
    SET @Message = N'Order created successfully';
    EXEC sp_api_toast @text = @Message, @class = N'btn-success';
    EXEC sp_api_modal_clear;
END
New Order Entry
Order created successfully

Advanced TSQL.APP Examples

See how TSQL.APP solves real-world business challenges with SQL-first development

Interactive Data Table with Export

This example creates a formatted data table with grouping, totals, and export functionality:

-- Create a formatted data table with export options
DECLARE @Title NVARCHAR(MAX);
DECLARE @DisplayText NVARCHAR(MAX);
DECLARE @ButtonClass NVARCHAR(100);
DECLARE @ButtonValue NVARCHAR(100);
DECLARE @CloseButton NVARCHAR(MAX);

-- Synchronize with modal state
EXEC sp_api_modal_get_value 
   @name=N'@CloseButton', 
   @value=@CloseButton OUT;

-- Prepare display values
SET @Title = N'Sales Report by Department';
SET @ButtonValue = N'Close';
SET @ButtonClass = N'btn-secondary';

-- Create display-formatted table for report
IF OBJECT_ID('tempdb..#DisplaySalesReport') IS NOT NULL 
   DROP TABLE #DisplaySalesReport;

-- SELECT INTO with special column suffixes for display
SELECT 
   [Department*] = DepartmentName,   -- * enables grouping
   [Category*] = CategoryName,       -- nested grouping
   [Product] = ProductName,          -- no special handling
   [Quantity@] = QuantitySold,       -- @ enables totaling
   [Unit Price@] = UnitPrice,        -- totaling
   [Total Sales@] = TotalAmount      -- totaling
INTO #DisplaySalesReport
FROM SalesData;

-- Display title
EXEC sp_api_modal_text @text=@Title, @class=N'h3';

-- Display formatted table with grouping and export options
EXEC sp_api_modal_table 
   @tmptable = N'#DisplaySalesReport',
   @print = 1,         -- Enable printing
   @excel = 1,         -- Enable Excel export
   @orderby = N'ORDER BY [Department*], [Category*], Product';
Sales Report by Department
Department Category Product Quantity Unit Price Total Sales
Electronics 40 $26,299.60
Computers 13 $13,699.87
Gaming Laptop 5 $1,299.99 $6,499.95
Business Laptop 8 $899.99 $7,199.92
Phones 27 $12,599.73

Multi-Step Form with State Management

This example shows how to create a multi-step form that maintains state between steps:

-- Multi-step form with state management
DECLARE @Step INT;
DECLARE @Name NVARCHAR(MAX);
DECLARE @Email NVARCHAR(MAX);
DECLARE @NextButton NVARCHAR(MAX);
DECLARE @BackButton NVARCHAR(MAX);
DECLARE @JsonValues NVARCHAR(MAX);

-- Synchronize with modal state
EXEC sp_api_modal_get_value @name=N'@Step', @value=@Step OUT;
EXEC sp_api_modal_get_value @name=N'@Name', @value=@Name OUT;
EXEC sp_api_modal_get_value @name=N'@Email', @value=@Email OUT;

-- Initialize step if needed
IF @Step IS NULL SET @Step = 1;

-- Step 1: Name Input
IF @Step = 1
BEGIN
   EXEC sp_api_modal_text @text=N'Step 1: Enter Your Name';
   EXEC sp_api_modal_input @name=N'@Name', @value=@Name OUT;
   EXEC sp_api_modal_button @name=N'@NextButton', 
      @value=N'Next', @valueout=@NextButton OUT;

   IF @NextButton IS NOT NULL
   BEGIN
      -- Create JSON state for next step
      SET @JsonValues = (
         SELECT [@Step]=2, [@Name]=@Name 
         FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
      );
      
      -- Move to next step with state preservation
      EXEC sp_api_modal_restart @values=@JsonValues;
      RETURN;
   END
END

-- Step 2: Email Input
IF @Step = 2
BEGIN
   EXEC sp_api_modal_text @text=N'Step 2: Enter Email';
   EXEC sp_api_modal_text @text=CONCAT(N'Name: ', @Name);
   EXEC sp_api_modal_input @name=N'@Email', @value=@Email OUT;
   
   -- Navigation buttons
   EXEC sp_api_modal_button @name=N'@BackButton', 
      @value=N'Back', @valueout=@BackButton OUT;
   EXEC sp_api_modal_button @name=N'@NextButton', 
      @value=N'Submit', @valueout=@NextButton OUT;
   
   -- Process navigation
   IF @BackButton IS NOT NULL
   BEGIN
      SET @JsonValues = (
         SELECT [@Step]=1, [@Name]=@Name 
         FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
      );
      EXEC sp_api_modal_restart @values=@JsonValues;
      RETURN;
   END
END
Step 2: Enter Email

Name: John Smith

State management in TSQL.APP uses JSON to preserve variables between steps, creating seamless multi-step workflows with full context preservation.

Document Management with File Upload

This example creates a document upload interface with categorization and previews:

-- Document upload with preview
DECLARE @FileDescription NVARCHAR(MAX);
DECLARE @Category NVARCHAR(128);
DECLARE @ApiFilesId INT;
DECLARE @FileUrl NVARCHAR(4000);
DECLARE @UploadButton NVARCHAR(MAX);
DECLARE @Message NVARCHAR(MAX);
DECLARE @ToFileContext NVARCHAR(128);
DECLARE @ToFileContextId INT;

-- Get values from modal
EXEC sp_api_modal_get_value @name=N'@FileDescription', @value=@FileDescription OUT;
EXEC sp_api_modal_get_value @name=N'@Category', @value=@Category OUT;
EXEC sp_api_modal_get_value @name=N'@UploadButton', @value=@UploadButton OUT;

-- Set context for file storage
SET @ToFileContext = N'projects';
SET @ToFileContextId = 42; -- Project ID

EXEC sp_api_modal_text @text=N'Upload Project Document', @class=N'h3';

-- File category dropdown
EXEC sp_api_modal_select
   @name = N'@Category',
   @value = @Category OUT,
   @card_name = N'document_categories',
   @placeholder = N'Select Category';
   
-- Description field
EXEC sp_api_modal_input
   @name = N'@FileDescription',
   @value = @FileDescription OUT,
   @placeholder = N'Document Description';
   
-- File upload control
EXEC sp_api_modal_file
   @name = N'@FileUpload',
   @to_file_context = @ToFileContext,
   @to_file_context_id = @ToFileContextId,
   @description = @FileDescription,
   @api_files_id = @ApiFilesId OUT,
   @url = @FileUrl OUT,
   @category = @Category;
Upload Project Document
Maximum file size: 10MB

Real-World Applications

TSQL.APP is designed for a wide range of business applications, particularly those requiring database-centric functionality. Here are some common use cases:

Enterprise Resource Planning

Build complete ERP systems with inventory management, order processing, and financial modules—all using your existing SQL expertise.

Warehouse Management System (WMSx)

Our WMSx solution built entirely with T-SQL offers complete warehouse management with inbound receiving, storage optimization, and micro-outbound picking. The system's dynamic SQL architecture enables real-time barcode scanning interfaces, custom picking workflows, and seamless inventory tracking—all without traditional application development.

View Case Study

Customer Relationship Management

Create CRM applications with contact management, sales pipelines, and activity tracking that integrate directly with your database.

Document Management

Build document management systems with versioning, tagging, and workflow approval processes using TSQL.APP's built-in file handling.

Inventory Management

Create warehouse management applications with stock tracking, reordering, and barcode integration—leveraging your database directly.

Project Management

Build project management tools with task tracking, resource allocation, and timeline visualization using SQL-driven business logic.

Reporting & Analytics

Create dynamic reports and dashboards with export options, scheduled delivery, and interactive visualizations of your database data.

Technical Advantages

Minimal Infrastructure
  • Runs on SQL Server Express
  • Small server footprint
  • Easy deployment
  • Low maintenance
Performance
  • Direct database operations
  • Optimized data access
  • Built-in caching
  • Efficient state management
Security
  • Database-level security
  • Role-based access
  • Audit logging
  • Encrypted communications
Scalability
  • Horizontal scaling
  • Load balancing support
  • Multi-tenant capable
  • Enterprise-grade performance

What Our Customers Say

JD
John Doe

Database Administrator, Acme Corp

"As a DBA, TSQL.APP has been a game-changer. I can finally build complete applications without learning a dozen different frameworks. Our development time has been cut by 70%."

JS
Jane Smith

CTO, Global Industries

"Our team was able to modernize a legacy application without changing our database structure. TSQL.APP allowed us to add a modern web UI while preserving our SQL Server investment."

RJ
Robert Johnson

IT Director, Tech Solutions

"The SQL-first approach perfectly matched our team's expertise. We've built 3 mission-critical applications in under 6 months—something that would have taken years with traditional development."

Technical Resources

Explore our comprehensive documentation and guides to master TSQL.APP development

Additional Resources

All our technical documentation is regularly updated to reflect the latest features and best practices.

Need personalized help? Contact our technical support team for assistance with your specific use case.

Contact Support

Pricing Plans

Choose the plan that fits your organization's needs

Developer

$499/month

For individual developers and small projects

  • 1 developer license
  • 5 application users
  • 2 applications
  • Core features
  • Email support
  • Advanced reporting
  • Custom branding
  • White labeling
Get Started

Business

$1,999/month

For growing businesses and departments

  • 5 developer licenses
  • 25 application users
  • 10 applications
  • All core features
  • Advanced reporting
  • Priority support
  • Custom branding
  • White labeling
Get Started

Enterprise

Custom

For large organizations with specific needs

  • Unlimited developer licenses
  • Unlimited application users
  • Unlimited applications
  • All features included
  • 24/7 premium support
  • Custom integrations
  • White labeling
  • Dedicated account manager
Contact Sales

Ready to Transform Your Database into a Complete Application?

Join the SQL-first revolution and build enterprise-grade applications in days, not months

Frequently Asked Questions

What database systems does TSQL.APP support?

TSQL.APP is built for Microsoft SQL Server environments (2012 and newer). It works with SQL Server Express, Standard, and Enterprise editions, as well as Azure SQL Database.

Does TSQL.APP modify my existing database?

No. TSQL.APP uses a non-invasive two-database architecture where your source database remains completely untouched. All UI metadata and configurations are stored in a separate project database.

What programming skills are required?

Basic to intermediate T-SQL knowledge is all you need to build complete applications with TSQL.APP. No JavaScript, HTML, CSS, or other frontend skills are required.

Can I integrate with existing applications?

Yes, TSQL.APP provides multiple integration options including REST APIs, SQL Server Service Broker, and direct database access. It can be integrated with any system that can communicate with SQL Server.

How does licensing work?

TSQL.APP is licensed by developer seat and application user count. Developer licenses allow creating and modifying applications, while user licenses allow using the deployed applications.

Can I customize the user interface?

Yes, TSQL.APP provides extensive customization options for the UI through built-in CSS classes and component customization. You can also apply custom branding and themes to match your organization's style.

How does deployment work?

Deployment is simple and immediate. Since all application logic is stored in the database, any changes you make are instantly available to all users. No compilation or separate deployment steps are needed.

Is TSQL.APP suitable for mobile applications?

Yes, all applications built with TSQL.APP are automatically responsive and work on all devices including phones and tablets. No additional development is required for mobile support.

Get in Touch

Contact Us

Ready to Get Started?

Contact our team to schedule a personalized demo or discuss how TSQL.APP can help your organization build better applications faster.

Email Us

info@tsql.app

Call Us

+31 (0)10 744 18 13

Visit Us

ABC Westland 666 Poeldijk
2685 DH, Netherlands

Follow Us