AOSSIE-Org / AOSSIE-Org/EduAid

[FEATURE]: Dockerized Full Stack Setup for EduAid

Open
#434 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
JavaScript
Stars
171
Forks
425
PR merge metrics
No merged PRs in 30d

Description

### Feature and its Use Cases

### What is the feature?

This feature proposes implementing a complete Docker-based full stack setup for EduAid, including:

- Containerized Python backend (Flask API)
- Containerized React web frontend
- Docker Compose orchestration
- Environment variable management using `.env`
- Separate development and production configurations

The goal is to allow contributors to run the entire application stack using a single command.

---

### How would users benefit from it?

- Simplified onboarding for new contributors
- Eliminates dependency and version conflicts
- Standardized development environment
- One-command startup (`docker-compose up --build`)
- Easier CI/CD integration
- Deployment-ready infrastructure
- Improved maintainability and scalability

---

### What scenarios would this feature address?

- New contributors cloning the repository
- Avoiding manual installation of Python/Node dependencies
- Cross-platform consistency (Windows/macOS/Linux)
- Preparing the project for cloud deployment
- Reducing "it works on my machine" issues
- Running backend and frontend services in a unified environment

# Additional Context

This feature will introduce the following files and configurations:

- backend/Dockerfile
- eduaid_web/Dockerfile
- backend/.dockerignore
- eduaid_web/.dockerignore
- docker-compose.yml
- Optional: docker-compose.prod.yml
- .env.example
- README documentation updates

---

## Expected Usage After Implementation

```bash
docker-compose up --build
```

### Code of Conduct

- [x] I have joined the [Discord server](https://discord.gg/hjUhu33uAn) and will post updates there
- [x] I have searched existing issues to avoid duplicates

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.