Commit Graph

36 Commits

Author SHA1 Message Date
Flavio Fois
fa1f65baf7 add support for SQLite as an alternative database backend
Some checks failed
Build & Publish Docker Image / build-and-push (push) Failing after 33s
Implement SQLite support using the pure Go `modernc.org/sqlite` driver and update the migration system to handle driver-specific schemas. Users can now choose between MySQL and SQLite by setting the `DB_DRIVER` environment variable.
2026-03-29 17:46:27 +02:00
Flavio Fois
e6d663f4f2 make bug report database name configurable
Replace the hardcoded "emly_bugreports_dev" database name in SQL queries with the database name from the application configuration.
2026-03-26 20:28:51 +01:00
Flavio Fois
09a760e025 add Docker Compose configuration for Traefik and MySQL, update environment variables
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 44s
2026-03-25 12:14:35 +01:00
Flavio Fois
858b0642d9 silently drop connections for banned IPs in rate limiting
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 1m22s
2026-03-25 11:17:37 +01:00
Flavio Fois
4fb3290cf6 add rate limiting configuration for authenticated and unauthenticated requests
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 55s
2026-03-24 08:56:05 +01:00
Flavio Fois
9d4a1b7ef3 Removed debug logging
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 46s
2026-03-23 21:48:43 +01:00
Flavio Fois
e7678bc1d4 update docker-compose to build API service locally
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 1m10s
Switch from using a pre-built remote image to building the API service from the local Dockerfile.
2026-03-23 21:45:24 +01:00
Flavio Fois
69b3a917d3 update docker-compose to build API service locally
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 44s
Switch from using a pre-built remote image to building the API service from the local Dockerfile.
2026-03-23 21:44:01 +01:00
Flavio Fois
576ce0b1b5 add v2 API routes for admin and bug report management with rate limiting
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 43s
2026-03-23 21:29:50 +01:00
Flavio Fois
9cc0f3157c add developer documentation and custom rate limiter with banning
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 46s
Add a comprehensive guide for developers transitioning from Node/PHP and implement a new middleware to handle IP-based rate limiting with temporary banning functionality. Also refactors configuration loading to use a singleton pattern for better resource management.
2026-03-23 19:10:29 +01:00
Flavio Fois
be53f2ab47 update docker.yml to streamline build and push process
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 43s
2026-03-23 11:58:12 +01:00
Flavio Fois
57d5d74629 update docker-compose to use latest image for API service
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 15s
2026-03-23 11:55:10 +01:00
Flavio Fois
f3d010dbb4 remove caching configuration from docker workflow
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 15s
2026-03-23 11:54:18 +01:00
Flavio Fois
1474776304 remove caching configuration from docker workflow
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 42s
2026-03-23 11:52:08 +01:00
Flavio Fois
9271e965d4 update docker-compose to use pre-built image for API service
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 47s
2026-03-23 11:49:21 +01:00
Flavio Fois
40dacd7c42 update docker workflow to use ubuntu-latest as the build environment
All checks were successful
Build & Publish Docker Image / build-and-push (push) Successful in 58s
2026-03-23 11:16:38 +01:00
Flavio Fois
b92bd5ebca update docker workflow to use gitea-runner for build environment 2026-03-23 11:15:15 +01:00
Flavio Fois
cc02351437 update gitea docker workflow for environment compatibility and registry caching
Switch to GITEA_OUTPUT and transition Docker caching from type=gha to type=registry to better support the Gitea Actions environment. The runner is also pinned to ubuntu-24.04 for consistency.
2026-03-23 11:14:18 +01:00
Flavio Fois
6c8b400a4a add docker configuration and gitea workflow for automated image builds
Introduce a multi-stage Dockerfile, docker-compose setup, and a Gitea Actions workflow to automate building and pushing images to the registry. The configuration includes an entrypoint script for persistent logging and a .dockerignore to optimize the build context.
2026-03-23 11:09:25 +01:00
Flavio Fois
84521d8d59 refactor routing into a modular and versioned structure
Move inline route definitions from main.go into a dedicated internal/routes package. This organization introduces support for API versioning (v1) and separates endpoint logic into specialized modules for administration and bug reporting.
2026-03-23 09:18:16 +01:00
Flavio Fois
9aa188af8c update air configuration for binary name and additional file extensions
Rename the output binary to emly-api.exe and expand the watcher to include .env, .sql, and .tmpl files. Additional directories like .idea, .vscode, and .claude are now excluded from the build watch.
2026-03-23 08:42:26 +01:00
Flavio Fois
da650c2b82 enhance bug report handling with pagination, filtering, and improved response structure 2026-03-19 09:00:07 +01:00
Flavio Fois
9df575067a add database schema migration for bug reports and users tables 2026-03-18 13:04:47 +01:00
Flavio Fois
2fd89881e7 mark DELETE endpoint for bug reports as complete in TODO list 2026-03-18 10:54:25 +01:00
Flavio Fois
210eefe4ce improve file handling in bug report route to ensure proper closure and error logging 2026-03-18 10:54:19 +01:00
Flavio Fois
42623a47bd update configuration to include database connection settings and adjust connection management 2026-03-18 10:54:15 +01:00
Flavio Fois
15ef46d413 refactor bug report response to use embedded template for report formatting 2026-03-18 09:40:10 +01:00
Flavio Fois
f0181aafba add build directory to .gitignore 2026-03-18 09:33:29 +01:00
Flavio Fois
3f54e1cea4 refactor bug report handlers to use centralized JSON response functions and add delete functionality 2026-03-18 09:32:01 +01:00
Flavio Fois
52947965db add status management for bug reports and update routing 2026-03-17 21:14:54 +01:00
Flavio Fois
b23915d3b0 update environment example to use single API_KEY and add ADMIN_KEY 2026-03-17 18:29:32 +01:00
Flavio Fois
4058cbe17c add MIT license and rename health handler file
Add the MIT license file and rename the health handler to follow the project's naming convention for route files.
2026-03-17 18:27:55 +01:00
Flavio Fois
45dbe480a5 add bug report creation handler and update routing structure 2026-03-17 18:20:14 +01:00
Flavio Fois
c61afa45c7 implement admin key authentication and refactor API key handling 2026-03-17 16:13:48 +01:00
Flavio Fois
8097be88a6 refactor bug report structure and add API endpoints for bug report management 2026-03-17 15:08:54 +01:00
Flavio Fois
08ff1da469 add initial project structure with configuration, models, and API key authentication 2026-03-17 12:21:48 +01:00