Skip to content

Conversation

@rishabh0510rishabh
Copy link
Contributor

@rishabh0510rishabh rishabh0510rishabh commented Feb 9, 2026

Description

This PR introduces a fully containerized development environment using Docker Compose. It restructures the codebase into clear client and server directories to separate concerns and provides an easy one-command setup for new contributors.

🔗 Related Issue

Fixes #577

Changes

  • Project Restructuring:
    • Moved backend code to server/.
    • Moved frontend static files and logic to client/.
  • Docker Configuration:
    • Added server/Dockerfile for the Node.js API.
    • Added client/Dockerfile with Nginx for serving static assets and proxying API requests.
    • Added docker-compose.yml to orchestrate Client, Server, and MongoDB.
  • Persistence:
    • configured Docker volumes for MongoDB (mongo-data).
    • Configured volumes for server data (server-data) and backups (server-backups) to ensure contact form messages and financial backups are persisted.
  • Cleanup:
    • Removed legacy static file serving from server/server.js as Nginx now handles this.

Verification

  • Static Analysis: Verified that backend code does not reference moved frontend files.
  • Environment: Verified .env loading and start scripts.
  • Architecture: Confirmed Nginx correctly proxies /api and /socket.io to the backend.
  • [-] Runtime Test: Skipped due to local Docker environment issues. CI/CD pipeline should perform final runtime verification.

How to Test

  1. Ensure Docker Desktop is running.
  2. Run docker-compose up --build.
  3. Visit http://localhost:3000 to see the app.
  4. Verify data persistence by creating an expense and restarting the containers.

Label: ECWoC26

@vercel
Copy link

vercel bot commented Feb 9, 2026

@rishabh0510rishabh is attempting to deploy a commit to the Renu's projects Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

🎉 Thanks for the PR, @rishabh0510rishabh!

We really appreciate you taking the time to contribute to ExpenseFlow! 💙


⭐ Love this project?

Please give us a star! It helps the project grow and reach more developers! 🌟

🔗 https://github.com/Renu-code123/ExpenseFlow


✅ PR Checklist

Before we review, please ensure:

  • Your code follows the project's coding standards
  • All file changes are accurate and intentional
  • You've tested your changes locally
  • Any review comments have been addressed

🙌 Thank You for Contributing!

We truly appreciate your interest in contributing to this project.

  • Please make sure your code follows the project structure
  • Add clear commit messages and comments where necessary
  • Ensure your changes do not break existing functionality

We'll review your PR as soon as possible. Keep up the great work! ✨


@vercel
Copy link

vercel bot commented Feb 10, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
expenseflow Ready Ready Preview, Comment Feb 10, 2026 0:53am

@Renu-code123
Copy link
Owner

@rishabh0510rishabh resolve conflict

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Standardize Local Development Environment with Docker Compose

2 participants