-
Notifications
You must be signed in to change notification settings - Fork 1
Express to Nestjs #79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
📝 WalkthroughSummary by CodeRabbit
WalkthroughThis pull request represents a comprehensive overhaul of the project. The repository has transitioned from an older Flexr/Express setup to a NestJS-based architecture with a complete restructuring of configuration, documentation, and dependency management. New NestJS modules, controllers, services, and entities have been introduced for features such as authentication, container deployments, deployments management, subdomain setup, and HTMX functionality. The TypeScript, ESLint, and package configurations have been modernized. Additionally, a new React/Vite frontend has been implemented while legacy server, database, and utility files have been removed. Changes
Sequence Diagram(s)Authentication FlowsequenceDiagram
participant Client
participant AuthController
participant AuthService
Client->>AuthController: POST /auth/login { passKey }
AuthController->>AuthService: login(passKey)
alt Valid passKey
AuthService-->>AuthController: sessionId
AuthController->>Client: Set cookie, 200 OK (success message)
else Invalid passKey
AuthService-->>AuthController: null
AuthController->>Client: 401 Unauthorized (error message)
end
Container Deployment WorkflowsequenceDiagram
participant User
participant ContainerController
participant ContainerService
participant DeploymentService
participant SubdomainService
User->>ContainerController: POST /container/run with deployment data
ContainerController->>ContainerService: runContainer(body)
ContainerService->>DeploymentService: addDeployment(projectName, containerId)
ContainerService->>SubdomainService: setupSubdomain(subdomain, port, dnsRecordId)
ContainerService-->>ContainerController: return deployment details
ContainerController->>User: JSON response (success or error)
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
Note 🎁 Summarized by CodeRabbit FreeYour organization has reached its limit of developer seats under the Pro Plan. For new users, CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please add seats to your subscription by visiting https://app.coderabbit.ai/login.If you believe this is a mistake and have available seats, please assign one to the pull request author through the subscription management page using the link above. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
This comment was marked as off-topic.
This comment was marked as off-topic.
PR Code Suggestions ✨Latest suggestions up to ddfd2ec
Previous suggestions✅ Suggestions up to commit 2d43bc1
✅ Suggestions up to commit 3b90807
✅ Suggestions up to commit d7a440f
✅ Suggestions up to commit fd485db
|
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: codiumai-pr-agent-free[bot] <138128286+codiumai-pr-agent-free[bot]@users.noreply.github.com>
PR Type
Enhancement, Tests, Configuration changes
Description
Migrated the project from Express to NestJS framework.
auth
,container
,deployment
,htmx
,redis
,subdomain
, anduser
.Implemented a login system with session management and error handling.
Added container deployment and subdomain setup functionalities.
podman
for container management andnginx
for subdomain configuration.Integrated Redis for caching and deployment tracking.
Updated project configuration files for NestJS compatibility.
eslint
,tsconfig
, andjest
configurations.Changes walkthrough 📝
28 files
Added frontend login form submission logic
Defined main application module with imports
Added authentication controller for login endpoint
Created authentication module with controller and service
Implemented authentication service with login logic
Added configuration module for environment variables
Added container controller for deployment actions
Created container module with controller and service
Implemented container service for deployment and image creation
Configured database module with TypeORM and PostgreSQL
Added deployment controller for fetching deployments
Created deployment module with controller and service
Implemented deployment service with tracking and retrieval
Added HTMX controller for container and deployment management
Created HTMX module with controller and service
Implemented HTMX service for deployment and subscription logic
Bootstrap application with NestJS factory
Added Redis module with service for caching
Implemented Redis service for key-value operations
Added subdomain controller for DNS and SSL setup
Created subdomain module with controller and service
Implemented subdomain service for DNS and nginx configuration
Added user controller for registration and subscription
Defined user entity for database schema
Created user module with controller and service
Implemented user service for user management
Added utility functions for container management
Added utility functions for server and subdomain setup
1 files
Updated README with NestJS project details
4 files
Added ESLint configuration for NestJS
Added NestJS CLI configuration
Added build-specific TypeScript configuration
Updated TypeScript configuration for NestJS
1 files
Updated dependencies and scripts for NestJS