{"id":19027405,"url":"https://github.com/formswizard/forms-designer","last_synced_at":"2025-04-23T14:46:20.778Z","repository":{"id":184235272,"uuid":"671532003","full_name":"FormsWizard/forms-designer","owner":"FormsWizard","description":"Drag\u0026Drop based UI for generating JSONSchema based forms","archived":false,"fork":false,"pushed_at":"2023-09-26T11:37:15.000Z","size":2021,"stargazers_count":8,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-18T00:56:28.561Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FormsWizard.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-07-27T14:30:31.000Z","updated_at":"2025-03-30T10:38:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"89346bc7-3d7d-4b0a-9d3a-a9767e29b878","html_url":"https://github.com/FormsWizard/forms-designer","commit_stats":null,"previous_names":["formswizard/forms-designer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FormsWizard%2Fforms-designer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FormsWizard%2Fforms-designer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FormsWizard%2Fforms-designer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FormsWizard%2Fforms-designer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FormsWizard","download_url":"https://codeload.github.com/FormsWizard/forms-designer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250456679,"owners_count":21433721,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T21:08:08.121Z","updated_at":"2025-04-23T14:46:20.756Z","avatar_url":"https://github.com/FormsWizard.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Forms Designer\n\n[![Test build pipeline](https://github.com/FormsWizard/forms-designer/actions/workflows/staging.yml/badge.svg)](https://github.com/FormsWizard/forms-designer/actions/workflows/staging.yml)\n[![Deploy Next.js site to Pages](https://github.com/FormsWizard/forms-designer/actions/workflows/pages.yml/badge.svg)](https://github.com/FormsWizard/forms-designer/actions/workflows/pages.yml)\n\n## Overview\n\nFormsDesigner is a WYSIWYG editor developed in TypeScript for creating diverse forms using the JSONForms framework. It enables the creation of a JSON-Schema and an UI-schema for streamlined form creation and management.\n\n## Open a Demo\n\nThe following  Live Demos can be opened from the following links:\n\n- [Create React App](https://formswizard.github.io/forms-designer/cra/)\n- [Next.js](https://formswizard.github.io/forms-designer/next/)\n- [Storybook](https://formswizard.github.io/forms-designer/storybook/)\n\n\nTo view a demo on your local machine, execute the following command:\n\n```sh\npnpm export\n(cd apps/cra/out/; python -m http.server) \u0026 \nxdg-open http://localhost:8000\n```\n\nalternatively you can launch a dev build see [Develop](#develop) for more details.\n\n##  Details\n\nFormsDesigner allows for the easy and efficient creation of forms, producing JSON-Schema and UI-schema which can be used independently with JSONForms, enhancing its compatibility across various frameworks like VueJS, Angular, and Vanilla JS. It employs a modular approach for extending by providing new renderers for both the final form and the editing process.\n\nThe FormsDesigner is a part of the broader FormsWizard project, which delivers a complete No-Code solution to form creation and management, with synchronization and serverless operations brought by the FormsWizard project as a whole.\n\n\n## Apps and Packages\n\nThis Turborepo includes various packages and apps:\n\n### Apps\n- `./apps/cra`: An example using Create-React-App.\n- `./apps/docs`: Holds the documentation.\n- `./apps/storybook`: A Storybook for visualizing components.\n- `./apps/vite`: An example using ViteJS.\n- `./apps/web`: A web application built with Next.js.\n\n### Packages\n- `./packages/basic-renderer`: Contains basic renderers for the project.\n- `./packages/core`: Essential core functionalities for FormsDesigner.\n- `./packages/eslint-config-custom`: Provides custom ESLint configurations.\n- `./packages/experimental-renderers` \u0026 `./packages/experimental-renderers_next`: Experimental renderers for different environments, like location picker (leaflet).\n- `./packages/fieldSettings`: Field Settings logic and settings typically seen within the right drawer\n- `./packages/forms-designer`: The main FormsDesigner package.\n- `./packages/jest-presets`: Contains Jest presets for turbo repos.\n- `./packages/react-hooks`: Includes React hooks used in the project.\n- `./packages/renderer`: Houses special drag-and-drop renderers needed for the editor view.\n- `./packages/state`: Manages state within the project.\n- `./packages/theme`: Contains theming details and configurations.\n- `./packages/toolbox`: A toolbox seen within the left drawer, where one can pick tools and blocks\n- `./packages/tsconfig`: Holds TypeScript configuration details.\n- `./packages/types`: Type definitions used across the project.\n- `./packages/utils`: General utilities for various tasks.\n\nEach package/app is fully developed in TypeScript and provides type definitions.\n\n## Build\n\nTo build all apps and packages, execute:\n\n```sh\npnpm build\n```\n\n## Develop\n\nTo develop all apps and packages, execute:\n\n```sh\npnpm dev\n```\n\nIf you only want to run a task for part of the projects use turbo's filtering:\n\n```sh\npnpm dev --filter @formswizard/forms-designer-renderer\n```\nor exclude certain apps:\n```sh\npnpm dev --filter '!@formswizard/web' --filter '!@formswizard/storybook'\n```\n## Test\n\nTo run all tests, execute:\n\n```sh\npnpm test\n```\n\n\n## Update dependencies\n\nTo update all dependencies, execute:\n\n```sh\npnpm update -r --latest\n```\n\n### Utilities\n\nThis Turborepo has some additional tools already setup for you:\n\n- [TypeScript](https://www.typescriptlang.org/) for static type checking\n- [ESLint](https://eslint.org/) for code linting\n- [Prettier](https://prettier.io) for code formatting\n\n\n### Useful Links\n\nLearn more about the power of Turborepo:\n\n- [Tasks](https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks)\n- [Caching](https://turbo.build/repo/docs/core-concepts/caching)\n- [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching)\n- [Filtering](https://turbo.build/repo/docs/core-concepts/monorepos/filtering)\n- [Configuration Options](https://turbo.build/repo/docs/reference/configuration)\n- [CLI Usage](https://turbo.build/repo/docs/reference/command-line-reference)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fformswizard%2Fforms-designer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fformswizard%2Fforms-designer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fformswizard%2Fforms-designer/lists"}