The Toolbox

SilkBuilder is a collection of open-source tools seamlessly integrated to provide a cohesive development experience. The framework's objective is to allow the developer to focus on the user's operations and goals, leaving the framework to handle repetitive tasks and environment configurations.

SilkBuilder is not a programming language that can be tested with a "Hello World!" first program. It is an enterprise tool that requires proper placement on an application server and access to a database. Once in place, development speeds up.

What SilkBuilder offers

Online IDE

SilkBuilder provides an online Integrated development environment (IDE) that covers multiple development needs. The IDE supports the remote development of various systems by multiple users; there is no need to install extra tools.

Transparent DB Interaction

Our custom-built Object Relation Mapping (ORM) uses SQL commands and operations rather than creating complex Object structures. The framework shortens the distance between the database's Table and the user list or form.

Custom Tags

Our provided custom tags are designed to enhance development speed and productivity by minimizing the amount of coding required. These tags act as shortcuts, allowing developers to effortlessly generate complex operations and transactions involving data.

Learn more…

Access Security

SilkBuilder is periodically checked to ensure alignment with the OWASP Foundation's security recommendations. The framework includes data access protection, role management, and component and code restrictions at the server level.

System Requirements

SilkBuilder is designed to seamlessly work with open-source servers, though not exclusively.

  • Hosting server. This server will host the SilkBuilder or SilkClient libraries and resources. We recommend using Linux; any distribution should suffice. However, a Windows or macOS server will also be compatible. The performance will depend on your hardware specifications, based on your needs and demands.

  • OpenJDK 17+ - Java is a multi-platform, object-oriented, and network-centric language that can be used as a platform in itself. It is a fast, secure, reliable programming language for coding everything from mobile apps and enterprise software to big data applications and server-side technologies. Java is used to develop the core internal operation of the SilkBuilder framework.

  • Apache Tomcat 10+ - A very popular open-source application server. It provides a Java-based environment for running web applications built with technologies like Java Servlets, JavaServer Pages (JSP), and others.

  • A database access. SilkBuilder supports the most common and popular databases, including MySQL, PostgreSQL, Microsoft SQL Server, and Oracle. If necessary, other databases could be included in the supported list.

It is recommended to run Tomcat behind an HTTPS server such as Apache2, which should handle public access and SSL configurations.

Open-Source Technology

This list includes the open-source Java/JavaScript libraries and resources utilized by SilkBuilder. Some are used for compiling the SilkBuilder classes, some are dependencies, and others are included to assist developers. All these resources were chosen because they have licenses that allow free use and distribution without restrictions on the code using them. This is intended to safeguard the privacy and ownership of the developer’s code.

  • Apache Commons - A collection of reusable Java libraries under the Apache Software Foundation that provide utilities for common programming tasks. (Apache 2 License)

  • Apache HttpComponents - The Apache HttpComponents project is responsible for creating and maintaining a toolkit of low-level Java components focused on HTTP and associated protocols. (Apache 2 License)

  • ASM - ASM is an all-purpose Java bytecode manipulation and analysis framework. It can be used to modify existing classes or to dynamically generate classes, directly in binary form. (BSD V3 License)

  • Bootstrap - Powerful, extensible, and feature-packed frontend toolkit. Build and customize with Sass, utilize prebuilt grid system and components, and bring projects to life with powerful JavaScript plugins. The SilkBuilder components are built based on Bootstrap specifications and classes for easy theme building. (MIT License)

  • ChartJS - Chart.js is an open-source JavaScript library for creating animated, responsive, and customizable charts and graphs on websites using the HTML5 <canvas> element. (MIT License)

  • CK Editor V3 - HTML WYSIWYG editor with countless features and wide browser compatibility. Although this is an older version, it still functions effectively and allows for free distribution version. (Mozilla Public License V1)

  • CodeMirror - CodeMirror is a code editor component for the web. It can be used in websites to implement a text input field with support for many editing features, and has a rich programming interface to allow further extension. SilkBuilder uses CodeMirror as its application code editor. (MIT License)

  • Commonmark Java - Java library for parsing and rendering Markdown text according to the CommonMark specification. (BSD V2 License)

  • Font Awesome - Font Awesome is the Internet's icon library and toolkit, used by millions of designers, developers, and content creators. SilkBuilder comes loaded with Font Awesome, and the components utilize Font Awesome icons as part of their configuration. (Font Awesome Free License)

  • Jasypt - Jasypt is a Java library for encrypting and decrypting sensitive data with minimal effort, simplifying the process for developers without needing deep cryptography knowledge. (Apache 2 License)

  • JavaMail API - The JavaMail API provides a platform-independent and protocol-independent framework to build mail and messaging applications. (Oracle CDDL License)

  • Jayway JsonPath - JSONPath is a query language for JSON data, analogous to XPath for XML. It provides a standardized way to navigate through and extract specific elements or sets of elements from a JSON document. (Apache 2 License)

  • JQuery - jQuery is a fast, small, and feature-rich JavaScript library. It simplifies things like HTML document traversal and manipulation, event handling, animation, and Ajax with an easy-to-use API that works across many browsers. SilkBuilder uses JQuery to interact with HTML elements and execute Ajax calls. (MIT License)

  • Json Simple - JSON.simple is a lightweight Java toolkit designed for encoding and decoding JSON (JavaScript Object Notation) text. It provides a straightforward way to work with JSON data within Java applications. (Apache 2 License)

  • Json Smart. Json-smart is a high-performance JSON (JavaScript Object Notation) processor library for Java. It is designed to be a fast and efficient alternative to other JSON parsing libraries, particularly known for its speed compared to libraries like json-simple. (Apache 2 License)

  • jsoup - jsoup is a Java library for working with real-world HTML. It provides a very convenient API for extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors. (MIT License)

  • LangTags - The purpose of langtags is to provide some simple mechanisms by which language tags can be parsed and validated. (GPL-3.0 License )

  • Spring Framework -The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any deployment platform. SilkBuilder uses Spring Framework for database communication and MVC controllers to interact with JSP views. (Apache 2 License, Version 2.0)

  • SweetAlert2 - Provides a beautiful, responsive, customizable, and accessible replacement for Javascript's popup boxes. SilkBuilder utilizes SweetAlert2 to display dialog boxes, which can be directly configured in SilkBuilder components. (MIT License)

Be agile

“If you want to be fast and agile keep things simple. Speed isn't the result of simplicity, but simplicity enables speed.”

— Jim Highsmith