diff --git a/README.md b/README.md index ff328795..35b35110 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,12 @@ application that is built of few components. Whole application has been made in spirit of clean code and architecture. We are thinking about security and performance best practices. Project is deeply tested on backend site and uses Github Actions for CI/CD. +## Database diagram + +
+ TechStack +
+ ## How to run Application uses docker compose technology to run all components. To run application you have to install docker. @@ -45,6 +51,10 @@ cd scripts/dev ## Tech stack +
+ TechStack +
+ 1. Frontend * Angular 17, @@ -74,3 +84,71 @@ cd scripts/dev * KeyCloak, * Mapstruct, * Lombok. + +## Screenshots + +* Login + +
+ TechStack +
+ +* Register + +
+ TechStack +
+ +* Projects + +
+ TechStack +
+ +* Project settings + +
+ TechStack +
+ +* Sprints + +
+ TechStack +
+ +* Sprints Burndown + +
+ TechStack +
+ +* Task + +
+ TechStack +
+ +* Task Comments + +
+ TechStack +
+ +* Creating new backlog item + +
+ TechStack +
+ +* Tasks in Boards + +
+ TechStack +
+ +* Tasks grouped by member + +
+ TechStack +
diff --git a/corn-backend/src/main/java/dev/corn/cornbackend/config/PlaceholderData.java b/corn-backend/src/main/java/dev/corn/cornbackend/config/PlaceholderData.java index 7d0e72e5..909da0f5 100644 --- a/corn-backend/src/main/java/dev/corn/cornbackend/config/PlaceholderData.java +++ b/corn-backend/src/main/java/dev/corn/cornbackend/config/PlaceholderData.java @@ -105,7 +105,7 @@ public void run(String... args) { for (int i = 0; i < 8; i++) { sprintService.addNewSprint(new SprintRequest( - project.getProjectId(), String.format("Sprint %d", i), prevDate, prevDate.plusDays(7), + project.getProjectId(), String.format("Sprint %d", i), prevDate, prevDate.plusDays(7L), String.format("Sprintd %d description", i) ), projectOwner); diff --git a/corn-frontend/src/app/core/interfaces/home/feature.interface.ts b/corn-frontend/src/app/core/interfaces/home/feature.interface.ts index 7c69842f..dcd29749 100644 --- a/corn-frontend/src/app/core/interfaces/home/feature.interface.ts +++ b/corn-frontend/src/app/core/interfaces/home/feature.interface.ts @@ -3,4 +3,5 @@ export interface Feature { label: string; content: string; isLeft: boolean; + imagePath: string; } \ No newline at end of file diff --git a/corn-frontend/src/app/pages/home/feature/feature.component.html b/corn-frontend/src/app/pages/home/feature/feature.component.html index c0adcf40..181c7f63 100644 --- a/corn-frontend/src/app/pages/home/feature/feature.component.html +++ b/corn-frontend/src/app/pages/home/feature/feature.component.html @@ -1,4 +1,4 @@ -
+
@if (feature.isLeft) {

@@ -11,7 +11,9 @@

} -
+
+ login-page +
@if (!feature.isLeft) {
diff --git a/corn-frontend/src/app/pages/home/feature/feature.component.ts b/corn-frontend/src/app/pages/home/feature/feature.component.ts index 5568e5de..625f32be 100644 --- a/corn-frontend/src/app/pages/home/feature/feature.component.ts +++ b/corn-frontend/src/app/pages/home/feature/feature.component.ts @@ -1,12 +1,14 @@ import { Component, Input } from '@angular/core'; import { MatTab } from "@angular/material/tabs"; import { Feature } from "@core/interfaces/home/feature.interface"; +import { NgOptimizedImage } from "@angular/common"; @Component({ selector: 'app-feature', standalone: true, imports: [ - MatTab + MatTab, + NgOptimizedImage ], templateUrl: './feature.component.html', styleUrl: './feature.component.scss' diff --git a/corn-frontend/src/app/pages/home/home.component.html b/corn-frontend/src/app/pages/home/home.component.html index 188802b5..bf84820a 100644 --- a/corn-frontend/src/app/pages/home/home.component.html +++ b/corn-frontend/src/app/pages/home/home.component.html @@ -1,4 +1,4 @@ - +
icon @@ -6,13 +6,13 @@ - -
-
+
+ login-page +
@@ -47,23 +49,30 @@
-

Built with modern technologies

+

Built on top of modern technologies

-

We offer simple, responsive app to manage small scrum teams

+

We use modern technologies to achieve best user and developer experience.

-
+
+ login-page +
-
+
+ login-page +
-

Well documented

+

Productivity first

-

Our app has well documented api and code. It is prepared for expansion.

+

+ We offer easy way to manage your teams tasks in each sprint.
+ You can easily group the board by tasks or each member. +

@@ -71,14 +80,17 @@
-

Followed by the best practices

+

Security matters

- We follow test driven development and material design to achieve best code and ui quality. + We care about your privacy, that's why we use the best security practices to keep your data safe.
+ We use keycloak as our authentication provider to ensure application safety.

-
+
+ login-page +
@@ -88,4 +100,4 @@ Privacy Policy Contact us: support@cornapp.com - \ No newline at end of file + diff --git a/corn-frontend/src/app/pages/home/home.component.ts b/corn-frontend/src/app/pages/home/home.component.ts index 45305e81..c4e1bbb3 100644 --- a/corn-frontend/src/app/pages/home/home.component.ts +++ b/corn-frontend/src/app/pages/home/home.component.ts @@ -53,25 +53,29 @@ export class HomeComponent implements OnInit { content: "We offer easy way to manage your different projects. Each project is one place allowing you to switch between them easily.", isLeft: false, label: "Manage Projects", - title: "All projects in one place" + title: "All projects in one place", + imagePath: "assets/home/projects_list.png" }, { content: "You can easily plan new sprints and manage them. Everything is very simple.", isLeft: true, label: "Manage Sprints", - title: "One view to rule them all" + title: "One view to rule them all", + imagePath: "assets/home/sprints.png" }, { content: "Add, remove and edit tasks in appropriate sprint. Manage descriptions, add comments and assign them to users.", isLeft: false, label: "Work with Tasks", - title: "Easy to add, easy to remove" + title: "Easy to add, easy to remove", + imagePath: "assets/home/task.png" }, { - content: "Manage your backlog entries to easily deal with work to do. Easy view for whole work.", + content: "You can easily analyze your sprints and see how your team is doing. You can see how much work is done and how much is left to do.", isLeft: true, - label: "Deal with Backlog", - title: "All tasks in one backlog" + label: "Analyze your sprints", + title: "Analysis is a key", + imagePath: "assets/home/sprint_burndown.png" } ]; } diff --git a/corn-frontend/src/assets/home/board_group_member.png b/corn-frontend/src/assets/home/board_group_member.png new file mode 100644 index 00000000..6cb69456 Binary files /dev/null and b/corn-frontend/src/assets/home/board_group_member.png differ diff --git a/corn-frontend/src/assets/home/board_no_group.png b/corn-frontend/src/assets/home/board_no_group.png new file mode 100644 index 00000000..3ac367a1 Binary files /dev/null and b/corn-frontend/src/assets/home/board_no_group.png differ diff --git a/corn-frontend/src/assets/home/login.png b/corn-frontend/src/assets/home/login.png new file mode 100644 index 00000000..bbc13cb1 Binary files /dev/null and b/corn-frontend/src/assets/home/login.png differ diff --git a/corn-frontend/src/assets/home/new_item.png b/corn-frontend/src/assets/home/new_item.png new file mode 100644 index 00000000..1bd92ded Binary files /dev/null and b/corn-frontend/src/assets/home/new_item.png differ diff --git a/corn-frontend/src/assets/home/project_settings.png b/corn-frontend/src/assets/home/project_settings.png new file mode 100644 index 00000000..59380e91 Binary files /dev/null and b/corn-frontend/src/assets/home/project_settings.png differ diff --git a/corn-frontend/src/assets/home/projects_list.png b/corn-frontend/src/assets/home/projects_list.png new file mode 100644 index 00000000..95a54743 Binary files /dev/null and b/corn-frontend/src/assets/home/projects_list.png differ diff --git a/corn-frontend/src/assets/home/register.png b/corn-frontend/src/assets/home/register.png new file mode 100644 index 00000000..d658e0bf Binary files /dev/null and b/corn-frontend/src/assets/home/register.png differ diff --git a/corn-frontend/src/assets/home/sprint_burndown.png b/corn-frontend/src/assets/home/sprint_burndown.png new file mode 100644 index 00000000..60a8b12a Binary files /dev/null and b/corn-frontend/src/assets/home/sprint_burndown.png differ diff --git a/corn-frontend/src/assets/home/sprints.png b/corn-frontend/src/assets/home/sprints.png new file mode 100644 index 00000000..abff0497 Binary files /dev/null and b/corn-frontend/src/assets/home/sprints.png differ diff --git a/corn-frontend/src/assets/home/task.png b/corn-frontend/src/assets/home/task.png new file mode 100644 index 00000000..39a4dfc6 Binary files /dev/null and b/corn-frontend/src/assets/home/task.png differ diff --git a/corn-frontend/src/assets/home/task_comments.png b/corn-frontend/src/assets/home/task_comments.png new file mode 100644 index 00000000..a3d9750c Binary files /dev/null and b/corn-frontend/src/assets/home/task_comments.png differ diff --git a/corn-frontend/src/assets/home/tech_stack.png b/corn-frontend/src/assets/home/tech_stack.png new file mode 100644 index 00000000..8bf622f5 Binary files /dev/null and b/corn-frontend/src/assets/home/tech_stack.png differ diff --git a/screenshots/board_group_member.png b/screenshots/board_group_member.png new file mode 100644 index 00000000..6cb69456 Binary files /dev/null and b/screenshots/board_group_member.png differ diff --git a/screenshots/board_no_group.png b/screenshots/board_no_group.png new file mode 100644 index 00000000..3ac367a1 Binary files /dev/null and b/screenshots/board_no_group.png differ diff --git a/screenshots/db.drawio.png b/screenshots/db.drawio.png new file mode 100644 index 00000000..37b9b3d5 Binary files /dev/null and b/screenshots/db.drawio.png differ diff --git a/screenshots/login.png b/screenshots/login.png new file mode 100644 index 00000000..bbc13cb1 Binary files /dev/null and b/screenshots/login.png differ diff --git a/screenshots/new_item.png b/screenshots/new_item.png new file mode 100644 index 00000000..1bd92ded Binary files /dev/null and b/screenshots/new_item.png differ diff --git a/screenshots/project_settings.png b/screenshots/project_settings.png new file mode 100644 index 00000000..59380e91 Binary files /dev/null and b/screenshots/project_settings.png differ diff --git a/screenshots/projects_list.png b/screenshots/projects_list.png new file mode 100644 index 00000000..95a54743 Binary files /dev/null and b/screenshots/projects_list.png differ diff --git a/screenshots/register.png b/screenshots/register.png new file mode 100644 index 00000000..d658e0bf Binary files /dev/null and b/screenshots/register.png differ diff --git a/screenshots/sprint_burndown.png b/screenshots/sprint_burndown.png new file mode 100644 index 00000000..60a8b12a Binary files /dev/null and b/screenshots/sprint_burndown.png differ diff --git a/screenshots/sprints.png b/screenshots/sprints.png new file mode 100644 index 00000000..abff0497 Binary files /dev/null and b/screenshots/sprints.png differ diff --git a/screenshots/task.png b/screenshots/task.png new file mode 100644 index 00000000..39a4dfc6 Binary files /dev/null and b/screenshots/task.png differ diff --git a/screenshots/task_comments.png b/screenshots/task_comments.png new file mode 100644 index 00000000..a3d9750c Binary files /dev/null and b/screenshots/task_comments.png differ diff --git a/screenshots/tech_stack.png b/screenshots/tech_stack.png new file mode 100644 index 00000000..8bf622f5 Binary files /dev/null and b/screenshots/tech_stack.png differ