mirror of
https://github.com/dat515-2025/Group-8.git
synced 2026-03-22 06:57:47 +01:00
Compare commits
3 Commits
515106b238
...
3557b3ea13
| Author | SHA1 | Date | |
|---|---|---|---|
| 3557b3ea13 | |||
| 4a1a9f03a1 | |||
| b1be15f559 |
@@ -7,64 +7,64 @@ Focus on areas that align with your project goals and interests.
|
|||||||
The core deliverables are required.
|
The core deliverables are required.
|
||||||
This means that you must get at least 2 points for each item in this category.
|
This means that you must get at least 2 points for each item in this category.
|
||||||
|
|
||||||
| **Category** | **Item** | **Max Points** | **Points** | **Comments** |
|
| **Category** | **Item** | **Max Points** | **Points** | **Comments** |
|
||||||
|----------------------------------| --------------------------------------- | -------------- |-------------------------------------------------|---------------|
|
|----------------------------------|-----------------------------------------|----------------|-------------------------------------------------|--------------|
|
||||||
| **Core Deliverables (Required)** | | | | |
|
| **Core Deliverables (Required)** | | | | |
|
||||||
| Codebase & Organization | Well-organized project structure | 5 | 5 | |
|
| Codebase & Organization | Well-organized project structure | 5 | 5 | |
|
||||||
| | Clean, readable code | 5 | 4 | |
|
| | Clean, readable code | 5 | 4 | |
|
||||||
| | Use planning tool (e.g., GitHub issues) | 5 | 4 | |
|
| | Use planning tool (e.g., GitHub issues) | 5 | 4 | |
|
||||||
| | Proper version control usage | 5 | 5 | |
|
| | Proper version control usage | 5 | 5 | |
|
||||||
| 23 | Complete source code | 5 | 5 | |
|
| 23 | Complete source code | 5 | 5 | |
|
||||||
| Documentation | Comprehensive reproducibility report | 10 | 4-5 | |
|
| Documentation | Comprehensive reproducibility report | 10 | 4-5 | |
|
||||||
| | Updated design document | 5 | 2 | |
|
| | Updated design document | 5 | 2 | |
|
||||||
| | Clear build/deployment instructions | 5 | 2 | |
|
| | Clear build/deployment instructions | 5 | 2 | |
|
||||||
| | Troubleshooting guide | 5 | 1 | |
|
| | Troubleshooting guide | 5 | 1 | |
|
||||||
| | Completed self-assessment table | 5 | 2 | |
|
| | Completed self-assessment table | 5 | 2 | |
|
||||||
| 14 | Hour sheets for all members | 5 | 3 | |
|
| 14 | Hour sheets for all members | 5 | 3 | |
|
||||||
| Presentation Video | Project demonstration | 5 | 0 | |
|
| Presentation Video | Project demonstration | 5 | 0 | |
|
||||||
| | Code walk-through | 5 | 0 | |
|
| | Code walk-through | 5 | 0 | |
|
||||||
| 0 | Deployment showcase | 5 | 0 | |
|
| 0 | Deployment showcase | 5 | 0 | |
|
||||||
| **Technical Implementation** | | | | |
|
| **Technical Implementation** | | | | |
|
||||||
| Application Functionality | Basic functionality works | 10 | 8 | |
|
| Application Functionality | Basic functionality works | 10 | 8 | |
|
||||||
| | Advanced features implemented | 10 | 0 | |
|
| | Advanced features implemented | 10 | 0 | |
|
||||||
| | Error handling & robustness | 10 | 4 | |
|
| | Error handling & robustness | 10 | 4 | |
|
||||||
| 16 | User-friendly interface | 5 | 4 | |
|
| 16 | User-friendly interface | 5 | 4 | |
|
||||||
| Backend & Architecture | Stateless web server | 5 | 5 | |
|
| Backend & Architecture | Stateless web server | 5 | 5 | |
|
||||||
| | Stateful application | 10 | ? WHAT DOES THIS MEAN | |
|
| | Stateful application | 10 | ? WHAT DOES THIS MEAN | |
|
||||||
| | Database integration | 10 | 10 | |
|
| | Database integration | 10 | 10 | |
|
||||||
| | API design | 5 | 5 | |
|
| | API design | 5 | 5 | |
|
||||||
| 20 | Microservices architecture | 10 | 0 | |
|
| 20 | Microservices architecture | 10 | 0 | |
|
||||||
| Cloud Integration | Basic cloud deployment | 10 | 10 | |
|
| Cloud Integration | Basic cloud deployment | 10 | 10 | |
|
||||||
| | Cloud APIs usage | 10 | ? WHAT DOES THIS MEAN | |
|
| | Cloud APIs usage | 10 | ? WHAT DOES THIS MEAN | |
|
||||||
| | Serverless components | 10 | 0 | |
|
| | Serverless components | 10 | 0 | |
|
||||||
| 10 | Advanced cloud services | 5 | 0 | |
|
| 10 | Advanced cloud services | 5 | 0 | |
|
||||||
| **DevOps & Deployment** | | | | |
|
| **DevOps & Deployment** | | | | |
|
||||||
| Containerization | Basic Dockerfile | 5 | 5 | |
|
| Containerization | Basic Dockerfile | 5 | 5 | |
|
||||||
| | Optimized Dockerfile | 5 | 0 | |
|
| | Optimized Dockerfile | 5 | 0 | |
|
||||||
| | Docker Compose | 5 | 5 - dev only | |
|
| | Docker Compose | 5 | 5 - dev only | |
|
||||||
| 15 | Persistent storage | 5 | 5 | |
|
| 15 | Persistent storage | 5 | 5 | |
|
||||||
| Deployment & Scaling | Manual deployment | 5 | 5 | |
|
| Deployment & Scaling | Manual deployment | 5 | 5 | |
|
||||||
| | Automated deployment | 5 | 5 | |
|
| | Automated deployment | 5 | 5 | |
|
||||||
| | Multiple replicas | 5 | 5 | |
|
| | Multiple replicas | 5 | 5 | |
|
||||||
| 20 | Kubernetes deployment | 10 | 10 | |
|
| 20 | Kubernetes deployment | 10 | 10 | |
|
||||||
| **Quality Assurance** | | | | |
|
| **Quality Assurance** | | | | |
|
||||||
| Testing | Unit tests | 5 | 2 | |
|
| Testing | Unit tests | 5 | 2 | |
|
||||||
| | Integration tests | 5 | 2 | |
|
| | Integration tests | 5 | 2 | |
|
||||||
| | End-to-end tests | 5 | 5 | |
|
| | End-to-end tests | 5 | 5 | |
|
||||||
| 9 | Performance testing | 5 | 0 | |
|
| 9 | Performance testing | 5 | 0 | |
|
||||||
| Monitoring & Operations | Health checks | 5 | 5 | |
|
| Monitoring & Operations | Health checks | 5 | 5 | |
|
||||||
| | Logging | 5 | 2 - only to terminal add logstash | |
|
| | Logging | 5 | 2 - only to terminal add logstash | |
|
||||||
| 9 | Metrics/Monitoring | 5 | 2 - only DB, need to create Prometheus endpoint | |
|
| 9 | Metrics/Monitoring | 5 | 2 - only DB, need to create Prometheus endpoint | |
|
||||||
| Security | HTTPS/TLS | 5 | 5 | |
|
| Security | HTTPS/TLS | 5 | 5 | |
|
||||||
| | Authentication | 5 | 5 | |
|
| | Authentication | 5 | 5 | |
|
||||||
| 15 | Authorization | 5 | 5 | |
|
| 15 | Authorization | 5 | 5 | |
|
||||||
| **Innovation & Excellence** | | | | |
|
| **Innovation & Excellence** | | | | |
|
||||||
| Advanced Features and | AI/ML Integration | 10 | 0 | |
|
| Advanced Features and | AI/ML Integration | 10 | 0 | |
|
||||||
| Technical Excellence | Real-time features | 10 | 0 | |
|
| Technical Excellence | Real-time features | 10 | 0 | |
|
||||||
| | Creative problem solving | 10 | ? | |
|
| | Creative problem solving | 10 | ? | |
|
||||||
| | Performance optimization | 5 | 2 | |
|
| | Performance optimization | 5 | 2 | |
|
||||||
| 2 | Exceptional user experience | 5 | 0 | |
|
| 2 | Exceptional user experience | 5 | 0 | |
|
||||||
| **Total** | | **255** | **153** | |
|
| **Total** | | **255** | **153** | |
|
||||||
|
|
||||||
## Grading Scale
|
## Grading Scale
|
||||||
|
|
||||||
@@ -72,7 +72,7 @@ This means that you must get at least 2 points for each item in this category.
|
|||||||
- **Maximum: 200+ points**
|
- **Maximum: 200+ points**
|
||||||
|
|
||||||
| Grade | Points |
|
| Grade | Points |
|
||||||
| ----- | -------- |
|
|-------|----------|
|
||||||
| A | 180-200+ |
|
| A | 180-200+ |
|
||||||
| B | 160-179 |
|
| B | 160-179 |
|
||||||
| C | 140-159 |
|
| C | 140-159 |
|
||||||
|
|||||||
@@ -59,54 +59,54 @@ The workflow works in the following way:
|
|||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
classDiagram
|
classDiagram
|
||||||
direction BT
|
direction BT
|
||||||
class alembic_version {
|
class alembic_version {
|
||||||
varchar(32) version_num
|
varchar(32) version_num
|
||||||
}
|
}
|
||||||
class categories {
|
class categories {
|
||||||
varchar(100) name
|
varchar(100) name
|
||||||
varchar(255) description
|
varchar(255) description
|
||||||
char(36) user_id
|
char(36) user_id
|
||||||
int(11) id
|
int(11) id
|
||||||
}
|
}
|
||||||
class category_transaction {
|
class category_transaction {
|
||||||
int(11) category_id
|
int(11) category_id
|
||||||
int(11) transaction_id
|
int(11) transaction_id
|
||||||
}
|
}
|
||||||
class oauth_account {
|
class oauth_account {
|
||||||
char(36) user_id
|
char(36) user_id
|
||||||
varchar(100) oauth_name
|
varchar(100) oauth_name
|
||||||
varchar(4096) access_token
|
varchar(4096) access_token
|
||||||
int(11) expires_at
|
int(11) expires_at
|
||||||
varchar(1024) refresh_token
|
varchar(1024) refresh_token
|
||||||
varchar(320) account_id
|
varchar(320) account_id
|
||||||
varchar(320) account_email
|
varchar(320) account_email
|
||||||
char(36) id
|
char(36) id
|
||||||
}
|
}
|
||||||
class transaction {
|
class transaction {
|
||||||
blob amount
|
blob amount
|
||||||
blob description
|
blob description
|
||||||
char(36) user_id
|
char(36) user_id
|
||||||
date date
|
date date
|
||||||
int(11) id
|
int(11) id
|
||||||
}
|
}
|
||||||
class user {
|
class user {
|
||||||
varchar(100) first_name
|
varchar(100) first_name
|
||||||
varchar(100) last_name
|
varchar(100) last_name
|
||||||
varchar(320) email
|
varchar(320) email
|
||||||
varchar(1024) hashed_password
|
varchar(1024) hashed_password
|
||||||
tinyint(1) is_active
|
tinyint(1) is_active
|
||||||
tinyint(1) is_superuser
|
tinyint(1) is_superuser
|
||||||
tinyint(1) is_verified
|
tinyint(1) is_verified
|
||||||
longtext config
|
longtext config
|
||||||
char(36) id
|
char(36) id
|
||||||
}
|
}
|
||||||
|
|
||||||
categories --> user : user_id -> id
|
categories --> user: user_id -> id
|
||||||
category_transaction --> categories : category_id -> id
|
category_transaction --> categories: category_id -> id
|
||||||
category_transaction --> transaction : transaction_id -> id
|
category_transaction --> transaction: transaction_id -> id
|
||||||
oauth_account --> user : user_id -> id
|
oauth_account --> user: user_id -> id
|
||||||
transaction --> user : user_id -> id
|
transaction --> user: user_id -> id
|
||||||
```
|
```
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
@@ -265,6 +265,7 @@ bash upgrade_database.sh
|
|||||||
|
|
||||||
Before running the backend, make sure to set the necessary environment variables. Either by setting them in your shell
|
Before running the backend, make sure to set the necessary environment variables. Either by setting them in your shell
|
||||||
or by setting them in run configuration in your IDE.
|
or by setting them in run configuration in your IDE.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd backend
|
cd backend
|
||||||
uvicorn app.app:fastApi --reload --host 0.0.0.0 --port 8000
|
uvicorn app.app:fastApi --reload --host 0.0.0.0 --port 8000
|
||||||
@@ -587,7 +588,6 @@ npm run dev in 7project/src/frontend
|
|||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
|
|
||||||
### Common Issues
|
### Common Issues
|
||||||
|
|
||||||
#### Issue 1: Unable to apply Cloudflare terraform module
|
#### Issue 1: Unable to apply Cloudflare terraform module
|
||||||
@@ -613,26 +613,32 @@ by either hitting docker hub rate limits or by docker hub being down.
|
|||||||
### Debug Commands
|
### Debug Commands
|
||||||
|
|
||||||
Get a detailed description of the Deployment:
|
Get a detailed description of the Deployment:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
kubectl describe deployment finance-tracker -n prod
|
kubectl describe deployment finance-tracker -n prod
|
||||||
```
|
```
|
||||||
|
|
||||||
Get a list of pods in the Deployment:
|
Get a list of pods in the Deployment:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
kubectl get pods -n prod
|
kubectl get pods -n prod
|
||||||
```
|
```
|
||||||
|
|
||||||
Check the logs of a specific pod copy value for <pod-name> from the command above (--previous flag shows logs of a failing pod, remove it if the pod is not failing):
|
Check the logs of a specific pod copy value for <pod-name> from the command above (--previous flag shows logs of a
|
||||||
|
failing pod, remove it if the pod is not failing):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
kubectl logs <pod-name> -n prod --previous
|
kubectl logs <pod-name> -n prod --previous
|
||||||
```
|
```
|
||||||
|
|
||||||
See the service description:
|
See the service description:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
kubectl describe service finance-tracker -n prod
|
kubectl describe service finance-tracker -n prod
|
||||||
```
|
```
|
||||||
|
|
||||||
Connect to the pod and run a bash shell:
|
Connect to the pod and run a bash shell:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
kubectl exec -it <pod-name> -n prod -- /bin/bash
|
kubectl exec -it <pod-name> -n prod -- /bin/bash
|
||||||
```
|
```
|
||||||
@@ -645,34 +651,30 @@ kubectl exec -it <pod-name> -n prod -- /bin/bash
|
|||||||
> This information is used for individual grading.
|
> This information is used for individual grading.
|
||||||
> Link to the specific commit on GitHub for each contribution.
|
> Link to the specific commit on GitHub for each contribution.
|
||||||
|
|
||||||
| Task/Component | Assigned To | Status | Time Spent | Difficulty | Notes |
|
| Task/Component | Assigned To | Status | Time Spent | Difficulty | Notes |
|
||||||
|-------------------------------------------------------------------------------------------------------------------|-------------|----------------|------------|------------|-----------------------------------------------------------------------------------------------------|
|
|:----------------------------------------------------------------------------------------------------------|:------------|:-----------|:-----------|:-----------|:------|
|
||||||
| [Project Setup & Repository](https://github.com/dat515-2025/Group-8#) | Lukas | ✅ Complete | 40 Hours | Medium | [Any notes] |
|
| [Project Setup & Repository](https://github.com/dat515-2025/Group-8/pull/1) | Both | ✅ Complete | 10 Hours | Medium | |
|
||||||
| [Design Document](https://github.com/dat515-2025/Group-8/blob/main/6design/design.md) | Both | ✅ Complete | 4 Hours | Easy | [Any notes] |
|
| [Design Document](https://github.com/dat515-2025/Group-8/commit/f09f9eaa82d0953afe41f33c57ff63e0933a81ef) | Both | ✅ Complete | 4 Hours | Easy | |
|
||||||
| [Backend API Development](https://github.com/dat515-2025/Group-8/tree/main/7project/backend/app/api) | Dejan | ✅ Complete | 14 hours | Medium | [Any notes] |
|
| [Cluster setup ](https://github.com/dat515-2025/Group-8/commit/c8048d940df00874c290d99cdb4ad366bca6e95d) | Lukas | ✅ Complete | 30 hours | Hard | |
|
||||||
| [Database Setup & Models](https://github.com/dat515-2025/Group-8/tree/main/7project/backend/app/models) | Lukas | ✅ Complete | [X hours] | Medium | [Any notes] |
|
| [Backend API Development](https://github.com/dat515-2025/Group-8/pull/26) | Dejan | ✅ Complete | 22 hours | Medium | |
|
||||||
| [Frontend Development](https://github.com/dat515-2025/Group-8/tree/main/7project/frontend) | Dejan | ✅ Complete | 17 hours | Medium | [Any notes] |
|
| [Database Setup & Models](https://github.com/dat515-2025/Group-8/pull/19) | Lukas | ✅ Complete | 5 hours | Medium | |
|
||||||
| [Docker Configuration](https://github.com/dat515-2025/Group-8/blob/main/7project/compose.yml) | Lukas | ✅ Complete | 3 hours | Easy | [Any notes] |
|
| [Frontend Development](https://github.com/dat515-2025/Group-8/pull/28) | Dejan | ✅ Complete | 32 hours | Medium | |
|
||||||
| [Cloud Deployment](https://github.com/dat515-2025/Group-8/blob/main/7project/deployment/app-demo-deployment.yaml) | Lukas | ✅ Complete | [X hours] | Hard | Using Talos cluster running in proxmox - easy snapshots etc. Frontend deployed at Cloudflare pages. |
|
| [Docker Configuration](https://github.com/dat515-2025/Group-8/pull/1) | Lukas | ✅ Complete | 3 hours | Easy | |
|
||||||
| [Testing Implementation](https://github.com/dat515-2025/group-name) | Dejan | ✅ Complete | 16 hours | Medium | [Any notes] |
|
| [Authentification](https://github.com/dat515-2025/Group-8/pull/23) | Both | ✅ Complete | 11 hours | Medium | |
|
||||||
| [Documentation](https://github.com/dat515-2025/group-name) | Both | 🔄 In Progress | [X hours] | Easy | [Any notes] |
|
| [Transactions loading](https://github.com/dat515-2025/Group-8/pull/32) | Lukas | ✅ Complete | 7 hours | Medium | |
|
||||||
| [Presentation Video](https://github.com/dat515-2025/group-name) | Both | ❌ Not Started | [X hours] | Medium | [Any notes] |
|
| [Monitoring](https://github.com/dat515-2025/Group-8/pull/42/) | Lukas | ✅ Complete | 9 hours | Medium | |
|
||||||
|
| [Cloud Deployment](https://github.com/dat515-2025/Group-8/pull/16) | Both | ✅ Complete | 21 hours | Hard | |
|
||||||
**Legend**: ✅ Complete | 🔄 In Progress | ⏳ Pending | ❌ Not Started
|
| [Testing Implementation](https://github.com/dat515-2025/Group-8/pull/31/) | Both | ✅ Complete | 21 hours | Medium | |
|
||||||
|
| [Documentation](https://github.com/dat515-2025/Group-8/commit/515106b238bc032d5f7d5dcae931b5cb7ee2a281) | Both | ✅ Complete | 14 hours | Medium | |
|
||||||
|
| [Presentation Video](https://github.com/dat515-2025/group-name) TODO | Both | Started | 3 hours | Medium | |
|
||||||
|
|
||||||
## Hour Sheet
|
## Hour Sheet
|
||||||
|
|
||||||
> Link to the specific commit on GitHub for each contribution.
|
### Lukáš
|
||||||
|
|
||||||
### [Lukáš]
|
|
||||||
|
|
||||||
## Hour Sheet
|
|
||||||
|
|
||||||
**Name:** Lukáš Trkan
|
|
||||||
|
|
||||||
| Date | Activity | Hours | Description | Representative Commit / PR |
|
| Date | Activity | Hours | Description | Representative Commit / PR |
|
||||||
|:----------------|:----------------------------|:--------|:------------------------------------------------------------------------------------|:------------------------------------------------------|
|
|:----------------|:----------------------------|:--------|:------------------------------------------------------------------------------------|:------------------------------------------------------|
|
||||||
| 18.9. - 19.9. | Initial Setup & Design | 40 | Repository init, system design diagrams, basic Terraform setup | `feat(infrastructure): add basic terraform resources` |
|
| 18.9. - 19.9. | Initial Setup & Design | 10 | Repository init, system design diagrams, basic Terraform setup | `feat(infrastructure): add basic terraform resources` |
|
||||||
| 20.9. - 5.10. | Core Infrastructure & CI/CD | 12 | K8s setup (ArgoCD), CI/CD workflows, RabbitMQ, Redis, Celery workers, DB migrations | `PR #2`, `feat(infrastructure): add rabbitmq cluster` |
|
| 20.9. - 5.10. | Core Infrastructure & CI/CD | 12 | K8s setup (ArgoCD), CI/CD workflows, RabbitMQ, Redis, Celery workers, DB migrations | `PR #2`, `feat(infrastructure): add rabbitmq cluster` |
|
||||||
| 6.10. - 9.10. | Frontend Infra & DB | 5 | Deployed frontend to Cloudflare, setup metrics, created database models | `PR #16` (Cloudflare), `PR #19` (DB structure) |
|
| 6.10. - 9.10. | Frontend Infra & DB | 5 | Deployed frontend to Cloudflare, setup metrics, created database models | `PR #16` (Cloudflare), `PR #19` (DB structure) |
|
||||||
| 10.10. - 11.10. | Backend | 5 | Implemented OAuth support (MojeID, BankID) | `feat(auth): add support for OAuth and MojeID` |
|
| 10.10. - 11.10. | Backend | 5 | Implemented OAuth support (MojeID, BankID) | `feat(auth): add support for OAuth and MojeID` |
|
||||||
@@ -708,7 +710,6 @@ kubectl exec -it <pod-name> -n prod -- /bin/bash
|
|||||||
| 25.9. to 14.11. | Documentation | 8 | Documenting the dev process | multiple `feat(docs): report.md update` |
|
| 25.9. to 14.11. | Documentation | 8 | Documenting the dev process | multiple `feat(docs): report.md update` |
|
||||||
| **Total** | | **87** | | |
|
| **Total** | | **87** | | |
|
||||||
|
|
||||||
|
|
||||||
### Group Total: 192 hours
|
### Group Total: 192 hours
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -718,10 +719,13 @@ kubectl exec -it <pod-name> -n prod -- /bin/bash
|
|||||||
### What We Learned
|
### What We Learned
|
||||||
|
|
||||||
#### Technical
|
#### Technical
|
||||||
|
|
||||||
- We learned how to use AI to help us with our project.
|
- We learned how to use AI to help us with our project.
|
||||||
- We learned how to use Copilot for PR reviews.
|
- We learned how to use Copilot for PR reviews.
|
||||||
- We learned how to troubleshoot issues with our project in different areas.
|
- We learned how to troubleshoot issues with our project in different areas.
|
||||||
|
|
||||||
#### Collaboration
|
#### Collaboration
|
||||||
|
|
||||||
- Weekly meetings with the TA were great for syncing up on progress, discussing issues, planning future work.
|
- Weekly meetings with the TA were great for syncing up on progress, discussing issues, planning future work.
|
||||||
- Using GitHub issues and pull requests was very helpful for keeping track of progress.
|
- Using GitHub issues and pull requests was very helpful for keeping track of progress.
|
||||||
|
|
||||||
@@ -738,6 +742,7 @@ namespace that cannot be deleted.
|
|||||||
This was solved by using snapshots in Proxmox and restoring if this happened.
|
This was solved by using snapshots in Proxmox and restoring if this happened.
|
||||||
|
|
||||||
#### Not enough time to implement all features
|
#### Not enough time to implement all features
|
||||||
|
|
||||||
Since this course is worth only 5 credits, we often had to prioritize other courses we were attending over this project.
|
Since this course is worth only 5 credits, we often had to prioritize other courses we were attending over this project.
|
||||||
In the end, we were able to implement all necessary features.
|
In the end, we were able to implement all necessary features.
|
||||||
|
|
||||||
@@ -755,6 +760,7 @@ Using private container registry would allow us to include environment variables
|
|||||||
This would simplify deployment and CI/CD setup.
|
This would simplify deployment and CI/CD setup.
|
||||||
|
|
||||||
#### Start sooner
|
#### Start sooner
|
||||||
|
|
||||||
The weekly meetings helped us to start planning the project earlier and avoid spending too much time on details,
|
The weekly meetings helped us to start planning the project earlier and avoid spending too much time on details,
|
||||||
but we could have started earlier if we had more time.
|
but we could have started earlier if we had more time.
|
||||||
|
|
||||||
@@ -775,14 +781,19 @@ used not only by myself.
|
|||||||
|
|
||||||
#### [Dejan]
|
#### [Dejan]
|
||||||
|
|
||||||
Since I do not have a job and I am more theoretically oriented student (I am more into math, algorithms, cryptography), this project was probably the most complex one I have ever worked on.
|
Since I do not have a job and I am more theoretically oriented student (I am more into math, algorithms, cryptography),
|
||||||
For me, it was a great experience to work on an actually deployed fullstack app and not only local development, that I was used to from the past.
|
this project was probably the most complex one I have ever worked on.
|
||||||
|
For me, it was a great experience to work on an actually deployed fullstack app and not only local development, that I
|
||||||
|
was used to from the past.
|
||||||
|
|
||||||
It was also a great experience to collaborate with Lukas who has prior experience with app deployment and infrastructure.
|
It was also a great experience to collaborate with Lukas who has prior experience with app deployment and
|
||||||
|
infrastructure.
|
||||||
Thanks to this, I learned a lot new technologies and how to work in a team (First time reviewing PRs).
|
Thanks to this, I learned a lot new technologies and how to work in a team (First time reviewing PRs).
|
||||||
|
|
||||||
It was challenging to wrap my head around the project structure and how everything was connected (And I still think I have some gaps in my knowledge).
|
It was challenging to wrap my head around the project structure and how everything was connected (And I still think I
|
||||||
But I think that if I decide to create my own demo project in the future, I will definitely be able to work on it much more efficiently.
|
have some gaps in my knowledge).
|
||||||
|
But I think that if I decide to create my own demo project in the future, I will definitely be able to work on it much
|
||||||
|
more efficiently.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -5,4 +5,4 @@ COPY requirements.txt .
|
|||||||
RUN pip install --no-cache-dir -r requirements.txt
|
RUN pip install --no-cache-dir -r requirements.txt
|
||||||
COPY . .
|
COPY . .
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
CMD alembic upgrade head && uvicorn app.app:fastApi --host 0.0.0.0 --port 8000
|
CMD ["sh", "-c", "alembic upgrade head && uvicorn app.app:fastApi --host 0.0.0.0 --port 8000"]
|
||||||
|
|||||||
Reference in New Issue
Block a user