Skip to content

osmosys-form-builder is an Angular library designed to help developers generate forms with built-in validations and error messages. This component also supports performing API calls, making it a versatile addition to any Angular project.

License

Notifications You must be signed in to change notification settings

OsmosysSoftware/osmosys-form-builder

Repository files navigation

OsmosysForm

Welcome to OsmosysForm! 🚀

Are you looking to dynamically generate forms and UI components in your Angular applications? OsmosysForm is here to help! With this powerful library, you can create flexible, customizable forms using simple JSON configurations, making form management a breeze.

What It Does

Imagine being able to define your entire form's structure, styling, and behavior in a single JSON object. OsmosysForm allows you to dynamically generate forms with various input types, validations, and custom actions. Whether you're building a registration form, a feedback survey, or any other type of interactive form, OsmosysForm simplifies the process and enhances your productivity.

Why Choose OsmosysForm?

  • Flexibility: Define complex forms with diverse input types and conditional logic through JSON.
  • Ease of Use: Quickly integrate dynamic forms into your Angular applications with minimal setup.
  • Customizability: Tailor the look and feel of your forms using Bootstrap and custom classes.
  • Efficiency: Save time and reduce code redundancy by managing form configurations centrally.

Key Features

  • 🚀 Dynamic Form Generation: Create forms with a wide range of input types, including text, email, password, number, date, range, select, multi-select, radio, checkbox, and more.
  • 🔍 Comprehensive Validations: Implement built-in validators such as required fields, length constraints, patterns, and custom rules, with dynamic error message display.
  • 🤖 Automated Submission Handling: Integrate API calls for form submissions (GET, POST, PUT, DELETE) with custom pre- and post-submission actions using event emitters.
  • 🎨 Custom Styling: Utilize Bootstrap for default styling and support custom classes through JSON configuration.
  • ⚙️ Conditional Logic: Show/hide and enable/disable fields dynamically based on specified conditions.
  • 📦 Reusable Components: Modular design allows for easy reuse and extension of form components across different projects.

Components

OsmosysForm is comprised of the following components:

  1. DynamicFormComponent: The main component for rendering dynamic forms based on JSON configuration.
  2. FormService: A service for handling API calls and form submission logic.
  3. Validators: Custom validators for various input types and conditions.

Contributing

We welcome contributions from the community! If you're interested in contributing to OsmosysForm, please take a moment to review our Contribution Guidelines.

Your contributions help make our library even better. Whether you're a developer, designer, or just enthusiastic about enhancing user experiences, we'd love to have you on board.

Before you get started, please familiarize yourself with our guidelines to ensure a smooth collaboration process.

Contribution Guidelines

License

This project is licensed under the MIT License - see the LICENSE file for details.

👏 Big Thanks to Our Contributors

Contributors

We appreciate the time and effort put in by all contributors to make this project better!


Installation and Usage

Publishing Library

TODO: Add detailed installation and usage instructions here.

For more help on the Angular CLI, use ng help or check out the Angular CLI Overview and Command Reference page.

About

osmosys-form-builder is an Angular library designed to help developers generate forms with built-in validations and error messages. This component also supports performing API calls, making it a versatile addition to any Angular project.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published