{"id":19715652,"url":"https://github.com/pgassmann/teamapps-demolessons","last_synced_at":"2025-04-29T20:30:39.235Z","repository":{"id":41281614,"uuid":"229068379","full_name":"pgassmann/teamapps-demolessons","owner":"pgassmann","description":"Lessons to show TeamApps functionality and to learn how to use TeamApps","archived":false,"fork":false,"pushed_at":"2024-10-03T17:03:09.000Z","size":307,"stargazers_count":1,"open_issues_count":1,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-05T19:01:45.724Z","etag":null,"topics":["java","learn-to-code","teamapps","tutorial"],"latest_commit_sha":null,"homepage":"https://github.com/teamapps-org/teamapps","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pgassmann.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}},"created_at":"2019-12-19T14:12:28.000Z","updated_at":"2022-09-16T22:43:00.000Z","dependencies_parsed_at":"2022-07-05T20:29:42.281Z","dependency_job_id":null,"html_url":"https://github.com/pgassmann/teamapps-demolessons","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgassmann%2Fteamapps-demolessons","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgassmann%2Fteamapps-demolessons/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgassmann%2Fteamapps-demolessons/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgassmann%2Fteamapps-demolessons/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pgassmann","download_url":"https://codeload.github.com/pgassmann/teamapps-demolessons/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251578251,"owners_count":21611999,"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":["java","learn-to-code","teamapps","tutorial"],"created_at":"2024-11-11T22:38:56.932Z","updated_at":"2025-04-29T20:30:38.806Z","avatar_url":"https://github.com/pgassmann.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TeamApps Demo Lessons\n\nLearn how you can build complex Web-Applications within minutes using [TeamApps](https://github.com/teamapps-org/teamapps).\n\nThe Lessons are organised in Modules and Packages. Each `Demo` class can be run through its main class.\nAll Basic Lessons are included in the `DemoLessonsApp`\n\n## Requirements\n\n* Knowledge of Java\n* Interest in learning new concepts\n* Maven\n* JDK 17+\n* IntelliJ IDEA or some other Java IDE\n\n## First steps using IntelliJ IDEA\n\nTo open this project from Github directly in IntelliJ IDEA use the following steps: \n\n* Start IntelliJ IDEA\n* File \u003e New \u003e Project from Version Control...\n* Paste git URL of this Project (On Github click the green Button above \"Clone or download\", then copy the url)\n* Click Clone in IntelliJ dialogue\n\nProject will be cloned to the specified directory and opened. \n\n### Import Maven Project\n\nFirst we need to install the necessary dependencies using Maven. This can take some time if this is the first time you use TeamApps.\n\n* IntelliJ will prompt you to Import the Maven project or automatically import it.\n* In your IntelliJ IDEA Workspace, open the Maven Toolbox on the right.\n* Doubleclick on demo-lessons \u003e Lifecycle \u003e install\n\nIf all works right, you should see BUILD SUCCESS in the Console window\n\n### Mark directories for IDEA\n\nTo enable Auto completion and Validation, IDEA has to know what kind of content is in some Folders.\n\n* Right click `demolessons-basics/src/main/model` \u003e Mark Directory as \u003e Sources Root\n\n### Running the DemoLessonsApp\n\nNow we can start the DemoLessonsApp from IntelliJ IDEA\n\n* In the Project structure (left side oft the window) open `demolessons-basics/src/main/java/org.teamapps.demolessons`\n* in the folder (package) `basics` you see the packages for the individual lessons and in `common` the bottom you see the `DemoLessonsApp` Class\n* Right Click \u003e `Debug 'DemoLessonsApp.main()'`\n* IntelliJ will compile and start the project.\n* In the console you should then see the following output in red:\n\n~~~log\n[main] INFO org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@491666ad{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}\n[main] INFO org.eclipse.jetty.server.Server - Started @4176ms\n~~~\n\nThis means that the DemoLessonsApp is running and the Server is listening on Port 8081.\nYou can access the Application using your Browser on: http://localhost:8081\n\n### Running a single Lesson \n\n* Open the `...Demo` Class in its package. E.g. `demolessons-basics/src/main/java/org.teamapps.demolessons/p1_intro/l01_panel/PanelDemo`\n* Right click on the Class and click on `Debug 'PanelDemo.main()'`\n\nThis will start another Server on Port 8080. You can access a single DemoLesson using your Browser on: http://localhost:8080\n\nYou can only start one Demo at once, you need to stop the running Demo before you start another App on Port 8080, otherwise you will get the following exception:\n\n~~~log\nException in thread \"main\" java.io.IOException: Failed to bind to 0.0.0.0/0.0.0.0:8080\n[...]\nCaused by: java.net.BindException: Address already in use\n~~~\n\n## License\n\nThe [TeamApps Framework](https://github.com/teamapps-org/teamapps) is released under version 2.0 of the [Apache License](https://www.apache.org/licenses/LICENSE-2.0).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpgassmann%2Fteamapps-demolessons","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpgassmann%2Fteamapps-demolessons","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpgassmann%2Fteamapps-demolessons/lists"}