Skip to content

ChagataiDuru/CollabUnityDevApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CollabUnityDevApp

A comprehensive Unity Game Development Collaboration Hub that streamlines team collaboration, project management, and version control for Unity game development teams.

🎮 Features

  • Project Management: Kanban boards, sprint planning, and task tracking
  • Team Collaboration: Real-time whiteboard, team chat, and member management
  • Version Control Integration: Git integration with commit tracking and branch management
  • Time Tracking: Track time spent on tasks with manual and automatic logging
  • Sprint Management: Plan and track sprints with velocity metrics
  • Task Management: Create, assign, and track tasks with priorities and statuses

🏗️ Architecture

This application is built with a modern full-stack architecture:

Frontend

  • Framework: Angular 18+
  • UI Components: Angular Material
  • Styling: Tailwind CSS
  • State Management: RxJS
  • Real-time Features: SignalR

Backend

  • Framework: ASP.NET Core 8.0
  • Database: PostgreSQL
  • ORM: Entity Framework Core
  • Authentication: JWT-based authentication
  • Real-time Communication: SignalR

Infrastructure

  • Containerization: Docker & Docker Compose
  • Reverse Proxy: Nginx
  • Database: PostgreSQL 15

🚀 Getting Started

Prerequisites

Running with Docker (Recommended)

  1. Clone the repository:
git clone [email protected]:ChagataiDuru/CollabUnityDevApp.git
cd CollabUnityDevApp
  1. Create a .env file in the root directory (use .env.example as template if available)

  2. Start the application:

docker-compose up --build
  1. Access the application:

Local Development

Backend Setup

cd backend/UnityDevHub.API
dotnet restore
dotnet run

Frontend Setup

cd frontend
npm install
npm start

📁 Project Structure

CollabUnityDevApp/
├── backend/
│   └── UnityDevHub.API/
│       ├── Controllers/      # API endpoints
│       ├── Services/         # Business logic
│       ├── Models/           # Data models
│       ├── Data/             # Database context
│       └── Hubs/             # SignalR hubs
├── frontend/
│   └── src/
│       ├── app/
│       │   ├── core/         # Core services and models
│       │   ├── features/     # Feature modules
│       │   └── shared/       # Shared components
│       └── assets/           # Static assets
├── nginx/                    # Nginx configuration
└── docker-compose.yml        # Docker orchestration

🔧 Configuration

Environment Variables

Create a .env file in the root directory with the following variables:

# Database
POSTGRES_USER=your_db_user
POSTGRES_PASSWORD=your_db_password
POSTGRES_DB=unitydevhub

# Backend
ASPNETCORE_ENVIRONMENT=Development
JWT_SECRET=your_jwt_secret_key

🧪 Testing

Backend Tests

cd backend/UnityDevHub.API
dotnet test

Frontend Tests

cd frontend
npm test

📝 API Documentation

Once the application is running, you can access the Swagger API documentation at:

http://localhost:5000/swagger

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

👥 Authors

🙏 Acknowledgments

  • Built with Angular and ASP.NET Core
  • UI components from Angular Material
  • Styling with Tailwind CSS

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •