This series of tutorials provides a step-by-step guide to creating a package in Dawiso. A package is a JSON configuration file that defines and customizes various aspects of your Dawiso environment. Whether you are configuring a single application, creating or updating shared assets across your environment, packages are an essential tool for tailoring Dawiso to your specific needs.
To begin, you will need a JSON-compatible editor, such as the Dawiso built-in editor, which incorporates Microsoft Visual Studio Code, or use VS Code directly. To access the Dawiso editor:
- Ensure you have an admin role in Dawiso.
- Navigate to Settings > Resources > Packages.
- Click + New Package to create a new package, or select an existing package and create an editable version.
- For the best experience, include the following line at the very beginning of your package file. This line connects your package to the Dawiso schema, enabling features like helpful tooltips, property suggestions, and error-checking as you work.
{
"$schema": "https://schema.dawiso.com/package-schema.json"
}
Including this schema reference ensures your package adheres to Dawiso’s structure and prevents potential issues during implementation.
| Tutorials Category | Articles |
|---|---|
| Writing an Application Package | A series of tutorials on how to plan and create your own application in Dawiso, divided into two main sections: conceptual planning and development. |
| Writing a Data Ingestion Application Package | A series of tutorials on how to create your own data ingestion application in Dawiso. |
| Advanced Configuration | Step-by-step guides for more advanced configuration in Dawiso. |
Packages and Applications: Understanding the difference
Although every application is a package, not every package configures an application. A package is a flexible configuration tool that can serve a variety of purposes beyond creating applications.
In general, a package can configure:
- Applications: Define the structure, object types, and behavior of a specific app.
- Settings: Create standalone packages for managing global or environment-wide settings.
- Cross-application components: Develop components that are used in multiple applications for consistency and centralization.
- Patches: Apply updates or changes to existing packages or core functionality without making changes in the original packages.
Separating configurations into distinct packages improves resource management by enabling:
- Simplified Maintenance: A clear structure and organization of packages make it easier to manage your system.
- Clear Modularity: Grouping cross-application functionalities of the same type into a single package ensures consistency and simplifies maintenance and referencing.
- Targeted Updates: Changes made in one package are implemented throughout the system without negatively affecting unrelated configurations.
Packages can depend on other packages, such as by reusing components or other assets. However, cyclic dependencies are not allowed. This means a package cannot reference another package that ultimately depends on it, creating a loop.