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.
-- 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
Leverage your SQL expertise to build complete applications
Build complete applications in days, not months. Automatic CRUD operations, UI generation, and business logic implementation.
Use T-SQL as the primary programming language. No need to learn multiple languages or frameworks.
Built-in security, role-based access control, audit trailing, and multi-language support for business-critical applications.
Build entire applications using T-SQL as the primary programming language. No separate frontend/backend codebases needed.
Automatically generate forms, lists, and detail views from your database structure. Customize with T-SQL stored procedures.
Create PDF, Excel, and HTML reports directly from your data. Built-in formatting, styling, and export options.
Integrated VS Code editor, debugger, table builders, and more. The complete toolset for SQL-first development.
Role-based permissions, data encryption, and comprehensive audit logging. Enterprise-grade security built-in.
All applications are automatically mobile-responsive with modern UI components powered by Bootstrap.
TSQL.APP uses a non-invasive approach that preserves your existing database investments:
Design your data model or use existing database objects
Set up UI views for your tables and customize fields
Implement business logic using T-SQL procedures
Changes are immediately available to all users
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
See how TSQL.APP solves real-world business challenges with SQL-first development
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';
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 |
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
Name: John Smith
State management in TSQL.APP uses JSON to preserve variables between steps, creating seamless multi-step workflows with full context preservation.
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;
TSQL.APP is designed for a wide range of business applications, particularly those requiring database-centric functionality. Here are some common use cases:
Build complete ERP systems with inventory management, order processing, and financial modules—all using your existing SQL expertise.
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 StudyCreate CRM applications with contact management, sales pipelines, and activity tracking that integrate directly with your database.
Build document management systems with versioning, tagging, and workflow approval processes using TSQL.APP's built-in file handling.
Create warehouse management applications with stock tracking, reordering, and barcode integration—leveraging your database directly.
Build project management tools with task tracking, resource allocation, and timeline visualization using SQL-driven business logic.
Create dynamic reports and dashboards with export options, scheduled delivery, and interactive visualizations of your database data.
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%."
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."
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."
Explore our comprehensive documentation and guides to master TSQL.APP development
Need personalized help? Contact our technical support team for assistance with your specific use case.
Contact SupportChoose the plan that fits your organization's needs
For individual developers and small projects
For growing businesses and departments
For large organizations with specific needs
Join the SQL-first revolution and build enterprise-grade applications in days, not months
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.
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.
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.
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.
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.
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.
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.
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.
Contact our team to schedule a personalized demo or discuss how TSQL.APP can help your organization build better applications faster.
info@tsql.app
+31 (0)10 744 18 13
ABC Westland 666 Poeldijk
2685 DH, Netherlands