Build, Secure, and Deploy Your Data App

How to Create a Data App in Keboola

Discover a step-by-step process to create, secure, and deploy your first data app in Keboola—no prior experience required. Start building custom data applications today.
Try Keboola Now
Arrow right
Laptop displaying Keboola data platform dashboard showing usage metrics and welcome screen

Step-by-Step Guide: Building Your First Data App in Keboola

Introduction to Keboola Data Apps

Keboola enables users to create powerful data applications with ease, allowing business teams and developers to harness, visualize, and act upon data. This guide provides a detailed, step-by-step walkthrough for building your first data app in Keboola, covering setup, authentication, code deployment, customization, and security best practices. Whether you are building a simple dashboard or a complex data-processing tool, Keboola’s platform offers the tools you need to succeed.

1. Navigating to Data Apps in Keboola

  1. Access Keboola Components: Begin by logging into your Keboola workspace. From the dashboard, navigate to the Components section and select Data Apps.
  2. Create a New Data App: Click on Create Data App. You will be prompted to give your data app a name. For example, name it My First Data App. This name will help you identify your app and will also be used in the default URL prefix for your application.

2. Configuring Authentication

Authentication is crucial for controlling who can access your data app. Keboola offers three main options:

  • None: Your application is publicly accessible from the internet. Best for demos and non-sensitive apps.
  • Basic: Users must enter a username and password to access the app. Recommended for most use cases to protect sensitive data.
  • OIDC (OpenID Connect): Integrate with your organization’s Identity Provider (e.g., Entra, Okta, Gmail, or custom providers). Ideal for enterprise-grade security and SSO compatibility.

For this example, select Basic authentication and save your settings. This ensures that only users with valid credentials can access your application.

3. Customizing App Settings

  1. URL Prefix: The default URL prefix is derived from your app’s name. You can customize it, for example to best-app-ever, for branding or clarity.
  2. Save Your Configuration: After making changes, click Save to preserve your settings.

4. Deploying Your Data App Code

Keboola supports multiple deployment options depending on your app’s complexity:

  • Git Repository: For advanced or collaborative projects, you can deploy code from a private or public Git repository. This is ideal for version control and team-based development.
  • Direct Code Input: For quick prototyping or simple apps, you can add code directly within Keboola’s editor. This approach is used in our example below.

5. Writing Your First Data App with Streamlit

Streamlit is included by default, providing a simple yet powerful way to build interactive data applications. Here’s a basic example:

import streamlit as st st.title('My First Data App') if st.button('Click me'): st.success('Wow, it is working!')
  • Import Streamlit: import streamlit as st
  • Add Title: st.title('My First Data App')
  • Add Interactive Button: st.button('Click me')
  • Add Success Message on Click: When the button is clicked, show a success box: st.success('Wow, it is working!')

Save your code and close the editor. No need to install Streamlit, as it is included in the default packages.

6. Installing Additional Python Packages

If your application requires extra Python libraries, Keboola allows you to install them via the package manager. However, for basic Streamlit apps, the default environment is sufficient.

7. Customizing the Color Palette

  • Predefined Palettes: Keboola offers several predefined color schemes to match your brand or enhance user experience. For example, select the KCA1 palette for a modern look.
  • Personalization: Customize further if desired by adjusting colors, fonts, and layout options within the platform.

8. Managing Secrets and Sensitive Data

Handling API tokens, passwords, or other sensitive configuration variables is made secure and easy:

  • Add Secrets: Use the Secrets section to enter sensitive data.
  • Enable Encryption: Toggle encryption to protect values. Encrypted secrets are never readable to anyone, including administrators.
  • Reference in Code: Access secrets in your application code, keeping sensitive data outside your codebase.

Example: If your app needs an API token, store it as a secret. The encrypted value keeps your data secure, while your app can access it during runtime.

9. Mapping Table and File Inputs

Integrate data from Keboola Storage by mapping tables or files as inputs:

  • Table Input Mapping: Attach tabular data from your Keboola projects for real-time analytics or processing.
  • File Input Mapping: Upload or select files for your app to use.

This enables your data app to leverage the full power of your existing data pipelines and storage assets.

10. Deploying Your Data App

  1. Choose Backend Size: Select from a range of backend sizes (Extra Small to Large) based on your app’s resource needs. For simple apps, Extra Small is usually sufficient.
  2. Configure Sleep Timeout: Set an auto-suspend timeout from 1 hour to 24 hours. If the app is inactive for the specified period, it is suspended to save costs. Suspended apps do not consume credits.
  3. Deploy: Click Deploy Data App. Within seconds, your app is live and accessible from its unique URL.

11. Accessing and Testing Your Data App

  • Login: Use the provided username and password if you enabled authentication.
  • Interact: Test your app by clicking buttons and interacting with features. For example, clicking the button in our example shows a success message—Wow, it is working!

12. Advanced Features and Best Practices

  • Version Control: Use Git integration for collaborative development, code reviews, and rollback capabilities.
  • Monitoring and Logging: Leverage Keboola’s monitoring tools to track usage, app performance, and error logs.
  • Scaling: Upgrade backend size as your app’s user base or computational needs grow.
  • Security: Always use authentication for production apps, encrypt all secrets, and follow your organization’s security policies.
  • Maintenance: Regularly update dependencies and review app configuration for optimal performance and security.

13. Example Use Cases

  • Sales Dashboards: Build interactive dashboards that visualize sales data for your team.
  • Data Transformation Tools: Create apps that let users clean, transform, or enrich data before it enters your pipeline.
  • Custom Reporting: Deliver tailored reports to different stakeholders, accessible only to authorized users.
  • API Integration Apps: Connect to external APIs, process their data, and visualize results in real time.

14. Troubleshooting and Support

  • Documentation: Refer to Keboola’s comprehensive documentation for detailed instructions, FAQs, and best practices.
  • Community: Join the Keboola community forums to ask questions, share tips, and learn from other users.
  • Contact Support: Reach out to Keboola support for personalized help or advanced troubleshooting.

15. Next Steps: Build Your First Data App

With Keboola, creating data apps is accessible, secure, and scalable. Every step, from authentication to deployment, is designed to streamline your workflow and safeguard your data. Try building your first data app today to unlock powerful insights and drive business success.

Frequently Asked Questions

  • Q: Can I integrate my own authentication system?
  • A: Yes! With OIDC, you can connect to any identity provider supporting the protocol, including Entra, Okta, Gmail, and others.
  • Q: How do I manage sensitive data in my app?
  • A: Use the Secrets feature with encryption to securely store and manage tokens, passwords, and configuration variables.
  • Q: What languages or frameworks can I use?
  • A: Python (with Streamlit by default) is supported, but advanced setups can leverage additional libraries as needed.
  • Q: Is it possible to collaborate with other developers?
  • A: Absolutely! Use the Git repository integration for team collaboration and version control.

Conclusion

Building data apps in Keboola empowers you to transform raw data into actionable insights with minimal setup and maximum flexibility. Secure, customizable, and easy to deploy—start building your next data-driven solution today.

Category:
No items found.

Watch Related Video

Testimonials

No items found.
Unlock the value of your data