Commit Graph

21 Commits

Author SHA1 Message Date
mohamad
92c70813fb Refactor API routing and update login URLs
- Updated the OAuth routes to be included under the main API prefix for better organization.
- Changed the Google login URL in the SocialLoginButtons component to reflect the new API structure.

These changes aim to improve the clarity and consistency of the API routing and enhance the login flow for users.
2025-06-02 18:07:28 +02:00
google-labs-jules[bot]
287155a783 Fix(alembic): Resolve TypeError in migration script and remove redundant migration call
This commit addresses two issues:
1. A `TypeError` during Alembic migrations (`upgrade() takes 0 positional
   arguments but 1 was given`). This was caused by the `upgrade` and
   `downgrade` functions in the initial migration script not accepting
   any arguments, while the custom migration runner in `migrations.py`
   was passing a context argument.
   - Modified `be/alembic/versions/0001_initial_schema.py` to ensure
     `upgrade` and `downgrade` functions accept a `context` argument.

2. Redundant execution of migrations. Migrations were being triggered
   both by the `entrypoint.sh` script and within the FastAPI application's
   startup event in `app/main.py`.
   - Commented out the `await run_migrations()` call in `app/main.py`
     to ensure migrations are only handled by the `entrypoint.sh` script.

These changes should ensure that database migrations run correctly and only
once when the backend container starts.
2025-06-01 17:16:41 +00:00
mohamad
cb5bfcf7b5 refactor: Separate async migration logic into dedicated module and streamline migration functions for improved clarity and maintainability
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m17s
2025-06-01 17:33:04 +02:00
mohamad
e16c749019 refactor: Enhance Alembic migration functions to support direct execution and improve error handling for database URL configuration
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m18s
2025-06-01 17:29:48 +02:00
mohamad
7223606fdc refactor: Update Alembic migration functions to support asynchronous execution and streamline migration handling in application startup
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m20s
2025-06-01 17:20:28 +02:00
mohamad
43e2d88ffe fix: Update Alembic configuration to use absolute paths for ini file and script location in migration process
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m15s
2025-06-01 17:13:09 +02:00
mohamad
32841ea727 fix: Enhance Alembic configuration by setting script location and database URL validation in migration process
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m17s
2025-06-01 17:09:49 +02:00
mohamad
26e06ddeaa refactor: Simplify Dockerfile by reorganizing Alembic file copying and enhance migration handling in application startup
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m21s
2025-06-01 17:03:13 +02:00
mohamad
f2df1c50dd fix: Update Alembic configuration in startup event to set script location and database URL
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m26s
2025-06-01 16:57:07 +02:00
mohamad
411c3c91b2 feat: Add Alembic configuration and migration command to application startup
All checks were successful
Deploy to Production, build images and push to Gitea Registry / build_and_push (pull_request) Successful in 1m16s
2025-06-01 16:54:16 +02:00
mohamad
cb51186830 feat: Add production deployment configuration and environment setup
- Introduced `docker-compose.prod.yml` to define services for production deployment, including PostgreSQL, FastAPI backend, frontend, and Redis.
- Created `env.production.template` to outline necessary environment variables for production, ensuring sensitive data is not committed.
- Added `PRODUCTION.md` as a deployment guide detailing the setup process using Docker Compose and Gitea Actions for CI/CD.
- Implemented Gitea workflows for build, test, and deployment processes to streamline production updates.
- Updated backend and frontend Dockerfiles for optimized production builds and configurations.
- Enhanced application settings to support environment-specific configurations, including CORS and health checks.
2025-05-28 08:23:22 +02:00
mohamad
84b046508a feat: Implement refresh token functionality in authentication flow
- Added support for refresh tokens in the authentication backend, allowing users to obtain new access tokens using valid refresh tokens.
- Created a new `BearerResponseWithRefresh` model to structure responses containing both access and refresh tokens.
- Updated the `AuthenticationBackend` to handle login and logout processes with refresh token support.
- Introduced a new `/auth/jwt/refresh` endpoint to facilitate token refreshing, validating the refresh token and generating new tokens as needed.
- Modified OAuth callback logic to generate and return both access and refresh tokens upon successful authentication.
- Updated frontend API service to send the refresh token in the Authorization header for token refresh requests.
2025-05-25 12:51:02 +02:00
Mohamad.Elsena
5018ce02f7 feat: Implement recurring expenses feature with scheduling and management
- Added support for recurring expenses, allowing users to define recurrence patterns (daily, weekly, monthly, yearly) for expenses.
- Introduced `RecurrencePattern` model to manage recurrence details and linked it to the `Expense` model.
- Implemented background job scheduling using APScheduler to automatically generate new expenses based on defined patterns.
- Updated expense creation logic to handle recurring expenses, including validation and database interactions.
- Enhanced frontend components to allow users to create and manage recurring expenses through forms and lists.
- Updated documentation to reflect new features and usage guidelines for recurring expenses.
2025-05-22 16:37:14 +02:00
mohamad
3f0cfff9f1 Refactor authentication endpoints and user management; update CORS settings and JWT handling for improved security and compatibility with FastAPI-Users. Remove deprecated user-related endpoints and streamline API structure. 2025-05-14 01:04:09 +02:00
mohamad
72b988b79b Refactor authentication and database session handling; update user schemas for enhanced functionality and compatibility with FastAPI-Users. 2025-05-14 00:24:51 +02:00
mohamad
1c08e57afd fastapi-users, oauth, docker support, cleanup 2025-05-14 00:10:31 +02:00
mohamad
18f759aa7c Add Sentry integration for error tracking; update requirements and configuration files. Introduce new Alembic migration for missing indexes and constraints in the database schema. 2025-05-13 21:45:45 +02:00
mohamad
262505c898 Refactor API integration across multiple components; introduce centralized API configuration, enhance error handling, and improve type safety in API calls for better maintainability and user experience. 2025-05-08 22:22:46 +02:00
mohamad
423d345fdf add_version_to_lists_and_items 2025-05-07 23:30:23 +02:00
mohamad
4fbbe77658 end of phase 3 2025-03-30 19:42:32 +02:00
mohamad
4b7415e1c3 weeee💃 2025-03-30 16:02:49 +02:00