Skip to content

TaseskiCS/devconnect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DevConnect

A full-stack developer collaboration platform built with modern technologies.

πŸš€ Tech Stack

  • Frontend: React with Next.js
  • Backend: Express.js (Node.js)
  • Database: PostgreSQL
  • Cloud/Infra: AWS (Terraform configs for S3 + RDS)
  • Containers: Docker & docker-compose
  • Deployment: Vercel (Frontend) + GitHub Actions CI/CD

πŸ“ Project Structure

devconnect/
β”œβ”€β”€ frontend/                # Next.js app
β”‚   β”œβ”€β”€ pages/               # Login, Dashboard, Chat, Tasks
β”‚   β”œβ”€β”€ components/          
β”‚   β”œβ”€β”€ public/              
β”‚   β”œβ”€β”€ package.json
β”‚   β”œβ”€β”€ next.config.js
β”‚   └── vercel.json
β”‚
β”œβ”€β”€ backend/                 # Express API
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ routes/          # auth, tasks, chat
β”‚   β”‚   β”œβ”€β”€ controllers/
β”‚   β”‚   β”œβ”€β”€ models/
β”‚   β”‚   └── app.js
β”‚   β”œβ”€β”€ package.json
β”‚   └── Dockerfile
β”‚
β”œβ”€β”€ database/                # DB schema + migrations
β”‚   β”œβ”€β”€ schema.sql
β”‚   └── migrations/
β”‚
β”œβ”€β”€ infra/                   # Infra configs
β”‚   β”œβ”€β”€ docker-compose.yml
β”‚   β”œβ”€β”€ terraform/
β”‚   β”‚   β”œβ”€β”€ main.tf          # AWS S3 + RDS configs
β”‚   β”‚   β”œβ”€β”€ variables.tf
β”‚   β”‚   └── outputs.tf
β”‚   └── README.md
β”‚
β”œβ”€β”€ .github/
β”‚   └── workflows/
β”‚       └── ci.yml           # GitHub Actions workflow
β”‚
β”œβ”€β”€ README.md
└── LICENSE

πŸ› οΈ Features

  • Authentication: JWT-based user authentication
  • Task Management: CRUD operations for project tasks
  • Real-time Chat: WebSocket-based messaging
  • Dashboard: User dashboard with project overview
  • Cloud Infrastructure: AWS RDS + S3 with Terraform
  • CI/CD: Automated testing and deployment

πŸš€ Quick Start

Prerequisites

  • Node.js 18+
  • Docker & Docker Compose
  • PostgreSQL
  • AWS CLI (for infrastructure deployment)

Local Development

  1. Clone the repository

    git clone <repository-url>
    cd devconnect
  2. Start with Docker Compose

    cd infra
    docker-compose up -d
  3. Install dependencies

    # Frontend
    cd ../frontend
    npm install
    npm run dev
    
    # Backend (in another terminal)
    cd ../backend
    npm install
    npm run dev
  4. Access the application

Infrastructure Deployment

  1. Configure AWS credentials

    aws configure
  2. Deploy infrastructure

    cd infra/terraform
    terraform init
    terraform plan
    terraform apply

πŸ“ API Endpoints

Authentication

  • POST /api/auth/login - User login
  • POST /api/auth/register - User registration
  • POST /api/auth/logout - User logout

Tasks

  • GET /api/tasks - Get all tasks
  • POST /api/tasks - Create new task
  • PUT /api/tasks/:id - Update task
  • DELETE /api/tasks/:id - Delete task

Chat

  • GET /api/chat/messages - Get chat messages
  • POST /api/chat/messages - Send message
  • WebSocket /ws/chat - Real-time chat

πŸ§ͺ Testing

# Run all tests
npm test

# Run backend tests
cd backend && npm test

# Run frontend tests
cd frontend && npm test

πŸš€ Deployment

Frontend (Vercel)

The frontend is configured for automatic deployment to Vercel via the vercel.json configuration.

Backend (Manual)

Deploy the backend to your preferred cloud provider using the provided Dockerfile.

Infrastructure (AWS)

Use the Terraform configurations in infra/terraform/ to provision AWS resources.

πŸ“„ License

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

🀝 Contributing

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

πŸ“ž Support

For support, email support@devconnect.com or join our Discord community.

About

No description, website, or topics provided.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages