{"id":50897882,"url":"https://github.com/TatuLund/devday-demo-flow","last_synced_at":"2026-07-22T07:01:18.272Z","repository":{"id":47468605,"uuid":"183437774","full_name":"TatuLund/devday-demo-flow","owner":"TatuLund","description":"Vaadin 14 demo application (DevDays May / 2019)","archived":false,"fork":false,"pushed_at":"2021-11-02T11:40:16.000Z","size":266,"stargazers_count":11,"open_issues_count":2,"forks_count":6,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-04-14T14:35:06.678Z","etag":null,"topics":["demo","devday","java","theme","tips-and-tricks","vaadin","vaadin-flow","vaadin-platform","vaadin14","workaround"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TatuLund.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-25T13:15:12.000Z","updated_at":"2022-08-04T05:07:45.000Z","dependencies_parsed_at":"2022-08-27T02:30:32.034Z","dependency_job_id":null,"html_url":"https://github.com/TatuLund/devday-demo-flow","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TatuLund/devday-demo-flow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TatuLund%2Fdevday-demo-flow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TatuLund%2Fdevday-demo-flow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TatuLund%2Fdevday-demo-flow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TatuLund%2Fdevday-demo-flow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TatuLund","download_url":"https://codeload.github.com/TatuLund/devday-demo-flow/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TatuLund%2Fdevday-demo-flow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35751644,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-22T02:00:06.236Z","response_time":124,"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"}},"keywords":["demo","devday","java","theme","tips-and-tricks","vaadin","vaadin-flow","vaadin-platform","vaadin14","workaround"],"created_at":"2026-06-16T01:31:30.084Z","updated_at":"2026-07-22T07:01:18.267Z","avatar_url":"https://github.com/TatuLund.png","language":"Java","funding_links":[],"categories":["java"],"sub_categories":[],"readme":"# devday-demo-flow\n\n## Vaadin 14+ demo application (DevDays May / 2019)\n\nThis is demo application is collection of tips-and-tricks and workarounds.\nThe source of ideas are questions in Vaadin's support channels (Forum, StackOverflow, \nGitHub issue tracker, commercial support, ...)\n\nThis application is not architectural demo about the best progrmming practices.\n\n## Setup\n\nClone project, import it to your IDE and run it with\n\n## Start server\n\nmvn jetty:run\n\nProduction mode\n\nmvn jetty:run -Pproduction\n\n## Open project in Browser\n\nhttp://localhost:8080/myapp\n\n## List of demos\n\n### Login\n\n- Store intended route to Session and use later to route to right view after login\n\n### InitListener\n\n- Use global before enter event for login purposes\n- Setup custom error handler\n- Give notification if app is open on another tab\n\n### MainLayout\n\n- Configure context root to be \"myapp\"\n- AppLayout with key shortcuts\n- Get browser window width\n- Find host address\n- PageConfigurator example\n- Detect Browser window closing by listening \"beforeUnload\" with JavaScript and @ClientCallable callback\n- Setup CustomizedSystemMessages\n\n### AbsoluteLayoutView\n\n- Simplified absolute layout example\n\n### AccordionView\n\n- The complete demo \n\n### DialogView\n\n- Simple dialog example\n- Form and binding with Bean\n- DatePicker with weekend and holiday styles\n\n### FormLayoutView\n\n- Form and binding with Bean \n- Validators\n- Access main layout menu\n- BeforeLeaveObserver\n\n### GridView\n\n- Custom select column for single select\n- Grid context menu\n- ContextMenu to jump to years\n- ContextMenu to filter by month\n- Dynamic cell styling with TemplateRenderer\n- Cell styling with setClassNameGenerator\n- ComponentRenderer example\n- Popup to hide columns\n- CheckBox styling in Popup\n- Injecting custom property to text field to programmatically change color\n- Setup client side event listener with @ClientCallable callback\n- Using single RadioButton element from the RadioButtonGroup\n\n### UploadView\n\n- Drag and drop upload example\n\n### SplitLayoutView\n\n- Workaround with Chart resizing, forced re-flow by JavaScript call\n\n### VaadinBoardView\n\n- Chart re-flow workaround by div wrapping\n- Charts customization and styling to fit dark theme\n\n### ChartUtil\n\n- Chart drill-down\n- Chart plotlines\n- Chart tooltip formatter with conditional JavaScript logic \n- Chart zooming / panning\n\n### ThemeVariantsView\n\n- Some theme variant examples\n\n### GridProView\n\n- Workaround issue clicking save button when editor is open\n\n### TreeGridView\n\n- Selected parents subtree highlighting with class name generator\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTatuLund%2Fdevday-demo-flow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTatuLund%2Fdevday-demo-flow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTatuLund%2Fdevday-demo-flow/lists"}