Skyve
Skyve is an open-source low-code platform that gives you access to all of the key capabilities needed to build sophisticated, robust and scalable cloud solutions.
Install / Use
/learn @skyvers/SkyveREADME
[![Logo][skyve-logo]][skyve-url]
Welcome to Skyve!
This repository is the Java implementation of the Skyve framework specification.
Contents
- What is Skyve
- Contributing
- Getting Started
- Creating a new Skyve project
- Quick start
- Skyve Maven commands
- Updating Skyve version
- Updating Skyve JavaScript
What is Skyve?
Skyve is an open-source low-code platform that gives you access to all of the key capabilities needed to build sophisticated, robust and scalable cloud solutions.
Skyve is platform/operating-system independent, works with all common database types, and is accessible through all common browsers and devices.
By incorporating and integrating a range of other open-source technologies to handle persistence, rich UI, security, navigation, reporting, jobs, content, spatial, mobile integration; Skyve provides a platform with all the technology specific areas required to support the Skyve standard for enterprise applications.
Skyve also provides sophisticated validation and a high-level API so that you can build powerful enterprise SaaS solutions.
At any time, branch out into "traditional" development without restriction, but will all the benefits of the API and integrated platform.
Skyve supports spatial concepts natively with MySQL (and MariaDB), SQL Server, Postgres and H2 - Oracle is in beta. Otherwise, pretty much anything supported by Hibernate should work (but we haven't tested them all!).
For more details on the framework and its capabilities, please check out the platform homepage - www.skyve.org.
Skyve is created by Biz Hub Australia and we offer a range of support agreements if required. Or use it for free, no obligation.
Contributing
We welcome new contributions to the project, however small. Please refer to our contribution guidelines for information about contributing to Skyve.
Questions
If you've found a bug or want to request a new feature, please create a GitHub Issue.
If you need help getting started with or extending Skyve, please reach out on Slack. Someone from the community or a Skyve developer will be happy to assist. Or use the skyve tag on StackOverflow and ask for help there.
Getting Started
The Skyve platform website which hosts training videos, links to a comprehensive development guide, Skyve tutorial as well as a cookbook.
Skyve Tutorial
This tutorial walks through building a sample application using Foundry and no-code, setting up your development environment and building upon it with low-code, and finally some more advanced logic with code.
User Guide
The user guide is available at https://skyvers.github.io/skyve-user-guide/. The user guide is for end users of Skyve applications and describes how to navigate around the user interface and make use of the built in functions that ship with Skyve.
Development Guide
The development guide is available at github.com/skyvers/skyve-dev-guide. This contains detailed documentation covering the architecture and guiding principles of the framework, as well as explaining all the features and how to get started.
Skyve Cookbook
The Skyve Cookbook is available at github.com/skyvers/skyve-cookbook. This contains code samples of advanced usage such as REST API configuration and troubleshooting advice.
Architecure Document
This document is a work in progress and can be found here
Creating a new Skyve project
We recommend starting your Skyve experience with Skyve Foundry - https://foundry.skyve.org/foundry.
Skyve Foundry provides a point and click project creator: you can quickly declare the data model for your project, deploy and test your project using Skyve Foundry's Free Trial server.
Once your foundry project is created, you can use the collaboration feature to connect Skyve Foundry to a secure git code repository, then continue making changes using both Skyve Foundry, or in your own preferred Integrated Development Environment (IDE) (Eclipse, IntelliJ etc) on your local development infrastructure.
Using Skyve Foundry to create your project will not prevent you deploying the application you create to your own infrastructure if preferred, but it will enable you to quicky deploy and test your application. You can also export your project at any time.
Overview
- Create your project with Skyve Foundry, or by using the Skyve project creator. a. for Skyve Foundry - create a new git repository project (via github or gitlab etc) and set the in repository URL on the collaboration tab in Skyve Foundry, then push your project to the repository (video steps are available at https://youtu.be/G3OQu5PeUn8) b. for the project creator, create a new Skyve project download and receive the link to the file via email (video steps are available at https://youtu.be/DkdJ7ROYoxc)
- Import the project as a maven project and run the Generate Domain run configuration.
- Configure your application instance properties
.jsonfile and data source-ds.xmlfiles and place them into the Wildfly deployment folder. In the.jsonsettings file, you will need to (at a minimum) specify the location for Skyve to store 'content' and specify an environment identifier string to be able to get it with a bootstrap credential (also specified in the.jsonfile) - Sign into your application at
localhost:8080/<projectName>with your bootstrap credentials and begin using the no-code application.
Detailed Instructions
Before you start
These instructions assume the use of Eclipse with the JBoss Server Tools plugin installed, and Wildfly as the application server.
- Install a Java 11+ JDK for your operating system.
- Install Eclipse or an alternative Java based Integrated Development Environment.
- Install JBoss Wildfly - Our instructions are for Wildfly 20+ - you may be able to use older versions and other application servers if you're familiar with configuration.
Creating your project using Skyve Foundry
- Go to https://foundry.skyve.org/foundry and register for an account
- Sign in with your account
- On the Describe tab, enter a name and description for your application
- On the Design tab, create documents and attributes
- On the Customise tab, upload your logo and icons and select from available themes
- On the Deploy tab, enter a password for a setup user account, then deploy your application
- On the Collaboration tab, enter the URL for your git code repository and push your project to the repository. You can then pull your project to your local development environment. Video instructions are available using the "How to get started" icon in the title bar of Skyve Foundry
Creating your project using the Skyve project creatorr
- Go to https://foundry.skyve.org/foundry/project.xhtml
- Enter a valid email address
- Enter project name
- Enter a customer name (should be a single string like myOrganisationName, or set it to skyve if unsure)
- Customer is a core concept for Skyve applications to support multi-tenant SaaS applications. Because Skyve is intended and designed for multi-tenancy, data is assumed to exist within a customer (i.e. tenant) context. To understand more about the Customer concept and multi-tenant applications, see https://github.com/skyvers/skyve-dev-guide#multi-tenant--mass-customisation).
- Choose your preferred database type (and dialect)
- H2 is a file based database perfect for quick prototyping or getting started if you're not sure
- Other dialects will require installation of the respective database engine or access to a network DB server of that type.
- If you have a Skyve Script file, supply it here. Skyve Script is a simple markup standard for declaring domain models and is sufficient for creating Skyve no-code applications.
- Press the Create Project button
Import the project
- After a few seconds, an email will be sent to the nominated email address with a link to download the project artefacts as a single zip file. Click the link to download the file.
- Once the file has downloaded, unzip the contents to your development workspace location.
- In Eclipse, choose File -> Import and choose Existing Maven Projects and follow the wizard selecting the directory you unzipped from the email.
- To build your project and prepare it to run, from the Run menu choose Run Configurations. Under Maven Build, choose the Generate Domain run configuration for your project name. For your project to run, Skyve must generate required domain classes and maven will ensure that all related open-source components are included.
- Once domain generation is completed, your application is ready to deploy.
Configure the application server and database
- To configure Wildfly to deploy your application:
- Copy the project configuration files to
wildfly/standalone/deployments/- The project root contains a da
- Copy the project configuration files to
Related Skills
node-connect
341.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.4kCommit, push, and open a PR
