{"id":13582886,"url":"https://github.com/gitana/alpaca","last_synced_at":"2025-05-13T19:06:56.521Z","repository":{"id":38427330,"uuid":"985832","full_name":"gitana/alpaca","owner":"gitana","description":"Alpaca provides the easiest way to generate interactive HTML5 forms for web and mobile applications. It uses JSON Schema and simple Handlebars templates to generate great looking, dynamic user interfaces on top of Twitter Bootstrap, jQuery UI, jQuery Mobile and HTML5.","archived":false,"fork":false,"pushed_at":"2025-03-26T13:21:43.000Z","size":45290,"stargazers_count":1306,"open_issues_count":424,"forks_count":364,"subscribers_count":87,"default_branch":"master","last_synced_at":"2025-04-25T18:23:34.908Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://www.alpacajs.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gitana.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","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":"2010-10-14T02:30:44.000Z","updated_at":"2025-04-20T04:53:58.000Z","dependencies_parsed_at":"2024-06-18T13:56:05.971Z","dependency_job_id":"829b22b0-42ee-40d9-9a74-8251f0be8b59","html_url":"https://github.com/gitana/alpaca","commit_stats":{"total_commits":1098,"total_committers":68,"mean_commits":"16.147058823529413","dds":0.4963570127504554,"last_synced_commit":"6688fe7420947dbdcdc54902f04b23a55d8c056d"},"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitana%2Falpaca","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitana%2Falpaca/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitana%2Falpaca/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitana%2Falpaca/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gitana","download_url":"https://codeload.github.com/gitana/alpaca/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250869995,"owners_count":21500417,"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-08-01T15:03:05.961Z","updated_at":"2025-04-25T18:24:00.832Z","avatar_url":"https://github.com/gitana.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","others"],"sub_categories":[],"readme":"# Alpaca - JSON Forms for jQuery and Bootstrap\n\nAlpaca provides the easiest and fastest way to generate interactive forms for the web and mobile devices. \nIt runs simply as HTML5 or more elaborately using Bootstrap, jQuery Mobile or jQuery UI. \nAlpaca uses Handlebars to process JSON schema and provide developers with an extensible framework for implementing controls, wizards, layouts, I18N support and an custom data persistence.\n\nThe goal of Alpaca is to provide the open source community with a fantastic forms engine that rivals or beats what most\nproprietary vendors offer.  Using Alpaca, you can host really nice forms for your back end services, whether they\nare proprietary, enterprise or SaaS offerings.\n\nThe philosophy behind Alpaca is that you should design your forms once and have them work on lots of different devices\nand UI engines without having to do the same work twice.\n\nHere is a sample registration form written once and rendered using four different approaches:\n\n- [Twitter Bootstrap](http://www.alpacajs.org/demos/bootstrap/registration)\n- [jQuery Mobile](http://www.alpacajs.org/demos/jquerymobile/registration)\n- [jQuery UI](http://www.alpacajs.org/demos/browser/registration)\n- [With AMD and RequireJS](http://www.alpacajs.org/demos/amd/registration)\n\nAlpaca is an open-source project licensed under Apache 2.0.  It was started in 2010 and has been growing steadily\nsince thanks to a really awesome community of customers, consultants and technology champions world-wide.\n\n\n## Web Site, Documentation and CDN\n\nFor information, demos and documentation regarding Alpaca, please visit the \n\u003ca href=\"http://www.alpacajs.org\"\u003ethe Alpaca Forms web site\u003c/a\u003e.\n\nGoing forward, all distribution assets are available via free CDN via jsDelivr.\n\nFor example - \n\n    https://cdn.jsdelivr.net/npm/alpaca@\u003cversion\u003e/dist/alpaca/bootstrap/alpaca.min.js\n    https://cdn.jsdelivr.net/npm/alpaca@\u003cversion\u003e/dist/alpaca/bootstrap/alpaca.min.css\n    \nWhere `\u003cversion\u003e` should be filled in (example: 1.5.26).\n\nFor more information, visit the \u003ca href=\"http://www.alpacajs.org\"\u003eAlpaca Forms web site\u003c/a\u003e.\n\n\n## Sponsors\n\nCloud CMS is actively developed and maintained by \u003ca href=\"https://gitana.io\"\u003eGitana Software, Inc.\u003c/a\u003e (https://gitana.io).\n\nCloud CMS is an API-First, JSON-friendly Content Management Platform for mobile and web applications.  It provides the\nideal backend for Alpaca forms design, capture and reporting.  Stop by our web site to \n\u003ca href=\"https://gitana.io\"\u003elearn more about Cloud CMS\u003c/a\u003e.\n\nThe project also has a large number of customers who use Alpaca, contribute code and receive support, some of whom are \nlisted on our \u003ca href=\"https://www.alpacajs.org\"\u003eweb site\u003c/a\u003e.\n\n\n## Official Support\n\nWe offer paid support for your technical development and production environments.  Paid support includes a service\nlevel agreement for priority response and bug fixes.  \n\nIf you are interested in sponsoring or are interested in consulting services, please [Contact Us](http://www.alpacajs.org/support.html).\n \n\n## Community\n\nWe have an awesome community.  Everything is straight up out in the open and anyone can build or contribute.  We keep\neverything under an Apache 2.0 license so that you're free to do whatever you please with Alpaca.\n\nThere are several ways to interact with the Alpaca community.\n\n- [Browse the documentation](http://www.alpacajs.org/documentation.html) and try out the interactive examples.  On each page, you'll find a Disqus forum that you can use to ask questions specific to that page.  As others browse the documentation, they'll find your question and will have the context at hand to answer it.\n- [Visit the Alpaca.js web site](http://www.alpacajs.org) and ask your question to the broader Alpaca community.  Be sure to include code samples, URLs or http://jsfiddle.net/ links so that others can reproduce your scenario quickly.  It's always best to empower others to help you.\n- [Add a GitHub Issue](https://github.com/gitana/alpaca/issues) if you've found an actual bug or have a feature request that you'd like to get prioritized into the roadmap.\n- [Submit a Pull Request](https://github.com/gitana/alpaca) if you've fixed a bug and want to contribute code back to the Alpaca project.  This is the most powerful and effective way to influence the product.  Pull requests give you a way to write your own additions or adjustments to the code base and make it very easy for us to merge your changes into the product.\n- [Get Developer Assistance](http://www.alpacajs.org/support.html) if you have an urgent issue and would like priority paid support.  Cloud CMS and/or its partners provide fast and reliable developer assistance for your projects.\n\n\n## Extensibility\n\nAlpaca is designed to be very extensible, allowing you to plug in new field implementations, DOM layouts, callbacks, CSS classes,\nI18N bundles and much more.  It also integrates naturally to HTTP service backends using a connector layer.\n\nAlpaca is ideal for consultants or organizations that wish to have a solid JavaScript form engine that provides a platform\nthat they can grow into for current and future project needs.\n\n\n## Can I fork Alpaca and use it my own projects?\n\nYes, absolutely.  That's the whole idea.  Fork it, use it in your projects, make money from it, live a better life, spend more time with\nyour kids.  We hope that Alpaca is useful to you.\n\nIf you come up with something good (like a bug fix or a new feature), consider submitting a Pull Request back to the project so that\nothers may benefit.  And so that they too might, in turn, get more sleep, enjoy your work, be happier and get more out of this adventure\ncalled life.\n \n \n## Compatibility\n\nThe latest release of Alpaca is compatible with jQuery 1.9.1 and up.  For a full breakdown of dependencies, check the \nbower.json and/or `/lib` directory for third-party vendor libraries and versions that are used.\n \nIn general, we aspire to support the latest versions of our third-party dependencies.  Some folks may want Alpaca to be\nbackward-compatible with earlier versions of dependencies and in general, it is our desire to have it be so.  But in\ncases where that is not possible, we will opt for the latest.  In those cases, we recommend folks fall back to an \nearlier version of Alpaca.\n \n\n## How to Build Alpaca\n\nThe first thing you should do is grab the source.  We won't cover how to do that here but instead we recommend that\nyou learn about Git and GitHub.  You can pull the source down to your local machine to build things locally.\n\nThe command line for doing this is basically:\n\n    git clone https://github.com/gitana/alpaca.git\n\n\n### Build\n\nTo build Alpaca, you will need to have Node.js installed.\n\nBuilding Alpaca is pretty easy.  Just run:\n\n    npm install\n    \nAnd then:\n\n    npm run build\n    \nThis will build to `build/alpaca`\n\nTo clean the build:\n\n    npm run clean\n    \n\n### Building the Web Site\n\nTo build the web site, you will also need to have Python and Jekyll installed (as global dependencies).\n\n    brew install ruby\n    gem install -n /usr/local/bin jekyll\n\nYou will then also need to install the `pygments.rb` gem, sort of like this:\n\n    gem install pygments.rb\n\nThen run:    \n\n    npm run site\n\n\n### Running a Local Web Server\n\nAnd you can run a local web server like this:\n\n    npm run server\n\n\n### Alpaca Distributions\n\nThe build produces four sets of assets and they are placed in:\n\n- `build/alpaca/web` (for basic web forms and layout)\n- `build/alpaca/bootstrap` (for bootstrap enabled forms and layout)\n- `build/alpaca/jqueryui` (for jQuery UI enabled forms and layout)\n- `build/alpaca/jquerymobile` (for jQuery Mobile enabled forms and layout)\n\nEach directory contains a JS file and a CSS file for its respective build.\n\nEach JS file is UMD ready and will work within both an AMD and CommonJS container.\n\n\n\n## Contributors\n\nHere is a long list of our project's brothers and sisters in arms.  \nThese folks have made numerous contributions to Alpaca over the years:\n\n+ [@cloudcms](http://github.com/cloudcms)\n+ [@uzquiano](http://github.com/uzquiano)\n+ [@harrymoore](https://github.com/harrymoore)\n+ [@yaworsw](http://github.com/yaworsw)\n+ [@drq](http://github.com/drq)\n+ [@Maethorin](http://github.com/Maethorin)\n+ [@jlanders68](http://github.com/jlanders68)\n+ [@JocelynDelalande](http://github.com/JocelynDelalande)\n+ [@Ognian](http://www.github.com/Ognian)\n+ [@globocom](http://www.github.com/globocom)\n+ [@urba](http://www.github.com/urba)\n+ [@colegatron](http://www.github.com/colegatron)\n+ [@Kirosoft](http://www.github.com/Kirosoft)\n+ [@1337](http://www.github.com/1337)\n+ [@jkernagis2](https://github.com/jkernagis2)\n+ [@ASchriever](https://github.com/ASchriever)\n+ [@hooflung64](https://github.com/hooflung64)\n+ [@Shadowsrik](https://github.com/Shadowsrik)\n+ [@deviant32](https://github.com/deviant32)\n+ [@vikramsawant786](https://github.com/vikramsawant786)\n+ [@tylerperyea](https://github.com/tylerperyea)\n+ [@picsoung](https://github.com/picsoung)\n+ [@jmcgdz](https://github.com/jmcgdz)\n+ [@ytaka](https://github.com/ytaka)\n+ [@jflowers45](https://github.com/jflowers45)\n+ [@paierh](https://github.com/paierh)\n+ [@darmar](https://github.com/darmar)\n+ [@arthurportas](https://github.com/arthurportas)\n+ [@emircal](https://github.com/emircal)\n+ [@xaviergonz](https://github.com/xaviergonz)\n+ [@musicist288](https://github.com/musicist288)\n+ [@mschnee](https://github.com/mschnee)\n+ [@Uxio0](https://github.com/Uxio0)\n+ [@mll5](https://github.com/mll5)\n+ [@PoltoS](https://github.com/PoltoS)\n+ [@billbarsch](https://github.com/billbarsch)\n+ [@vittala](https://github.com/vittala)\n+ [@robustified](https://github.com/robustified)\n+ [@cniesen](https://github.com/cniesen)\n+ [@degenhard](https://github.com/degenhard)\n+ [@robsiera](https://github.com/robsiera)\n+ [@cheeweep](https://github.com/cheeweep)\n+ [@j123b567](https://github.com/j123b567)\n+ [@scadams](https://github.com/scadams)\n+ [@ryanmark](https://github.com/ryanmark)\n+ [@techbrew-mc](https://github.com/techbrew-mc)\n+ [@st3v](https://github.com/st3v)\n+ [@basvandenheuvel](https://github.com/basvandenheuvel)\n+ [@simonemedasfedro](https://github.com/simonemedasfedro)\n+ [@78Gills](https://github.com/78Gills)\n+ [@PirateSteve](https://github.com/PirateSteve)\n+ [@dthompsonza](https://github.com/dthompsonza)\n+ [@ousou](https://github.com/ousou)\n+ [@azahid](https://github.com/azahid)\n+ [@neilyoung](https://github.com/neilyoung)\n+ [@apanagio](https://github.com/apanagio)\n+ [@marcostorto](https://github.com/marcostorto)\n+ [@ToreOlavKristiansen](https://github.com/ToreOlavKristiansen)\n+ [@sachatrauwaen](https://github.com/sachatrauwaen)\n+ [@sfesiura](https://github.com/sfesiura)\n+ [@Felttrip](https://github.com/Felttrip)\n+ [@gertingold](https://github.com/gertingold)\n+ [@sivapalan](https://github.com/sivapalan)\n+ [@caluwaertp](https://github.com/caluwaertp)\n+ [@ambischof](https://github.com/ambischof)\n+ [@hcmabreu](https://github.com/hcmabreu)\n+ [@AzuraGroup](https://github.com/AzuraGroup)\n+ [@mlarman70](https://github.com/mlarman70)\n+ [@christoph007](https://github.com/christoph007)\n+ [@MaZZly](https://github.com/MaZZly)\n+ [@maximzmushko](https://github.com/maximzmushko)\n+ [@DavidePastore](https://github.com/DavidePastore)\n+ [@hauntingEcho](https://github.com/hauntingEcho)\n+ [@ml2439](https://github.com/ml2439)\n+ [@bradh](https://github.com/bradh)\n\n...and many others via the [Alpaca Web Site](http://www.alpacajs.org) and\n[Alpaca Issues](https://github.com/gitana/alpaca/issues)!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitana%2Falpaca","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgitana%2Falpaca","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitana%2Falpaca/lists"}