Skip to content

Commit 2a403ca

Browse files
fix: update mkdocs content
Signed-off-by: K Siva Prasad Reddy <sivaprasadreddy.k@gmail.com>
1 parent 42e2355 commit 2a403ca

File tree

3 files changed

+78
-23
lines changed

3 files changed

+78
-23
lines changed

README.md

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,3 @@ actionable insights on which features are most well-received by users.
77

88
To learn more, visit https://feature-tracker.github.io/.
99

10-
## How to contribute?
11-
* Run the application and let us know if you face any issue
12-
* Review the code and add your review comments
13-
14-
## Development Setup
15-
* Install Mkdocs https://www.mkdocs.org/#installation
16-
* `pip install mkdocs`
17-
* `pip install mkdocs-material`
18-
* Run locally: `mkdocs serve` and open http://127.0.0.1:8000/
19-
* Deploy Site to GH Pages : `mkdocs gh-deploy`

docs/index.md

Lines changed: 72 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,59 @@ You need to install the following software:
1212
* [IntelliJ IDEA](https://www.jetbrains.com/idea/)
1313
* [Taskfile](https://taskfile.dev/)
1414

15+
## Application Architecture
16+
The feature tracker application is being developed following Microservices Architecture.
17+
This application has the following services:
18+
19+
* **feature-service**: Manages products, features, releases. [See more](https://github.com/feature-tracker/feature-service/blob/main/README.md)
20+
* **user-service**: Manages users by interacting with Keycloak. [See more](https://github.com/feature-tracker/user-service/blob/main/README.md)
21+
* **notification-service**: Handles events published by other services and sends notification emails. [See more](https://github.com/feature-tracker/notification-service/blob/main/README.md)
22+
* **config-server**: Central Config server to store all the microservices configuration. [See more](https://github.com/feature-tracker/config-server/blob/main/README.md)
23+
* **api-gateway**: API Gateway to store all the microservices. [See more](https://github.com/feature-tracker/api-gateway/blob/main/README.md)
24+
* **feature-tracker-angular**: Frontend SPA for feature-tracker application. [See more](https://github.com/feature-tracker/feature-tracker-angular/blob/main/README.md)
25+
26+
## Getting Started
27+
The application components are published as Docker images on DockerHub.
28+
The Keycloak Identity Management System is used as an OAuth 2.0 server to secure the application.
29+
30+
31+
> **IMPORTANT:**
32+
>
33+
> Frontend application uses front-channel to login with Keycloak.
34+
> Backend microservices uses back-channel to validate auth tokens.
35+
>
36+
> To use the same host name for both scenarios,
37+
> add the host name `keycloak` to `/etc/hosts` file pointing to `127.0.0.1`.
38+
>
39+
> ```shell
40+
> 127.0.0.1 keycloak
41+
> ```
42+
>
43+
44+
[Task](https://taskfile.dev/) is a task runner that we can use to run any arbitrary commands in an easier way.
45+
46+
Install [Task CLI](https://taskfile.dev/installation/).
47+
48+
```shell
49+
$ brew install go-task
50+
(or)
51+
$ go install github.com/go-task/task/v3/cmd/task@latest
52+
53+
#verify task version
54+
$ task --version
55+
Task version: 3.35.1
56+
```
57+
58+
Now, you can run the application locally using docker-compose as follows:
59+
60+
```shell
61+
$ git clone https://github.com/feature-tracker/docker-infra.git
62+
$ cd docker-infra
63+
$ task start
64+
```
65+
66+
You can access the Feature Tracker application at http://localhost:4200
67+
1568
## Local Development
1669

1770
**1.Clone the repositories**
@@ -26,24 +79,17 @@ $ git clone https://github.com/feature-tracker/user-service.git
2679
$ git clone https://github.com/feature-tracker/feature-tracker-angular.git
2780
```
2881

29-
**2.Start all the required services(Keycloak, databases, message brokers, etc.)**
82+
**2. Build Docker images of all the components**
3083

3184
```shell
3285
$ cd docker-infra
33-
$ task start_infra
86+
$ ./local-build.sh
3487
```
3588

36-
**IMPORTANT:** Add the host name `keycloak` to `/etc/hosts` file pointing to `127.0.0.1`.
89+
**3.Start the entire application**
3790

38-
```shell
39-
127.0.0.1 keycloak
40-
```
41-
42-
**3.Run backend microservices.**
43-
44-
You can run the individual microservices from the IDE.
45-
46-
Alternatively, you can start all the microservices and their dependent services using Docker by running the following command:
91+
You can start all the components of the system and their dependent services(Keycloak, databases, message brokers, etc.)
92+
using Docker Compose by running the following command:
4793

4894
```shell
4995
$ task start
@@ -55,7 +101,20 @@ Examples:
55101

56102
* `curl http://localhost:8989/features/api/products`
57103

58-
You can access the Feature Tracker Angular application at http://localhost:4200
104+
You can access the Feature Tracker application at http://localhost:4200
105+
106+
**4.Debugging/Running Microservices from IDE**
107+
108+
You may want to start the infra components as Docker containers and run specific microservice from IDE.
109+
110+
In that case, start all the infra components(Keycloak, databases, message brokers, etc.) as follows:
111+
112+
```shell
113+
$ cd docker-infra
114+
$ task start_infra
115+
```
116+
117+
Now, you can run the individual microservices from the IDE.
59118

60119
## How to contribute?
61120
* Run the application and let us know if you face any issue

mkdocs-setup.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Mkdocs Setup
2+
* Install Mkdocs https://www.mkdocs.org/#installation
3+
* `pip install mkdocs`
4+
* `pip install mkdocs-material`
5+
* Run locally: `mkdocs serve` and open http://127.0.0.1:8000/
6+
* Deploy Site to GH Pages : `mkdocs gh-deploy`

0 commit comments

Comments
 (0)