Pyronome Help

Pyronome Help

    ›Platform

    Getting Started

    • Introduction
    • Signup & Login
    • First Project
    • Code Generation
    • Marketplace

    Platform

    • About
    • Basics
    • Overview
    • Projects
    • Organizations
    • Patterns
    • User Profile
    • Payments & Billing
    • Marketplace
    • FAQ
    • Release Notes

    Enterprise

    • Builder EE
    • FAQ

    Community

    • Contributing

    Reference

    • Glossary
    • Pattern Badges
    • Snippet Injection
    • Template Helpers

    Legal

    • User Agreement
    • Terms of Use and Privacy
    • Cookie Policy

    Projects

    This section contains projects that you are developing on the platform.

    Projects Page

    This page contains the projects you have created or are a member of. You can add new projects or view your existing projects on this page.

    Table FieldDescription
    NameThis field shows the project name, the folder where the project is located and the project name.
    Active VersionPyronome allows users to create different versions of their projects. This field refers to the version in which the user actively makes modifications to it. The active version can be changed via the "Versions" page of the project.
    EnabledThis field indicates whether the project is enabled or not. Other members cannot view disabled projects.
    Members ButtonDisplays the "Members" page, which lists other members authorized to take action on the project.
    Delete ButtonYou can use this button to delete a specific project.

    New Project Page

    This page contains the form, which you can add a new project.

    Form FieldDescription
    EnabledThis field indicates whether the project is enabled or not. Other members cannot view disabled projects.
    Create Empty ProjectWhen this field is selected, an empty project is created.
    Clone Existing ProjectYou can create a new project by cloning a project that you have already created or have permission to edit. When this field is selected, you must choose a project.
    ProjectsThis field is only displayed when the "Clone Existing Project" field is selected. This field specifies the main project that the new project will be cloned. This field lists the projects that you have previously created, or you have permission to edit.
    OrganizationThis field specifies in which namespace that the new project will be created. This field lists your user name and the organizations you have added.

    Required
    Use Existing DirectoryThis field specifies that the new project will be created into an existing directory.
    Create New DirectoryWhen this field is selected, the new project is created in the new directory.
    Main DirectoryThis field is displayed when the "Create New Directory" is selected. Specifies the main directory where the project will be created.
    Sub DirectoryThis field is displayed when the "Create New Directory" is selected. Specifies the subdirectory where the project will be created.
    SlugThis field specifies the slut of the new project.
    Please note the criteria in the General Settings Page section regarding the project name.

    Required and Unique
    NameThis field specifies the name of the new project.

    Required
    Project LogoYou can upload the project logo in this field.

    Project Page

    This page contains all the details of your project. From this page, you can manage the project model, source code, and server settings.

    Overview Page

    It is the first section displayed when you enter the project page. This page summarizes all the details regarding your project.

    SectionDescription
    Basic InfoThis table shows the basic information about the project. See "General Settings Page" for further details.
    PatternsThis section lists the patterns of the project. See "Patterns Page" for details.
    Source CodeThis section shows the generated source code of the project. See "Source Code Page" for details.
    VersionsThis section lists the project versions. For details, see "Versions Page".
    MembersThis section lists the project members. See ["Members Page"] (#members-page) for details.
    Activity LogThis section lists the updates that are performed on the project by the members.
    ServersThis section lists the project servers are listed. See "Servers Page" for details.
    RepositoriesThis section lists the project repositories. See "Repositories Page" for details.
    WebhooksThis section lists the webhooks of the project. See "Webhooks Page" for details.

    Model Page

    In this section, you can model your project based on selected patterns.

    SectionDescription
    Commit HistoryWhen you update the model, a copy of the model is saved in the local memory of your browser. Using "Commit History", you can revert a previous update.
    Validation LogDuring the model update process, a validation check is performed on whether the model satisfies the conditions of the selected patterns. Incompatible sections are marked and shown to the user. Pressing the "Validation Log" button displays the window listing all error, warning and information messages.
    Search FieldUsing this section, you can search the model fields and values. You can also enter search commands that include Regular Expression.
    Collapse AllCollapses all arrays in the model content, so you can only expand fields, you want to edit.
    Expand AllYou can click this link to expand all pre-collapsed arrays in the content.
    Edit as JSONYou can click this link to edit the model in JSON syntax.

    Variables Page

    More than one pattern can be installed on a single project. The source code generation process for these patterns is performed separately. Also, source code generation can be performed by parallel processing. In some cases, you need to define global variables that are available entire source code generation process. In this case, with the help of this section, you can define global variables.

    SectionDescription
    Commit HistoryWhen you update the variables, a copy of this update is saved in the local memory of your browser. Using "Commit History", you can revert a previous update.
    Validation LogDuring the variable update process, a validation check is performed on whether the variables satisfy the validation conditions. Incompatible sections are marked and shown to the user. Pressing the "Validation Log" button displays the window listing all error, warning and information messages.
    Search FieldUsing this section, you can search fields and values. You can also enter search commands that include Regular Expression.
    Collapse AllCollapses all arrays in the content, so you can only expand fields, you want to edit.
    Expand AllYou can click this link to expand all pre-collapsed arrays in the content.
    Edit as JSONYou can click this link to edit the variables in JSON syntax.

    Patterns Page

    The patterns in a project are enabling the source code generation. You can install multiple patterns in a single project. In this way, the patterns can easily take care of the source code generation of different parts on an application. You can change an application's backend/frontend technology by changing just the pattern(s) dealing with the backend. In the same way, you can update an application's backend/frontend framework into a new version.

    By clicking the "Install Pattern(s)" button, you can open the "Install Pattern(s)" window showing the possible pattern options that you can install to your project. With the help of this section, you can search for patterns according to your criteria and install the desired pattern(s), also purchase paid ones.

    The list of installed patterns is in the middle of the page. You can sort patterns with special sorting grips to the left of each line. Additionally, with the version selector at the right of each line in the list, you can choose a specific version and perform a source code generation process based on this selected version.

    Source Code Page

    You can view the source code of your project from this page. If you make any changes in the model or patterns, the source code generation process is started immediately after opening this page.

    You can press "Generate Now!" to manually restart the source code generation process. After you restart the source code generation process, the page reloads. The source code generation process may continue in the background. "Generating ..." is displayed at the top right of the page while the source code generation is in progress. When the source code generation process is complete, the file list is automatically updated. The source code generation process may vary depending on the size of the project and the content of the selected patterns.

    You can press the "Download (.zip)" button to download the generated source code as a single .zip file.

    You can view the source code -the list of files and directories- in the middle of the page. When you click on any directory, you can see the contents of that directory. Similarly, when you click on any file, you can view its contents if the file is text-based.

    General Settings Page

    Using this page, you can update the general information of the project.

    Form FieldDescription
    EnabledThis field indicates whether the project is enabled or not. Other members cannot view disabled projects.
    OrganizationThis field specifies in which namespace that the project will be located. This field lists your user name and the organizations you have added.

    Required
    Use Existing DirectoryThis field specifies that the project will be located into an existing directory.
    Create New DirectoryWhen this field is selected, the project is located in the new directory.
    Main DirectoryThis field is displayed when the "Create New Directory" is selected. Specifies the main directory where the project will be located.
    Sub DirectoryThis field is displayed when the "Create New Directory" is selected. Specifies the subdirectory where the project will be located.
    SlugThis field specifies the slug of the project.
    Please note the following criteria regarding the project name.

    Required and Unique
    NameThis field specifies the name of the project.

    Required and Unique
    DescriptionThis field specifies the description of the project.
    Project LogoYou can upload the project logo in this field.
    Enable Incoming WebhooksUsing this field, you can enable incoming webhooks. Incoming webhooks helps you automate your project code generation process.
    Incoming Webhook URL (Active Version)This field specifies the incoming webhook URL for the active version of this project.
    Incoming Webhook URL (Current Version)This field specifies the incoming webhook URL for the current version of this project.

    Warning:

    Please consider the followings regarding your project name:

    • It must contain only English characters.
    • It cannot contain spaces and tab characters.
    • It must be at least three characters long.
    • You can enter only the "-" and underscore "_" characters as punctuation.
    • It cannot begin with number, the middle line "-" and the underscore "_".

    Members Page

    In this section, you can determine the users who will perform the viewing, editing, and managing operations on the project.

    You can add 3 (three) different types of members to the project:

    • Owner: This user has full authority over the project. Owner users can add other users.
    • Developer: This user has permission to update the project properties, the model, and the patterns.
    • Viewer: This user can display project properties, the model, and the patterns, but cannot modify them.

    Note:

    The members you will add to the project must be registered to the platform. You can invite not registered users by specifying their e-mail address.

    Versions Page

    You can use this section to create copies of the project model with different versions. When determining project versions,

    1. Major
    2. Minor
    3. Patch

    version numbers must be specified.

    In addition, you can label pre-release versions by adding the following suffixes:

    • dev
    • alpha
    • beta

    Note:

    Pyronome recommends the Semantic Versioning approach to identifying versions. For more information on Semantic Versioning, please visit https://semver.org/.

    Servers Page

    You can use this section to specify the servers that will be installed after the source code generation process.

    In this section, you can add the following servers:

    • FTP Server
    • SFTP Server

    You can press the "Deploy Now!" button to manually upload the generated source code to the existing servers. The source code will be uploaded to the servers in the order you specify.

    Warning:

    The installation of source code to the servers is performed consecutively. In other words, the installation to the second server does not start until the installation to the first server is complete.

    You can press "New Server" button to add a new server.

    Form FieldDescription
    EnabledThis field indicates whether the server is enabled or not. Deployment is not performed on disabled servers.
    TypeThis field specifies the type of the server. Currently, you can choose FTP or SFTP server.

    Required
    NameThis field specifies the name of the server.
    Please note the following criteria regarding the server name.

    Required and Unique
    DescriptionThis field specifies the description of the server.
    HostYou can specify the server address in this field.

    Required
    UserYou can enter the authorized user name to access the server.

    Required
    PasswordYou can enter the authorized user password to access the server.

    Required
    Home FolderYou can specify the directory in which the installation will be performed after the connection is established using this field.
    PortYou can specify the port where the connection will be established.

    Required and Varsayılan Değer: 21

    Warning:

    Please consider the followings regarding your server name:

    • It must contain only English characters.
    • It cannot contain spaces and tab characters.
    • It must be at least three characters long.
    • You can enter only the "-" and underscore "_" characters as punctuation.
    • It cannot begin with number, the middle line "-" and the underscore "_".

    To view transaction logs for any server, you can press on the right-hand side of that record line.

    Once you have entered all connection parameters, you can press "TEST" to test the connection.

    Repositories Page

    You can use this section to define the repositories where the source code will automatically upload after the source code generation process.

    You can press the "Push Now!" button to manually push the generated source code into the existing repositories. The source code will be uploaded into the repositories in the order you specify.

    Warning:

    The uploading of source code to the repositories is performed consecutively. In other words, the upload process to the second repository does not start until the upload process to the first repository is complete.

    You can press the "New Repository" button to add a new repository.

    Form FieldDescription
    EnabledThis field indicates whether the repository is enabled or not. Push operation is not performed on disabled repositories.
    Repository NameThis field specifies the name of the repository.

    Required
    Branch NameThis field specifies the branch name of the repository that will hold the generated source code. If the specified branch does not exist, firstly, the branch is created, and then the source code uploaded.

    Required
    Main DirectoryIf the generated code must be loaded into a particular subdirectory within a specific branch, you can specify the name of the directory in this field.
    Delete All Files Before Adding Generated FilesWhen you check this option, the target directory contents will be deleted before the upload process. This feature makes it possible to remove related files that are renamed and deleted from the project model.
    E-mail AddressThis field specifies the e-mail address of the user who has access to the repository. In this way, you can easily distinguish which user performed the uploading process.

    Required
    User NameThis field specifies the user name of the user who has access to the repository.
    Authenticate using HTTPSThis field specifies the method of authentication. If you check this option, authentication will be performed over HTTPS.
    Authenticate using SSHThis field specifies the method of authentication. If you check this option, authentication will be performed over SSH.
    HTTPS URLThis field is displayed when you check the "Authenticate using HTTPS" option. Specifies the HTTPS address.

    Required
    HTTPS PasswordThis field is displayed when you check the "Authenticate using HTTPS" option. Specifies the password will be used to connect over HTTPS.

    Required
    SSH HostThis field is displayed when you check the "Authenticate using SSH". Specifies the SSH address.

    Required
    Generate SSH KeypairThis field is displayed when you check the "Authenticate using SSH". An SSH key pair is automatically generated each time you create a new repository over SSH authentication. You can select this option if you want to recreate the key pair for an existing repository.
    Commit MessageThis field specifies the commit message to display in the repository logs. In this field, you can enter mustache templates like {{project_slug}}, {{project_name}}, etc. You can find a complete list of these mustache templates below.

    Required

    To view upload process logs for any repository, you can press the icon to the right of the corresponding record row.

    Commit Message Mustache Templates

    Commit messages contains brief information about a particular commit performed on a repository. Pyronome provides a practical way of uploading generated source code to your repositories. But, it is still essential to have descriptive commit messages. You can add some special identifiers to make your commit messages more descriptive.

    Default commit message:

    Code generation auto-push by Pyronome
    

    Commit message with mustache templates:

    Code generation auto-push by Pyronome for {{project_name}} ({{project_slug}}, {{project_active_version}}).
    

    Below is a list of specific identifiers that can be used in the commit messages:

    IdentifierDescription
    {{current_date}}This identifier holds the current date, based on user timezone. E.g. 20200516
    {{current_datetime}}This identifier holds the current date and time, based on user timezone. E.g. 20200516235959
    {{current_datetime_formatted}}This identifier holds the formatted current date and time, based on user language settings. E.g. 16.05.2020 23:59
    {{current_day}}This identifier holds the current day as integer, based on user timezone. E.g. 16
    {{current_hour}}This identifier holds the current hour as integer, based on user timezone. E.g. 23
    {{current_minute}}This identifier holds the current minute as integer, based on user timezone. E.g. 59
    {{current_month}}This identifier holds the current month as integer, based on user timezone. E.g. 05
    {{current_time}}This identifier holds the current time, based on user timezone. E.g. 235959
    {{current_year}}This identifier holds the current year as 4-digit integer, based on user timezone. E.g. 2020
    {{project_active_version}}This identifier holds the active version of the project.
    {{project_guid}}This identifier holds the global unique id of the project. This identifier, unlike {{project_id}}, is unique to each element within the platform.
    {{project_id}}This identifier holds the unique integer id of the project.
    {{project_main_directory}}This identifier holds the main directory of the project.
    {{project_slug}}This identifier holds the slug of the project.
    {{project_path}}This identifier holds the namespace of the project.
    {{project_short_description}}This identifier holds the short description of the project.
    {{project_sub_directory}}This identifier holds the subdirectory of the project.
    {{project_name}}This identifier holds the name of the project.
    {{server_host}}This identifier holds the address of the server where the repository is located.
    {{server_name}}This identifier holds the name of the server where the repository is located.
    {{user_full_name}}This identifier holds the full name of the user.
    {{user_guid}}This identifier holds the global unique id of the user.
    {{user_id}}This identifier holds the unique integer id of the user.
    {{user_name}}This identifier holds the name of the user.

    Webhooks Page

    You can automate your software development processes by creating webhooks attached to the source code generation, server deployment, and repository push events.

    Warning:

    The webhook requests are posted consecutively. In other words, the second webhook request does not post until the first webhook request is posted.

    You can press "New Webhook" button to add a new webhook.

    Form FieldDescription
    EnabledThis field indicates whether the webhook is enabled or not. The request is not posted to disabled webhooks.
    NameThis field specifies the name of the webhook.

    Required
    URLThis field specifies the URL address of the request.

    Required
    Secret KeyYou can specify a secret key to verify that a specific web request is posted from Pyronome servers.
    On Generate EventIf you check this option, the web request is posted after the code generation process.
    On Deploy EventIf you check this option, the web request is posted after the deploy process.
    On Push EventIf you check this option, the web request is posted after the push process.

    To view the logs for any webhook, you can press icon to the right of the corresponding record row.

    Below is a sample webhook request.

    {
        "event": {
            "guid": "E0X0A0M0L0E0G0U0I0D",
            "name": "Example1",
            "type": 1
        },
        "server": {
            "host":"www.pyronome.com",
            "name":"platform"
        },
        "webhook": {
            "id": 1,
            "guid": "E0X0A0M0L0E0W0B0H0O0O0K",
            "index": "1",
            "name": "ExampleWebhook1",
            "url": "https://example.com",
            "secret_token": "YOUR_SECRET_TOKEN",
            "on_generate": 1,
            "on_deploy": 0,
            "on_push": 0
        },
        "project": {
            "id": 1,
            "guid": "E0X0A0M0L0E0P0R0J0E0C0T",
            "slug": "exampleproject1",
            "name": "Example Project 1",
            "short_description": "Project Short Description",
            "active_version": "1.0.0",
            "path": "exampleuser/exampleproject1",
            "main_directory": "",
            "sub_directory": ""
        },
        "user": {
            "id": 1,
            "guid": "E0X0A0M0L0E0U0S0E0R",
            "user_name": "exampleuser",
            "full_name": "Example User"
        }
    }
    
    ← OverviewOrganizations →
    • Projects Page
    • New Project Page
    • Project Page
      • Overview Page
      • Model Page
      • Variables Page
      • Patterns Page
      • Source Code Page
      • General Settings Page
      • Members Page
      • Versions Page
      • Servers Page
      • Repositories Page
      • Webhooks Page
    • Help
    • Docs
    • EN
    • Home
    • Help
    • Docs
    • EN
    Pyronome. Software factory in the Cloud.

    Pyronome is an online platform that allows software developers to develop sustainable and scalable software solutions really fast.

    • Explore
    • Platform
    • Build with Pyronome
    • Community
    • Marketplace
    • Investor Relations
    • Pricing
    • Contact
    • Help & Support
    • Docs
    • Reference
    • System Status
    • Contact Support
    • Legal
    • User Agreement
    • Terms of Use
    • Privacy Policy
    • Follow
    • Twitter
    • YouTube
    • GitHub
    • LinkedIn
    • Medium
    • Instagram
    • Facebook
    Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution 4.0 International license.
    Pyronome