diff --git a/angular.json b/angular.json
index 2504e4105..d51457a0a 100644
--- a/angular.json
+++ b/angular.json
@@ -1,6 +1,6 @@
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
- "version": 1,
+ "version": 1,
"newProjectRoot": "projects",
"projects": {
"time-tracker": {
@@ -119,6 +119,10 @@
}
}
}
- }},
- "defaultProject": "time-tracker"
-}
+ }
+ },
+ "defaultProject": "time-tracker",
+ "cli": {
+ "analytics": false
+ }
+}
\ No newline at end of file
diff --git a/package.json b/package.json
index 062de50f5..e0bbeb37e 100644
--- a/package.json
+++ b/package.json
@@ -24,13 +24,13 @@
"zone.js": "~0.10.2"
},
"devDependencies": {
- "@angular-devkit/build-angular": "~0.900.4",
+ "@angular-devkit/build-angular": "^0.900.5",
"@angular/cli": "~9.0.4",
"@angular/compiler-cli": "~9.0.3",
"@angular/language-service": "~9.0.3",
- "@types/node": "^12.11.1",
"@types/jasmine": "~3.5.0",
"@types/jasminewd2": "~2.0.3",
+ "@types/node": "^12.11.1",
"codelyzer": "^5.1.2",
"jasmine-core": "~3.5.0",
"jasmine-spec-reporter": "~4.2.1",
diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts
index 06c734263..a4b7deec4 100644
--- a/src/app/app-routing.module.ts
+++ b/src/app/app-routing.module.ts
@@ -1,11 +1,24 @@
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
+import { GettingStartedComponent } from './components/options-sidebar/getting-started/getting-started.component';
+import { ReportsComponent } from './components/options-sidebar/reports/reports.component';
+import { TimeClockComponent } from './components/options-sidebar/time-clock/time-clock.component';
+import { TimeEntriesComponent } from './components/options-sidebar/time-entries/time-entries.component';
+import { TimeOffComponent } from './components/options-sidebar/time-off/time-off.component';
-const routes: Routes = [];
+const routes: Routes = [
+ {path: 'getting-started', component: GettingStartedComponent},
+ {path: 'reports', component: ReportsComponent},
+ {path: 'time-clock', component: TimeClockComponent},
+ {path: 'time-entries', component: TimeEntriesComponent},
+ {path: 'time-off', component: TimeOffComponent},
+ {path: '', pathMatch: 'full', redirectTo: 'getting-started'},
+ {path: '**', pathMatch: 'full', redirectTo: 'getting-started'},
+];
@NgModule({
- imports: [RouterModule.forRoot(routes)],
+ imports: [RouterModule.forRoot(routes, { useHash: true })],
exports: [RouterModule]
})
export class AppRoutingModule { }
diff --git a/src/app/app.component.html b/src/app/app.component.html
index 0c510c671..98c2c932e 100644
--- a/src/app/app.component.html
+++ b/src/app/app.component.html
@@ -1,534 +1,5 @@
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
{{ title }} app is running!
-
-
-
-
-
-
-
Resources
-
Here are some links to help you get started:
-
-
-
-
-
Next Steps
-
What do you want to do next with your app?
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Run and Watch Tests
-
-
-
-
-
-
Build for Production
-
-
-
-
-
-
ng generate component xyz
-
ng add @angular/material
-
ng add @angular/pwa
-
ng add _____
-
ng test
-
ng build --prod
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
+
+
+
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index 2c3ba2995..5bf489d58 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -3,10 +3,18 @@ import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
+import { NavbarComponent } from './components/shared/navbar/navbar.component';
+import { UserComponent } from './components/shared/user/user.component';
+import { SidebarComponent } from './components/shared/sidebar/sidebar.component';
+import { ClockComponent } from './components/shared/clock/clock.component';
@NgModule({
declarations: [
- AppComponent
+ AppComponent,
+ NavbarComponent,
+ UserComponent,
+ SidebarComponent,
+ ClockComponent,
],
imports: [
BrowserModule,
@@ -16,3 +24,4 @@ import { AppComponent } from './app.component';
bootstrap: [AppComponent]
})
export class AppModule { }
+
diff --git a/src/app/components/options-sidebar/getting-started/getting-started.component.css b/src/app/components/options-sidebar/getting-started/getting-started.component.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/app/components/options-sidebar/getting-started/getting-started.component.html b/src/app/components/options-sidebar/getting-started/getting-started.component.html
new file mode 100644
index 000000000..1dcdc1e99
--- /dev/null
+++ b/src/app/components/options-sidebar/getting-started/getting-started.component.html
@@ -0,0 +1,5 @@
+
+
+
getting-started works!
+
+
\ No newline at end of file
diff --git a/src/app/components/options-sidebar/getting-started/getting-started.component.spec.ts b/src/app/components/options-sidebar/getting-started/getting-started.component.spec.ts
new file mode 100644
index 000000000..d36756064
--- /dev/null
+++ b/src/app/components/options-sidebar/getting-started/getting-started.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { GettingStartedComponent } from './getting-started.component';
+
+describe('GettingStartedComponent', () => {
+ let component: GettingStartedComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ GettingStartedComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(GettingStartedComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/options-sidebar/getting-started/getting-started.component.ts b/src/app/components/options-sidebar/getting-started/getting-started.component.ts
new file mode 100644
index 000000000..91d9ed409
--- /dev/null
+++ b/src/app/components/options-sidebar/getting-started/getting-started.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-getting-started',
+ templateUrl: './getting-started.component.html',
+ styleUrls: ['./getting-started.component.css']
+})
+export class GettingStartedComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/options-sidebar/reports/reports.component.css b/src/app/components/options-sidebar/reports/reports.component.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/app/components/options-sidebar/reports/reports.component.html b/src/app/components/options-sidebar/reports/reports.component.html
new file mode 100644
index 000000000..c779010be
--- /dev/null
+++ b/src/app/components/options-sidebar/reports/reports.component.html
@@ -0,0 +1,5 @@
+
\ No newline at end of file
diff --git a/src/app/components/options-sidebar/reports/reports.component.spec.ts b/src/app/components/options-sidebar/reports/reports.component.spec.ts
new file mode 100644
index 000000000..8b8ed574f
--- /dev/null
+++ b/src/app/components/options-sidebar/reports/reports.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { ReportsComponent } from './reports.component';
+
+describe('ReportsComponent', () => {
+ let component: ReportsComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ ReportsComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(ReportsComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/options-sidebar/reports/reports.component.ts b/src/app/components/options-sidebar/reports/reports.component.ts
new file mode 100644
index 000000000..f45b048b4
--- /dev/null
+++ b/src/app/components/options-sidebar/reports/reports.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-reports',
+ templateUrl: './reports.component.html',
+ styleUrls: ['./reports.component.css']
+})
+export class ReportsComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/options-sidebar/time-clock/time-clock.component.css b/src/app/components/options-sidebar/time-clock/time-clock.component.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/app/components/options-sidebar/time-clock/time-clock.component.html b/src/app/components/options-sidebar/time-clock/time-clock.component.html
new file mode 100644
index 000000000..80644640c
--- /dev/null
+++ b/src/app/components/options-sidebar/time-clock/time-clock.component.html
@@ -0,0 +1,5 @@
+
+
+
time-clock works!
+
+
\ No newline at end of file
diff --git a/src/app/components/options-sidebar/time-clock/time-clock.component.spec.ts b/src/app/components/options-sidebar/time-clock/time-clock.component.spec.ts
new file mode 100644
index 000000000..1c55547bb
--- /dev/null
+++ b/src/app/components/options-sidebar/time-clock/time-clock.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { TimeClockComponent } from './time-clock.component';
+
+describe('TimeClockComponent', () => {
+ let component: TimeClockComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ TimeClockComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(TimeClockComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/options-sidebar/time-clock/time-clock.component.ts b/src/app/components/options-sidebar/time-clock/time-clock.component.ts
new file mode 100644
index 000000000..f34bb7b11
--- /dev/null
+++ b/src/app/components/options-sidebar/time-clock/time-clock.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-time-clock',
+ templateUrl: './time-clock.component.html',
+ styleUrls: ['./time-clock.component.css']
+})
+export class TimeClockComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/options-sidebar/time-entries/time-entries.component.css b/src/app/components/options-sidebar/time-entries/time-entries.component.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/app/components/options-sidebar/time-entries/time-entries.component.html b/src/app/components/options-sidebar/time-entries/time-entries.component.html
new file mode 100644
index 000000000..f4ee1f815
--- /dev/null
+++ b/src/app/components/options-sidebar/time-entries/time-entries.component.html
@@ -0,0 +1,5 @@
+
+
+
time-entries works!
+
+
\ No newline at end of file
diff --git a/src/app/components/options-sidebar/time-entries/time-entries.component.spec.ts b/src/app/components/options-sidebar/time-entries/time-entries.component.spec.ts
new file mode 100644
index 000000000..2ed82ad2e
--- /dev/null
+++ b/src/app/components/options-sidebar/time-entries/time-entries.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { TimeEntriesComponent } from './time-entries.component';
+
+describe('TimeEntriesComponent', () => {
+ let component: TimeEntriesComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ TimeEntriesComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(TimeEntriesComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/options-sidebar/time-entries/time-entries.component.ts b/src/app/components/options-sidebar/time-entries/time-entries.component.ts
new file mode 100644
index 000000000..17ea41840
--- /dev/null
+++ b/src/app/components/options-sidebar/time-entries/time-entries.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-time-entries',
+ templateUrl: './time-entries.component.html',
+ styleUrls: ['./time-entries.component.css']
+})
+export class TimeEntriesComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/options-sidebar/time-off/time-off.component.css b/src/app/components/options-sidebar/time-off/time-off.component.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/app/components/options-sidebar/time-off/time-off.component.html b/src/app/components/options-sidebar/time-off/time-off.component.html
new file mode 100644
index 000000000..50aa714a8
--- /dev/null
+++ b/src/app/components/options-sidebar/time-off/time-off.component.html
@@ -0,0 +1,5 @@
+
\ No newline at end of file
diff --git a/src/app/components/options-sidebar/time-off/time-off.component.spec.ts b/src/app/components/options-sidebar/time-off/time-off.component.spec.ts
new file mode 100644
index 000000000..dfa074f03
--- /dev/null
+++ b/src/app/components/options-sidebar/time-off/time-off.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { TimeOffComponent } from './time-off.component';
+
+describe('TimeOffComponent', () => {
+ let component: TimeOffComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ TimeOffComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(TimeOffComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/options-sidebar/time-off/time-off.component.ts b/src/app/components/options-sidebar/time-off/time-off.component.ts
new file mode 100644
index 000000000..e41c61bdc
--- /dev/null
+++ b/src/app/components/options-sidebar/time-off/time-off.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-time-off',
+ templateUrl: './time-off.component.html',
+ styleUrls: ['./time-off.component.css']
+})
+export class TimeOffComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/shared/clock/clock.component.css b/src/app/components/shared/clock/clock.component.css
new file mode 100644
index 000000000..95c9b0894
--- /dev/null
+++ b/src/app/components/shared/clock/clock.component.css
@@ -0,0 +1,3 @@
+.time-clock-color {
+ color: white;
+}
\ No newline at end of file
diff --git a/src/app/components/shared/clock/clock.component.html b/src/app/components/shared/clock/clock.component.html
new file mode 100644
index 000000000..1a4412038
--- /dev/null
+++ b/src/app/components/shared/clock/clock.component.html
@@ -0,0 +1,8 @@
+
+
+
+
+
+
{{ hour | number: '2.0-2' }}:{{ minutes | number: '2.0-2' }}:{{ seconds | number: '2.0-2' }}
+
+
\ No newline at end of file
diff --git a/src/app/components/shared/clock/clock.component.spec.ts b/src/app/components/shared/clock/clock.component.spec.ts
new file mode 100644
index 000000000..22d176fcc
--- /dev/null
+++ b/src/app/components/shared/clock/clock.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { ClockComponent } from './clock.component';
+
+describe('ClockComponent', () => {
+ let component: ClockComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ ClockComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(ClockComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/shared/clock/clock.component.ts b/src/app/components/shared/clock/clock.component.ts
new file mode 100644
index 000000000..cf8f474d4
--- /dev/null
+++ b/src/app/components/shared/clock/clock.component.ts
@@ -0,0 +1,30 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-clock',
+ templateUrl: './clock.component.html',
+ styleUrls: ['./clock.component.css']
+})
+export class ClockComponent implements OnInit {
+
+ currentDate: Date;
+ hour: number;
+ minutes: number;
+ seconds: number;
+ displayTime: boolean;
+
+ constructor() {
+ this.currentDate = new Date();
+ this.hour = this.currentDate.getHours();
+ this.minutes = this.currentDate.getMinutes();
+ this.seconds = this.currentDate.getSeconds();
+ this.displayTime = false;
+ setTimeout(() => {
+ this.displayTime = true;
+ }, 3000);
+ }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/shared/navbar/navbar.component.css b/src/app/components/shared/navbar/navbar.component.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/src/app/components/shared/navbar/navbar.component.html b/src/app/components/shared/navbar/navbar.component.html
new file mode 100644
index 000000000..e8a6fca69
--- /dev/null
+++ b/src/app/components/shared/navbar/navbar.component.html
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/src/app/components/shared/navbar/navbar.component.spec.ts b/src/app/components/shared/navbar/navbar.component.spec.ts
new file mode 100644
index 000000000..4e5f590eb
--- /dev/null
+++ b/src/app/components/shared/navbar/navbar.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { NavbarComponent } from './navbar.component';
+
+describe('NavbarComponent', () => {
+ let component: NavbarComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ NavbarComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(NavbarComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/shared/navbar/navbar.component.ts b/src/app/components/shared/navbar/navbar.component.ts
new file mode 100644
index 000000000..18d7b70db
--- /dev/null
+++ b/src/app/components/shared/navbar/navbar.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-navbar',
+ templateUrl: './navbar.component.html',
+ styleUrls: ['./navbar.component.css']
+})
+export class NavbarComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/shared/sidebar/sidebar.component.css b/src/app/components/shared/sidebar/sidebar.component.css
new file mode 100644
index 000000000..3a0994ff8
--- /dev/null
+++ b/src/app/components/shared/sidebar/sidebar.component.css
@@ -0,0 +1,42 @@
+body {
+ overflow-x: hidden;
+}
+
+#sidebar-wrapper {
+ min-height: 100vh;
+ margin-left: -15rem;
+ -webkit-transition: margin .25s ease-out;
+ -moz-transition: margin .25s ease-out;
+ -o-transition: margin .25s ease-out;
+ transition: margin .25s ease-out;
+}
+
+#sidebar-wrapper .sidebar-heading {
+ padding: 0.875rem 1.25rem;
+ font-size: 1.2rem;
+}
+
+#sidebar-wrapper .list-group {
+ width: 15rem;
+}
+
+#page-content-wrapper {
+ min-width: 100vw;
+}
+
+#wrapper.toggled #sidebar-wrapper {
+ margin-left: 0;
+}
+
+@media (min-width: 768px) {
+ #sidebar-wrapper {
+ margin-left: 0;
+ }
+ #page-content-wrapper {
+ min-width: 0;
+ width: 100%;
+ }
+ #wrapper.toggled #sidebar-wrapper {
+ margin-left: -15rem;
+ }
+}
\ No newline at end of file
diff --git a/src/app/components/shared/sidebar/sidebar.component.html b/src/app/components/shared/sidebar/sidebar.component.html
new file mode 100644
index 000000000..33ef13815
--- /dev/null
+++ b/src/app/components/shared/sidebar/sidebar.component.html
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/src/app/components/shared/sidebar/sidebar.component.spec.ts b/src/app/components/shared/sidebar/sidebar.component.spec.ts
new file mode 100644
index 000000000..e49c1a505
--- /dev/null
+++ b/src/app/components/shared/sidebar/sidebar.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { SidebarComponent } from './sidebar.component';
+
+describe('SidebarComponent', () => {
+ let component: SidebarComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ SidebarComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(SidebarComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/shared/sidebar/sidebar.component.ts b/src/app/components/shared/sidebar/sidebar.component.ts
new file mode 100644
index 000000000..a9b4922d0
--- /dev/null
+++ b/src/app/components/shared/sidebar/sidebar.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-sidebar',
+ templateUrl: './sidebar.component.html',
+ styleUrls: ['./sidebar.component.css']
+})
+export class SidebarComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/components/shared/user/user.component.css b/src/app/components/shared/user/user.component.css
new file mode 100644
index 000000000..6d72c65c7
--- /dev/null
+++ b/src/app/components/shared/user/user.component.css
@@ -0,0 +1,3 @@
+.help-color {
+ color: white;
+}
\ No newline at end of file
diff --git a/src/app/components/shared/user/user.component.html b/src/app/components/shared/user/user.component.html
new file mode 100644
index 000000000..9b4a44731
--- /dev/null
+++ b/src/app/components/shared/user/user.component.html
@@ -0,0 +1,40 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/components/shared/user/user.component.spec.ts b/src/app/components/shared/user/user.component.spec.ts
new file mode 100644
index 000000000..bf5e41717
--- /dev/null
+++ b/src/app/components/shared/user/user.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { UserComponent } from './user.component';
+
+describe('UserComponent', () => {
+ let component: UserComponent;
+ let fixture: ComponentFixture
;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ UserComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(UserComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should be created', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/components/shared/user/user.component.ts b/src/app/components/shared/user/user.component.ts
new file mode 100644
index 000000000..afec83856
--- /dev/null
+++ b/src/app/components/shared/user/user.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-user',
+ templateUrl: './user.component.html',
+ styleUrls: ['./user.component.css']
+})
+export class UserComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/assets/img/ioet.png b/src/assets/img/ioet.png
new file mode 100644
index 000000000..d3987976b
Binary files /dev/null and b/src/assets/img/ioet.png differ
diff --git a/src/index.html b/src/index.html
index 8ccb959a6..026cc1ed1 100644
--- a/src/index.html
+++ b/src/index.html
@@ -1,13 +1,22 @@
+
-
- TimeTracker
-
-
-
+
+ TimeTracker
+
+
+
+
+
+
-
+
+
+
+
+
+