Refactor backend to Gin.#3
Merged
Merged
Conversation
…tion and regex checks.
- Deleted main application file (src/app.ts) along with its middleware and routes. - Removed environment configuration file (src/config/env.ts) that handled environment variables. - Eliminated Firebase configuration file (src/config/firebase.ts) and its initialization logic. - Removed server entry point (src/index.ts) that started the Express server. - Deleted API tests (src/test/api.test.ts) and configuration tests (src/test/config.test.ts). - Removed test setup file (src/test/setup.ts) for initializing test environment. - Deleted TypeScript configuration file (tsconfig.json) and Vitest configuration file (vitest.config.ts).
… and enhance code quality checks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request migrates the project from a Node.js/TypeScript/Express backend to a Go backend using the Gin framework and updates all related tooling, configuration, and documentation accordingly. The changes remove all Node.js/TypeScript-specific code and dependencies, introduce Go equivalents, and refactor CI/CD, linting, and development workflows for Go.
Key changes include:
Migration to Go Backend
Replaced all Node.js/TypeScript/Express code and dependencies with a Go backend using the Gin framework, including Firebase Firestore integration and Go-based project structure (
src/app.ts,package.json,eslint.config.js,README.md,.env.example,.lintstagedrc,.husky/pre-commit,go.mod). [1] [2] [3] [4] [5] [6] [7] [8] [9]Updated the documentation to describe the new Go tech stack, development, build, and deployment processes, and removed references to Node.js, TypeScript, and related tools. [1] [2] [3]
CI/CD and Tooling Updates
Refactored GitHub Actions workflows for CI and testing to use Go (setup, dependency caching, formatting, vetting, building, and testing), removing Node.js and pnpm steps. [1] [2]
Updated pre-commit hooks and lint-staged configuration to perform Go formatting, vetting, and dependency tidying instead of JS/TS linting and formatting. [1] [2]
Environment and Firebase Configuration
xueer-dev.jsonfor service account credentials), and added afirebase.jsonfor local emulator configuration. [1] [2]Project Cleanup
package.json,eslint.config.js, and the entire Express app implementation. [1] [2] [3]Go Module Initialization
go.modandgo.sumfiles with necessary dependencies for Gin, Firebase, and related Go libraries.These changes fully transition the backend stack to Go, streamline the project for Go development, and ensure all supporting tooling and documentation reflect the new architecture.