{"id":62027,"name":"wtforms","description":"A flexible forms validation and rendering library for Python.","url":"https://github.com/pallets-eco/wtforms","last_synced_at":"2025-09-08T12:36:56.343Z","repository":{"id":10547328,"uuid":"12745150","full_name":"pallets-eco/wtforms","owner":"pallets-eco","description":"A flexible forms validation and rendering library for Python.","archived":false,"fork":false,"pushed_at":"2025-08-22T07:32:36.000Z","size":2801,"stargazers_count":1556,"open_issues_count":72,"forks_count":402,"subscribers_count":47,"default_branch":"main","last_synced_at":"2025-09-06T21:17:29.927Z","etag":null,"topics":["forms","html","python","validation","wtforms"],"latest_commit_sha":null,"homepage":"https://wtforms.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pallets-eco.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":"docs/contributing.rst","funding":null,"license":"LICENSE.rst","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},"funding":{"github":"pallets","custom":"https://palletsprojects.com/donate","tidelift":"pypi/Flask"}},"created_at":"2013-09-11T01:53:07.000Z","updated_at":"2025-08-30T12:47:50.000Z","dependencies_parsed_at":"2024-03-10T07:28:36.652Z","dependency_job_id":"2b85dac1-f66d-470f-8e0a-bb914e99e77c","html_url":"https://github.com/pallets-eco/wtforms","commit_stats":{"total_commits":1442,"total_committers":177,"mean_commits":8.146892655367232,"dds":0.6470180305131761,"last_synced_commit":"b47e73d6cd249406b27e0885b0b430d3ba81b581"},"previous_names":["pallets-eco/wtforms","wtforms/wtforms"],"tags_count":35,"template":false,"template_full_name":null,"purl":"pkg:github/pallets-eco/wtforms","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pallets-eco","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274186157,"owners_count":25237533,"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","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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"}},"owner":{"login":"pallets-eco","name":"Pallets Ecosystem","uuid":"84816014","kind":"organization","description":"Community maintained extensions to Pallets projects.","email":"contact@palletsprojects.com","website":"https://palletsprojects.com","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/84816014?v=4","repositories_count":37,"last_synced_at":"2025-05-23T11:32:10.644Z","metadata":{"has_sponsors_listing":false,"funding":{"github":"pallets","custom":"https://palletsprojects.com/donate","tidelift":"pypi/Flask"}},"html_url":"https://github.com/pallets-eco","funding_links":["https://github.com/sponsors/pallets","https://palletsprojects.com/donate","https://tidelift.com/funding/github/pypi/Flask"],"total_stars":23896,"followers":257,"following":0,"created_at":"2022-11-02T20:52:44.788Z","updated_at":"2025-05-23T11:32:10.645Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pallets-eco","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pallets-eco/repositories"},"packages":[{"id":2974346,"name":"wtforms","ecosystem":"pypi","description":"Form validation and rendering for Python web development.","homepage":null,"licenses":"Copyright 2008 WTForms  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  1.  Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.  2.  Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.  3.  Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.","normalized_licenses":["Other"],"repository_url":"https://github.com/pallets-eco/wtforms","keywords_array":[],"namespace":null,"versions_count":30,"first_release_published_at":"2009-10-10T03:05:32.000Z","latest_release_published_at":"2024-10-21T11:33:58.000Z","latest_release_number":"3.2.1","last_synced_at":"2025-09-08T06:02:47.864Z","created_at":"2022-04-10T13:06:51.427Z","updated_at":"2025-09-08T06:02:47.865Z","registry_url":"https://pypi.org/project/wtforms/","install_command":"pip install wtforms --index-url https://pypi.org/simple","documentation_url":"https://wtforms.readthedocs.io","metadata":{"funding":null,"documentation":"https://wtforms.readthedocs.io","classifiers":["Development Status :: 5 - Production/Stable","Environment :: Web Environment","Intended Audience :: Developers","License :: OSI Approved :: BSD License","Operating System :: OS Independent","Programming Language :: Python","Topic :: Internet :: WWW/HTTP :: Dynamic Content"],"normalized_name":"wtforms","project_status":null},"repo_metadata":{"id":10547328,"uuid":"12745150","full_name":"pallets-eco/wtforms","owner":"pallets-eco","description":"A flexible forms validation and rendering library for Python.","archived":false,"fork":false,"pushed_at":"2024-10-22T15:23:21.000Z","size":3082,"stargazers_count":1507,"open_issues_count":61,"forks_count":395,"subscribers_count":50,"default_branch":"main","last_synced_at":"2024-10-29T15:37:55.170Z","etag":null,"topics":["forms","html","python","validation","wtforms"],"latest_commit_sha":null,"homepage":"https://wtforms.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pallets-eco.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":"docs/contributing.rst","funding":null,"license":"LICENSE.rst","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}},"created_at":"2013-09-11T01:53:07.000Z","updated_at":"2024-10-23T08:28:21.000Z","dependencies_parsed_at":"2024-03-10T07:28:36.652Z","dependency_job_id":"2b85dac1-f66d-470f-8e0a-bb914e99e77c","html_url":"https://github.com/pallets-eco/wtforms","commit_stats":{"total_commits":1320,"total_committers":151,"mean_commits":8.741721854304636,"dds":0.6143939393939394,"last_synced_commit":"96021e2574b82820a11a8ff6fa5367aebff88533"},"previous_names":["pallets-eco/wtforms","wtforms/wtforms"],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pallets-eco","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222090770,"owners_count":16929471,"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"},"owner_record":{"login":"wtforms","name":"WTForms","uuid":"4740084","kind":"organization","description":"","email":null,"website":"https://wtforms.readthedocs.io/","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/4740084?v=4","repositories_count":6,"last_synced_at":"2024-04-16T05:47:27.000Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/wtforms","funding_links":[],"total_stars":3031,"followers":16,"following":0,"created_at":"2022-11-02T16:31:26.365Z","updated_at":"2024-04-16T05:47:29.928Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wtforms","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wtforms/repositories"},"tags":[{"name":"3.1.2","sha":"d4ba836bfce8d71a257ca96fbc012c1b9e396f45","kind":"tag","published_at":"2024-01-06T07:50:48.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/3.1.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/3.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.1.2/manifests"},{"name":"3.1.1","sha":"92bd434ada847410ded5c83f2dd4eaacdbad67f4","kind":"tag","published_at":"2023-11-01T10:16:46.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/3.1.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/3.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.1.1/manifests"},{"name":"3.1.0","sha":"49378b837879c701f16d85106417836ed0016862","kind":"tag","published_at":"2023-10-10T16:01:55.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/3.1.0","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.1.0/manifests"},{"name":"3.0.1","sha":"94a5c268cd914798172ab6b6e85375c9447e3b70","kind":"commit","published_at":"2021-12-23T10:05:29.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/3.0.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.0.1/manifests"},{"name":"3.0.0","sha":"053118b063c4fba7e58def2c6391c5f028931aec","kind":"commit","published_at":"2021-11-07T12:18:33.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/3.0.0","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.0.0/manifests"},{"name":"3.0.0a1","sha":"1184944a6d5e6368e9d5e1424b6955846dd1e69f","kind":"commit","published_at":"2020-11-23T14:51:51.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/3.0.0a1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/3.0.0a1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.0.0a1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/3.0.0a1/manifests"},{"name":"2.3.3","sha":"244c8d6b15accb3e2efd622241e5f7c1cc8abb9d","kind":"commit","published_at":"2020-07-30T17:05:04.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.3.3","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.3/manifests"},{"name":"2.3.2","sha":"670f6f39f2d0d18f2091134d21567dc61772784b","kind":"commit","published_at":"2020-07-29T20:14:04.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.3.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.2/manifests"},{"name":"2.3.1","sha":"aa552df8949c51bf97644246f3cf0cebb1004c5a","kind":"commit","published_at":"2020-04-22T16:29:42.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.3.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.1/manifests"},{"name":"2.3.0","sha":"910e879c532b031a8fc6153c11d7d4488e115c48","kind":"commit","published_at":"2020-04-21T22:36:54.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.3.0","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.3.0/manifests"},{"name":"2.2.1","sha":"7152845801e88ab6a9c7d719b73d41bef6464b5d","kind":"commit","published_at":"2018-06-07T22:12:53.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.2.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.2.1/manifests"},{"name":"2.2","sha":"0f1183ac31615f12259a0b16897d0bbea6d239a8","kind":"commit","published_at":"2018-06-02T15:29:36.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.2/manifests"},{"name":"2.1","sha":"b94260329964844d66c426072c649e64b6924a7c","kind":"commit","published_at":"2015-12-15T05:45:21.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.1/manifests"},{"name":"2.0.2","sha":"5b3bab1ebd74fe9ba951d21a6d63273792e22634","kind":"commit","published_at":"2015-01-18T21:17:37.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.0.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.0.2/manifests"},{"name":"2.0.1","sha":"b3c962e0a25c05d96db862f5e1c85f0a80d1352f","kind":"commit","published_at":"2014-07-01T16:34:11.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.0.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.0.1/manifests"},{"name":"2.0","sha":"c53f8a3d8b14536810cb71cab0730673d9f7d566","kind":"commit","published_at":"2014-05-20T21:47:14.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/2.0","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/2.0/manifests"},{"name":"1.0.5","sha":"816a86fe8be9046fb0f413cc0d0d12ea3d8a1cd8","kind":"tag","published_at":"2013-09-11T02:28:30.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/1.0.5","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/1.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.5/manifests"},{"name":"1.0.4","sha":"5acd5a1675b130720836d2802c3cdf732700dcb6","kind":"commit","published_at":"2013-04-29T02:08:14.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/1.0.4","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.4/manifests"},{"name":"1.0.3","sha":"483ab67f15c714d3c87f5c5ce632e10cbafe05e0","kind":"commit","published_at":"2013-01-24T21:42:48.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/1.0.3","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.3/manifests"},{"name":"1.0.2","sha":"a9295c43442a6e4b573ac844face0d67691e1b04","kind":"commit","published_at":"2012-08-24T19:31:35.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/1.0.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.2/manifests"},{"name":"1.0.1","sha":"c5ddbe00f89a7a317cae6c2ae3f6262beb67c8b8","kind":"commit","published_at":"2012-02-29T17:47:05.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/1.0.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0.1/manifests"},{"name":"1.0","sha":"f30abe736bede3081cb53a1a4c88dc6363681414","kind":"commit","published_at":"2012-02-28T18:47:16.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/1.0","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/1.0/manifests"},{"name":"0.6.3","sha":"f986d0a0ed16e3afe301f9db01585a8d95fddfd0","kind":"commit","published_at":"2011-04-25T02:19:34.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.6.3","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6.3/manifests"},{"name":"0.6.2","sha":"61114546c1c05aa1ac2468468593b462971d03e2","kind":"commit","published_at":"2011-01-22T09:27:06.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.6.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6.2/manifests"},{"name":"0.6.1","sha":"95ece10469bb401ab4919845bfa53478bd167d8f","kind":"commit","published_at":"2010-09-17T19:48:33.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.6.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6.1/manifests"},{"name":"0.6","sha":"89bc9fd81c34b632d6ebe91dd50619295bf2face","kind":"commit","published_at":"2010-04-25T18:51:08.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.6","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.6/manifests"},{"name":"0.5","sha":"699da28433069943d8aca1678efd37e91fd8e4df","kind":"commit","published_at":"2010-02-13T19:25:14.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.5","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.5/manifests"},{"name":"0.4","sha":"39f91d70e1c7a273ff095c3cc6bb1a0256655695","kind":"commit","published_at":"2009-10-10T01:03:33.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.4","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.4/manifests"},{"name":"0.3.1","sha":"86b8aafd85f1e8026dbf0d55d698e47e34bf7994","kind":"commit","published_at":"2009-01-24T00:58:33.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.3.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.3.1/manifests"},{"name":"0.3","sha":"f0540c8c3490f27f2148021d5b09c2423715c903","kind":"commit","published_at":"2009-01-17T23:03:10.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.3","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.3/manifests"},{"name":"0.2","sha":"2cff5004fb09e703b681bb38ea6b74744923bdd3","kind":"commit","published_at":"2009-01-13T10:05:15.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.2","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.2/manifests"},{"name":"0.1","sha":"f26312c5a98c39b434e8349db0e1933c781d43bf","kind":"commit","published_at":"2008-07-25T20:32:43.000Z","download_url":"https://codeload.github.com/pallets-eco/wtforms/tar.gz/0.1","html_url":"https://github.com/pallets-eco/wtforms/releases/tag/0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/tags/0.1/manifests"}]},"repo_metadata_updated_at":"2024-10-29T20:30:12.066Z","dependent_packages_count":103,"downloads":12138053,"downloads_period":"last-month","dependent_repos_count":7591,"rankings":{"downloads":0.1408766247327711,"dependent_repos_count":0.1076510056920232,"dependent_packages_count":0.18606982555004517,"stargazers_count":1.78772816507247,"forks_count":2.6709375338210526,"docker_downloads_count":0.5967321179718323,"average":0.9149992121400324},"purl":"pkg:pypi/wtforms","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/wtforms","docker_dependents_count":104,"docker_downloads_count":87819784,"usage_url":"https://repos.ecosyste.ms/usage/pypi/wtforms","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/wtforms/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2024-10-29T18:01:39.777Z","issues_count":85,"pull_requests_count":61,"avg_time_to_close_issue":15609861.151898734,"avg_time_to_close_pull_request":3165466.1818181816,"issues_closed_count":79,"pull_requests_closed_count":55,"pull_request_authors_count":43,"issue_authors_count":64,"avg_comments_per_issue":2.541176470588235,"avg_comments_per_pull_request":1.5573770491803278,"merged_pull_requests_count":27,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":13,"past_year_pull_requests_count":10,"past_year_avg_time_to_close_issue":7363600.555555556,"past_year_avg_time_to_close_pull_request":118921.625,"past_year_issues_closed_count":9,"past_year_pull_requests_closed_count":8,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":1.8461538461538463,"past_year_avg_comments_per_pull_request":0.5,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":8,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/issues","maintainers":[{"login":"azmeuk","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/azmeuk"},{"login":"davidism","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/davidism"}],"active_maintainers":[{"login":"azmeuk","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/azmeuk"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/wtforms/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/wtforms/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/wtforms/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/wtforms/related_packages","maintainers":[{"uuid":"davidism","login":"davidism","name":null,"email":null,"url":null,"packages_count":29,"html_url":"https://pypi.org/user/davidism/","role":null,"created_at":"2022-12-22T00:07:24.777Z","updated_at":"2022-12-22T00:07:24.777Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/davidism/packages"},{"uuid":"azmeuk","login":"azmeuk","name":null,"email":null,"url":null,"packages_count":28,"html_url":"https://pypi.org/user/azmeuk/","role":null,"created_at":"2022-12-22T00:07:24.768Z","updated_at":"2022-12-22T00:07:24.768Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/azmeuk/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726135,"maintainers_count":308800,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":2423473,"full_name":"pallets-eco/wtforms","default_branch":"main","committers":[{"name":"James Crasta","email":"wtforms@jamescrasta.com","login":"crast","count":526},{"name":"Éloi Rivard","email":"eloi.rivard@aquilenet.fr","login":"azmeuk","count":239},{"name":"Thomas Johansson","email":"prencher@prencher.dk","login":"prencher","count":196},{"name":"David Lord","email":"davidism@gmail.com","login":"davidism","count":76},{"name":"James Crasta","email":"james@crasta.com","login":null,"count":46},{"name":"Fraser May","email":"frasertmay@gmail.com","login":"ftm","count":20},{"name":"Rodrigo Moraes","email":"rodrigo.moraes@gmail.com","login":"moraes","count":13},{"name":"Alan Hamlett","email":"alan.hamlett@gmail.com","login":"alanhamlett","count":10},{"name":"Grey Li","email":"withlihui@gmail.com","login":"greyli","count":10},{"name":"Vinay Sajip","email":"vinay_sajip@yahoo.co.uk","login":"vsajip","count":9},{"name":"James Crasta","email":"jcrasta@underarmour.com","login":null,"count":9},{"name":"Gianfranco Polinesi","email":"gianfrancopolinesi@gmail.com","login":"Giandrop","count":7},{"name":"sohalt","email":"sohalt@sohalt.net","login":"Sohalt","count":7},{"name":"Mats Blomdahl","email":"mats.blomdahl@gmail.com","login":"mblomdahl","count":6},{"name":"Jiri Vrany","email":"jiri.vrany@tul.cz","login":"jirivrany","count":6},{"name":"jean-philippe serafin","email":"serafinjp@gmail.com","login":"jeanphix","count":5},{"name":"Vladyslav Krylasov","email":"vladyslav.krylasov@gmail.com","login":"sprytnyk","count":5},{"name":"Pander","email":"pander@users.sourceforge.net","login":"PanderMusubi","count":5},{"name":"Emil Ivanov","email":"emil.vladev@gmail.com","login":"vladev","count":5},{"name":"Chris Mayo","email":"aklhfex@gmail.com","login":"cjmayo","count":4},{"name":"Anthony Plunkett","email":"anthony@thefort.org","login":"doobeh","count":4},{"name":"Andy McCurdy","email":"andy@andymccurdy.com","login":"andymccurdy","count":4},{"name":"Andreas Madsack","email":"andreas@madflex.de","login":"mfa","count":4},{"name":"eduardo","email":"schettino72 at gmail dot com","login":null,"count":4},{"name":"ss1978","email":"devnull@localhost","login":null,"count":4},{"name":"Clemens Kaposi","email":"clemens@kaposi.name","login":"yggi49","count":4},{"name":"yusuke furukawa","email":"littlefive.jp@gmail.com","login":"gumuncle","count":4},{"name":"mr.Shu","email":"mr@shu.io","login":"mrshu","count":4},{"name":"Melih Uçar","email":"melihucar@gmail.com","login":"melihucar","count":4},{"name":"Hsiaoming Yang","email":"me@lepture.com","login":"lepture","count":4},{"name":"Mohammad Efazati","email":"mohammad@efazati.org","login":"efazati","count":3},{"name":"Russell","email":"russell@russellfinlay.com","login":"russellfinlay","count":3},{"name":"தமிழ்நேரம்","email":"anishprabu.t@gmail.com","login":"TamilNeram","count":3},{"name":"owgreen","email":"satoshi.14ym@gmail.com","login":"owgreen","count":3},{"name":"sblondon","email":"sblondon","login":"sblondon","count":3},{"name":"bittin1ddc447d824349b2","email":"bittin@reimu.nl","login":"bittin","count":3},{"name":"Brian Hartvigsen","email":"brian.andrew@brianandjenny.com","login":"tresni","count":3},{"name":"Hosted Weblate","email":"hosted@weblate.org","login":"weblate","count":3},{"name":"Khomyakov Yuriy","email":"_yurka_@inbox.ru","login":"appetito","count":3},{"name":"William Bright","email":"williambright91@gmail.com","login":"whb07","count":3},{"name":"josueisonfire","email":"josueisonfire@gmail.com","login":"josueisonfire","count":3},{"name":"Andrei Antoukh","email":"niwi@niwi.be","login":null,"count":3},{"name":"Jeroendevr","email":"jeroendevries@runbox.eu","login":null,"count":3},{"name":"Milan Šalka","email":"salka.milan@googlemail.com","login":null,"count":3},{"name":"Lauri Hynynen","email":"lauri.hynynen@gmail.com","login":"laurihy","count":2},{"name":"Lipis","email":"lipiridis@gmail.com","login":"lipis","count":2},{"name":"Nuno Santos","email":"nunofvsantos@gmail.com","login":"nfvs","count":2},{"name":"Oleg Pidsadnyi","email":"oleg.pidsadnyi@gmail.com","login":"olegpidsadnyi","count":2},{"name":"Oğuz Ersen","email":"oguz@ersen.moe","login":"oersen","count":2},{"name":"Simon Waloschek","email":"sonovice","login":"sonovice","count":2},{"name":"Stéphane Raimbault","email":"stephane","login":"stephane","count":2},{"name":"Tim Gates","email":"tim.gates@iress.com","login":"timgates42","count":2},{"name":"Vladimir Kolev","email":"me@vkolev.net","login":"vkolev","count":2},{"name":"William Woodruff","email":"william@trailofbits.com","login":"woodruffw","count":2},{"name":"Zoltan Fedor","email":"zoltan.0.fedor@gmail.com","login":"zoltan-fedor","count":2},{"name":"corros","email":"corrado.rossato@gmail.com","login":"cor-ros","count":2},{"name":"dizcza","email":"dizcza@gmail.com","login":"dizcza","count":2},{"name":"dominickj-tdi","email":"49956725+dominickj-tdi","login":"dominickj-tdi","count":2},{"name":"gallegonovato","email":"fran-carro@hotmail.es","login":"gallegonovato","count":2},{"name":"tmrlvi","email":"tmrlvi@gmail.com","login":"tmrlvi","count":2},{"name":"Kris Neuharth","email":"kris.neuharth@gmail.com","login":"only-entertainment","count":2},{"name":"Josh Rowe","email":"josh@s-block.com","login":"s-block","count":2},{"name":"Jakob Holmelund","email":"jakobholmelund@gmail.com","login":"jakobholmelund","count":2},{"name":"George Schizas","email":"gschizas@gmail.com","login":"gschizas","count":2},{"name":"Dima Moroz","email":"me@dimamoroz.com","login":"dmrz","count":2},{"name":"Dean Silfen","email":"dean.silfen@gmail.com","login":"djds23","count":2},{"name":"Baurzhan Muftakhidinov","email":"baurthefirst@gmail.com","login":"crayxt","count":2},{"name":"Arni Birgisson","email":"arnib@arnib.net","login":"arnib","count":2},{"name":"Alex Ball","email":"alex-ball","login":"alex-ball","count":2},{"name":"Adam Chainz","email":"me@adamj.eu","login":"adamchainz","count":2},{"name":"Сергій","email":"sergiy.goncharuk.1@gmail.com","login":"Serega124","count":2},{"name":"zcmander","email":"zcmander+github@gmail.com","login":"zcmander","count":2},{"name":"karland","email":"anders-betrachtet@online.de","login":null,"count":2},{"name":"Jakub Kuszneruk","email":"","login":null,"count":2},{"name":"Jeroen de Vries","email":"jeroendevriesrunbox.eu","login":null,"count":2},{"name":"Melih Uçar","email":"melihucar@Melihs-Mac-mini.mynet","login":null,"count":2},{"name":"valtron","email":"valtron2000@gmail.com","login":"valtron","count":2},{"name":"wuxqing","email":"wuxqing@gmail.com","login":"wuxqing","count":2},{"name":"Òscar Vilaplana","email":"dev@oscarvilaplana.cat","login":"grimborg","count":2},{"name":"tabby","email":"tabby4442@gmail.com","login":null,"count":1},{"name":"Philippe Faes","email":"philippe.faes@sigasi.com","login":null,"count":1},{"name":"R3turnz","email":"r3turnz@gmail.com","login":null,"count":1},{"name":"Satoshi Ishiyama","email":"satoshi@satoshi-mac.local","login":null,"count":1},{"name":"Teun Zengerink","email":"t.zengerink@gmail.com","login":null,"count":1},{"name":"Fang-Pen Lin","email":"hello@fangpenlin.com","login":"fangpenlin","count":1},{"name":"Edward Betts","email":"edward@4angle.com","login":"EdwardBetts","count":1},{"name":"Daniel Lepage","email":"dplepage@gmail.com","login":"dplepage","count":1},{"name":"Clament John","email":"17064666+clmno","login":"clmno","count":1},{"name":"Christian Klein","email":"chris@5711.org","login":"monotoninski","count":1},{"name":"Casey Miller","email":"camiller@linkedin.com","login":"camillser","count":1},{"name":"Brian Cappello","email":"briancappello@gmail.com","login":"briancappello","count":1},{"name":"Bebleo","email":"15948170+bebleo","login":"bebleo","count":1},{"name":"Baptiste Mispelon","email":"bmispelon@gmail.com","login":"bmispelon","count":1},{"name":"Sophie Sh","email":"lisp_spb@mail.ru","login":"lispspb","count":1},{"name":"Slava Bacherikov","email":"slava@bacher09.org","login":"bacher09","count":1},{"name":"SiTao W_ang","email":"playgoobug@gmail.com","login":"douchen","count":1},{"name":"Sebastian Höffner","email":"info@sebastian-hoeffner.de","login":"shoeffner","count":1},{"name":"Ron Huang","email":"ron@hng.tw","login":"ronhuang","count":1},{"name":"Ricardo Bánffy","email":"rbanffy@gmail.com","login":"rbanffy","count":1},{"name":"Pierre-Yves Chibon","email":"pingou@pingoured.fr","login":"pypingou","count":1},{"name":"Paul Brown","email":"paul90brown@gmail.com","login":"pawl","count":1},{"name":"0xhf","email":"74307565+0xhf","login":"0xhf","count":1},{"name":"Ziirish","email":"ziirish@ziirish.info","login":"ziirish","count":1},{"name":"Young proger","email":"66271043+Yourun-proger","login":"Yourun-proger","count":1},{"name":"Wes Gilleland","email":"wes.gilleland@gmail.com","login":"Deathnerd","count":1},{"name":"Wertyfire","email":"sw405@yandex.ru","login":"Wertyfire","count":1},{"name":"Wen YE","email":"whusnoopy@gmail.com","login":"whusnoopy","count":1},{"name":"Harro van der Klauw","email":"hvdklauw@gmail.com","login":"hvdklauw","count":1},{"name":"Hannes Küttner","email":"kuettner.hannes@gmail.com","login":"hanneskuettner","count":1},{"name":"Georg Schölly","email":"git@gsch.ch","login":"georgschoelly","count":1},{"name":"Frode Danielsen","email":"frode@e5r.no","login":"fdanielsen","count":1},{"name":"Fausterkun","email":"Fausterkun@gmail.com","login":"Fausterkun","count":1},{"name":"James Crasta","email":"wtforms@simplecodes.com","login":null,"count":1},{"name":"Laur Mõtus","email":"laur.motus@eesti.ee","login":null,"count":1},{"name":"Lukas Nemec","email":"lukas.nemec2@firma.seznam.cz","login":null,"count":1},{"name":"Oleg Pidsadnyi","email":"oleg.podsadny@gmail.com","login":null,"count":1},{"name":"Daniel Dourvaris","email":"dan@car.gr","login":null,"count":1},{"name":"Daniil Barabash","email":"daniil.barabash@firma.seznam.cz","login":null,"count":1},{"name":"Funelie","email":"100jibie@gmail.com","login":null,"count":1},{"name":"Zaytsev Dmitriy","email":"zaytsev_dmitriy@edadeal.ru","login":null,"count":1},{"name":"hugoalh","email":"hugoalh@users.noreply.hosted.weblate.org","login":null,"count":1},{"name":"koenkarsten","email":"koen.karsten@labela.nl","login":null,"count":1},{"name":"kpinc","email":"kop@meme.com","login":null,"count":1},{"name":"Mark R.","email":"github@mark.org.il","login":"marklr","count":1},{"name":"Marco Martinez","email":"usblackbird@gmail.com","login":"m-martinez","count":1},{"name":"Marcin Wolanski","email":"wolanskim@gmail.com","login":"wolan","count":1},{"name":"Lukas Anzinger","email":"lukas@lukasanzinger.at","login":"Lukas0907","count":1},{"name":"Leo Q","email":"LeoQuote","login":"LeoQuote","count":1},{"name":"Jürgen Gmach","email":"juergen.gmach@googlemail.com","login":"jugmac00","count":1},{"name":"Julien Seiler","email":"julien.seiler@gmail.com","login":"julozi","count":1},{"name":"Julien Sanchez","email":"julien.sanchez@gmail.com","login":"gentooboontoo","count":1},{"name":"Josimar Gabriel","email":"jgr-araujo@protonmail.com","login":"jgra-dev","count":1},{"name":"Jon Banafato","email":"jon@jonafato.com","login":"jonafato","count":1},{"name":"Jeremy Sandell","email":"jlsandell@gmail.com","login":"jlsandell","count":1},{"name":"Jeff Johnson","email":"jeffcjohnson@gmail.com","login":"jeffcjohnson","count":1},{"name":"Aleksander Nitecki","email":"ixendr@itogi.re","login":"Xender","count":1},{"name":"Alex K","email":"lestatcheb@gmail.com","login":"lestatcheb","count":1},{"name":"AlexScheller","email":"alexgesc@gmail.com","login":"AlexScheller","count":1},{"name":"Walnuts","email":"modulo.w@gmail.com","login":"Walnuts","count":1},{"name":"Victor Buzdugan","email":"buzdugan.victor@icloud.com","login":"victorBuzdugan","count":1},{"name":"Van Aarde Krynauw","email":"vanaarde@leaping-rhino.com","login":"nanocell","count":1},{"name":"Tomasz Karbownicki","email":"tomasz@karbownicki.com","login":"trojkat","count":1},{"name":"Tim Babych","email":"tim.babych@gmail.com","login":"tymofij","count":1},{"name":"Thomas Pani","email":"thomas.pani@gmail.com","login":"thpani","count":1},{"name":"Sudheer Satyanarayana","email":"sudheer@sudheer.net","login":"bngsudheer","count":1},{"name":"Orestis Ioannou","email":"orestis@oioannou.com","login":"oorestisime","count":1},{"name":"zcattacz","email":"zcattacz","login":"zcattacz","count":1},{"name":"w31rd0","email":"ru.w31rd0@gmail.com","login":"w31rd0","count":1},{"name":"vikipha","email":"viktor.lacina@gmail.com","login":"vikipha","count":1},{"name":"simmon","email":"simmon@nplob.com","login":"simmon-nplob","count":1},{"name":"roy","email":"ryan413","login":"ryan413","count":1},{"name":"mdew","email":"adrienoyono@gmail.com","login":"adrcad","count":1},{"name":"hardtack","email":"6566gun@gmail.com","login":"Hardtack","count":1},{"name":"digwtx","email":"wtx358@qq.com","login":"wtx358","count":1},{"name":"anton-d","email":"anton-d@gmx.de","login":"anton-d","count":1},{"name":"andy boot","email":"bootandy@gmail.com","login":"bootandy","count":1},{"name":"Arkady","email":"arkpog@gmail.com","login":"arkpog","count":1},{"name":"Jalal Maqdisi","email":"jalal.maqdisi@gmail.com","login":"jali","count":1},{"name":"Hong Minhee","email":"hongminhee@member.fsf.org","login":"dahlia","count":1},{"name":"Ali Afshar","email":"aafshar@gmail.com","login":"aliafshar","count":1},{"name":"Anton Stakhouski","email":"antonstakhouski@gmail.com","login":"antonstakhouski","count":1},{"name":"Aniket Panse","email":"aniketpanse@gmail.com","login":"czardoz","count":1},{"name":"Andrew Plummer","email":"plummer574@gmail.com","login":"plumdog","count":1},{"name":"Amin Alaee","email":"mohammadamin.alaee@gmail.com","login":"aminalaee","count":1},{"name":"Natt P","email":"nattster@gmail.com","login":"nattster","count":1},{"name":"Mikachu","email":"micah.sh@proton.me","login":"5mikachu","count":1},{"name":"Mihnea Simian","email":"contact@mesimian.com","login":"mihneasim","count":1}],"total_commits":1444,"total_committers":167,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":8.646706586826348,"dds":0.6357340720221607,"past_year_committers":[{"name":"Éloi Rivard","email":"eloi@yaal.coop","login":"azmeuk","count":23},{"name":"தமிழ்நேரம்","email":"anishprabu.t@gmail.com","login":"TamilNeram","count":3},{"name":"simmon","email":"simmon@nplob.com","login":"simmon-nplob","count":1},{"name":"David Lord","email":"davidism@gmail.com","login":"davidism","count":1}],"past_year_total_commits":28,"past_year_total_committers":4,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":7.0,"past_year_dds":0.1785714285714286,"last_synced_at":"2025-07-08T15:07:39.953Z","last_synced_commit":"7477295a479b77aff322796c4a0c7b7753ce3333","created_at":"2024-10-08T07:02:17.026Z","updated_at":"2025-07-08T15:07:40.171Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-31T00:00:08.451Z","repositories_count":5479765,"commits_count":853310318,"contributors_count":31095240,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"pallets-eco/wtforms","html_url":"https://github.com/pallets-eco/wtforms","last_synced_at":"2025-08-31T14:25:54.873Z","status":null,"issues_count":71,"pull_requests_count":59,"avg_time_to_close_issue":18070381.081967212,"avg_time_to_close_pull_request":2333009.0185185187,"issues_closed_count":61,"pull_requests_closed_count":54,"pull_request_authors_count":45,"issue_authors_count":61,"avg_comments_per_issue":2.2253521126760565,"avg_comments_per_pull_request":1.305084745762712,"merged_pull_requests_count":27,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":10,"past_year_pull_requests_count":17,"past_year_avg_time_to_close_issue":3062983.0,"past_year_avg_time_to_close_pull_request":1382382.0714285714,"past_year_issues_closed_count":3,"past_year_pull_requests_closed_count":14,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":10,"past_year_avg_comments_per_issue":1.4,"past_year_avg_comments_per_pull_request":0.47058823529411764,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":10,"created_at":"2024-10-08T07:02:17.510Z","updated_at":"2025-09-03T04:37:41.424Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pallets-eco%2Fwtforms/issues","issue_labels_count":{"bug":9,"wontfix":8,"enhancement":7,"question":4,"onhold":2},"pull_request_labels_count":{"wontfix":5,"enhancement":3,"bug":2,"tests":1},"issue_author_associations_count":{"NONE":69,"CONTRIBUTOR":7,"MEMBER":2},"pull_request_author_associations_count":{"NONE":33,"MEMBER":20,"CONTRIBUTOR":18},"issue_authors":{"malthe":3,"kvesteri":2,"peterdemin":2,"miketheman":2,"potiuk":2,"fweep":2,"cybertoast":2,"Bolik":2,"crast":2,"ThiefMaster":2,"lipis":2,"rsyring":1,"williamjmorenor":1,"jwag956":1,"igungor":1,"cam-stitt":1,"sn0rcha":1,"mehaase":1,"alexef":1,"phistrom":1,"tonnydourado":1,"sh4nks":1,"YKdvd":1,"iaculch":1,"jwogrady":1,"Jishnu-Nandhiath":1,"svenstaro":1,"zbyte64":1,"murphydavis":1,"ramin32":1,"jace":1,"davidism":1,"AstraLuma":1,"w31rd0":1,"dalepotter":1,"jb2170":1,"pzingg":1,"azmeuk":1,"raimundovidaljunior":1,"Le-Stagiaire":1,"ColtonProvias":1,"OpaVote":1,"scorday":1,"liclac":1,"glasserc":1,"maxvi":1,"reddi":1,"dougthor42":1,"hustlzp":1,"ilkiri23":1,"Tikrong":1,"Tyler-Petrov":1,"caseybessette":1,"RR2DO2":1,"alexanderjulo":1,"mengzhuo":1,"lepture":1,"alanhamlett":1,"asyschikov":1,"deanmalmgren":1,"Lopkop":1,"yegle":1,"kmarekspartz":1,"julian7":1,"eriktaubeneck":1,"macmule":1},"pull_request_authors":{"azmeuk":18,"jeffdico":2,"Lukas0907":2,"malthe":2,"joaoLouceiro":2,"artempronevskiy":2,"davidism":2,"jb2170":2,"typehorror":2,"lepture":2,"playpianolikewoah":1,"jkittner":1,"puentesarrin":1,"xlevus":1,"kageurufu":1,"lipis":1,"paulegan":1,"olegpidsadnyi":1,"w31rd0":1,"kpinc":1,"trojkat":1,"jstacoder":1,"croach":1,"ghost":1,"dourvaris":1,"jeffcjohnson":1,"plumdog":1,"mengzhuo":1,"devxoul":1,"m-martinez":1,"andymccurdy":1,"yajo":1,"czardoz":1,"gmjosack":1,"fdanielsen":1,"eriktaubeneck":1,"oligo":1,"cklein":1,"shuisman":1,"Demetriex":1,"bacher09":1,"thpani":1,"vprints":1,"italomaia":1,"reddi":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.444Z","repositories_count":10087320,"issues_count":31306968,"pull_requests_count":96469683,"authors_count":10696025,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"bug":1},"past_year_pull_request_labels_count":{"bug":2},"past_year_issue_author_associations_count":{"NONE":11,"MEMBER":1},"past_year_pull_request_author_associations_count":{"MEMBER":17,"NONE":8,"CONTRIBUTOR":2},"past_year_issue_authors":{"potiuk":2,"AstraLuma":1,"azmeuk":1,"dougthor42":1,"jb2170":1,"macmule":1,"miketheman":1,"raimundovidaljunior":1,"Tikrong":1,"Tyler-Petrov":1,"williamjmorenor":1},"past_year_pull_request_authors":{"azmeuk":15,"joaoLouceiro":2,"jeffdico":2,"davidism":2,"Lukas0907":2,"artempronevskiy":2,"jb2170":2},"maintainers":[{"login":"azmeuk","count":19,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/azmeuk"},{"login":"davidism","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/davidism"}],"active_maintainers":[{"login":"azmeuk","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/azmeuk"},{"login":"davidism","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/davidism"}]},"events":{"total":{"CreateEvent":5,"IssuesEvent":18,"ReleaseEvent":2,"WatchEvent":44,"DeleteEvent":2,"IssueCommentEvent":36,"PushEvent":15,"PullRequestEvent":12,"PullRequestReviewEvent":1,"ForkEvent":10},"last_year":{"CreateEvent":5,"IssuesEvent":18,"ReleaseEvent":2,"WatchEvent":44,"DeleteEvent":2,"IssueCommentEvent":36,"PushEvent":15,"PullRequestEvent":12,"PullRequestReviewEvent":1,"ForkEvent":10}},"keywords":["forms","html","python","validation","wtforms"],"dependencies":[{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-08-07T05:15:53.150Z","updated_at":"2022-08-07T05:15:53.150Z","repository_link":"https://github.com/pallets-eco/wtforms/blob/main/docs/requirements.txt","dependencies":[{"id":587970064,"package_name":"Sphinx","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":587970065,"package_name":"Pallets-Sphinx-Themes","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":587970066,"package_name":"sphinx-issues","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":587970067,"package_name":"sphinxcontrib-log-cabinet","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":587970068,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/tests.yaml","sha":null,"kind":"manifest","created_at":"2023-01-13T16:00:24.595Z","updated_at":"2023-01-13T16:00:24.595Z","repository_link":"https://github.com/pallets-eco/wtforms/blob/main/.github/workflows/tests.yaml","dependencies":[{"id":6890115943,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6890115944,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6890115945,"package_name":"actions/cache","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-01-12T00:36:35.484Z","updated_at":"2024-01-12T00:36:35.484Z","repository_link":"https://github.com/pallets-eco/wtforms/blob/main/pyproject.toml","dependencies":[]}],"score":30.93343841387729,"created_at":"2025-09-08T11:18:23.610Z","updated_at":"2025-10-07T08:24:15.876Z","avatar_url":"https://github.com/pallets-eco.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":12138053,"funding_links":["https://github.com/sponsors/pallets","https://palletsprojects.com/donate","https://tidelift.com/funding/github/pypi/Flask"],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["systems","optimizing-compiler","tensors","unit-testing","systemd","services","init","computational-chemistry","qt5","open-science"],"project_url":"https://science.ecosyste.ms/api/v1/projects/62027","html_url":"https://science.ecosyste.ms/projects/62027"}