- ๐ฏ Overview
- โจ Key Features
- ๐๏ธ Architecture
- ๐ธ Screenshots
- ๐ Quick Start
- โ๏ธ Installation
- ๐ Deployment
- ๐ก API Reference
- ๐งช Testing
- ๐ฅ Team
- ๐ฎ Roadmap
- ๐ค Contributing
- ๐ซ Contact
- ๐ License
- ๐ Documentation
A sleek, production-ready full-stack todo list application featuring a modern interface powered by React, Node.js, and MongoDB. Built with enterprise-grade practices, comprehensive testing, and optimized for performance, this application demonstrates professional development standards and clean architecture principles.
Perfect for portfolio demonstrations and real-world task management needs.
๐ Comprehensive Documentation: All deployment guides, migration details, and tutorials are available in the
/docsfolder.
- Intuitive Interface - Clean, responsive design that works flawlessly across all devices
- Real-Time Updates - Instant synchronization with MongoDB backend
- Smart Filtering - Efficiently organize and filter tasks by status
- Responsive Design - Mobile-first approach with Tailwind CSS
- Full TypeScript Support - Type-safe code with comprehensive type definitions
- Comprehensive Testing - Jest test suites for frontend and backend
- RESTful API - Well-structured Express.js endpoints
- Error Handling - Robust middleware for error management and logging
- Production Ready - Optimized build process and Netlify deployment configuration
- ESLint Integration - Consistent code quality standards
- Automated Testing - Unit and integration test coverage
- Request Logging - Detailed logging middleware for debugging
- Environment Configuration - Secure environment variable management
โโโโโโโโโโโโโโโโโโโ
โ React Client โ
โ (TailwindCSS) โ
โโโโโโโโโโฌโโโโโโโโโ
โ HTTP/REST
โ
โโโโโโโโโโผโโโโโโโโโ
โ Express.js API โ
โ (Node.js) โ
โโโโโโโโโโฌโโโโโโโโโ
โ Mongoose ODM
โ
โโโโโโโโโโผโโโโโโโโโ
โ MongoDB Atlas โ
โ (Database) โ
โโโโโโโโโโโโโโโโโโโ
/frontend- React application with modern hooks and functional components/backend- Express.js server with TypeScript support/controllers- Request handlers and business logic/models- Mongoose schemas and data models/routes- API endpoint definitions/services- Business logic layer/middleware- Error handling and request logging/config- Database and environment configuration
Clean, intuitive task management interface
Responsive design with real-time updates
- Node.js 18.x or higher
- MongoDB Atlas account (or local MongoDB instance)
- npm or yarn package manager
Create a .env file in the backend directory:
MONGODB_URI=your_mongodb_connection_string
PORT=5000
NODE_ENV=development# Clone the repository
git clone https://github.com/StrayDogSyn/full-stack-ToDoList-Hunter.git
cd full-stack-ToDoList-Hunter
# Install all dependencies (frontend + backend)
npm run install:all
# Start development servers
npm run start:backend # Terminal 1 - API server (port 5000)
npm run start:frontend # Terminal 2 - React app (port 3000)Backend Setup:
cd backend
npm install
npm run devFrontend Setup:
cd frontend
npm install
npm start- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
This application is configured for seamless Vercel Pro deployment with the included vercel.json configuration.
-
Connect Repository to Vercel
- Log in to Vercel
- Click "Add New..." โ "Project"
- Import your GitHub repository
-
Configure Build Settings (Auto-detected from vercel.json)
- Framework Preset: Create React App
- Root Directory:
./ - Build Command:
cd frontend && npm install && npm run build - Output Directory:
frontend/build - Install Command:
npm install - Node.js Version: 18.x (automatically detected)
-
Set Environment Variables
- Go to Project Settings โ Environment Variables
- Add
REACT_APP_API_URLwith your backend URL - Configure any additional environment variables
- Available for: Production, Preview, Development
-
Deploy
- Click "Deploy"
- Vercel automatically builds and deploys
- Get instant preview URLs for every commit
- Production deployment on main branch merges
# Install Vercel CLI
npm install -g vercel
# Login to Vercel
vercel login
# Deploy to preview
vercel
# Deploy to production
vercel --prod- Edge Network: Global CDN with 300+ edge locations
- Analytics: Real-time performance insights
- Password Protection: Secure preview deployments
- Custom Domains: Multiple custom domains support
- Team Collaboration: Share projects with team members
- Priority Support: 24/7 enterprise support
Deploy the backend API to complement your Vercel frontend:
- Convert Express routes to Vercel serverless functions
- Deploy backend in the same repository
- Automatic scaling and edge deployment
- Railway: Easy Node.js deployment with free tier
- Render: Managed Node.js hosting
- Fly.io: Global application deployment
- AWS Lambda: Serverless backend deployment
- Heroku: Traditional PaaS solution
Development: http://localhost:5000
Production: https://your-backend-url.com
| Method | Endpoint | Description | Request Body |
|---|---|---|---|
GET |
/api/tasks |
Retrieve all tasks | - |
GET |
/api/tasks/:id |
Retrieve specific task | - |
POST |
/api/tasks |
Create new task | { title: string, completed: boolean } |
PUT |
/api/tasks/:id |
Update task | { title?: string, completed?: boolean } |
DELETE |
/api/tasks/:id |
Delete task | - |
# Create a new task
curl -X POST http://localhost:5000/api/tasks \
-H "Content-Type: application/json" \
-d '{"title": "Complete project", "completed": false}'{
"success": true,
"data": {
"_id": "507f1f77bcf86cd799439011",
"title": "Complete project",
"completed": false,
"createdAt": "2025-10-26T12:00:00.000Z",
"updatedAt": "2025-10-26T12:00:00.000Z"
}
}# Frontend tests
npm run test:frontend
# Backend tests
npm run test:backend
# Backend tests with coverage
cd backend
npm run test:coverage# Lint frontend code
npm run lint:frontend
# Lint backend code
npm run lint:backend
# Auto-fix linting issues
cd backend && npm run lint:fixStrayDog Syndicate - Full-Stack Development
Special thanks to our collaborators from The Last Mile Remote Instruction Team:
- Terrell D. Lemons - Technical Guidance
- Karly Stark - Code Review & Best Practices
- Mark Velasquez - Architecture Consultation
- Natasha Towle - QA & Testing Support
- Nichole Harrison - Documentation Review
- Patrick Mikes - DevOps Guidance
- User authentication & authorization (JWT)
- Task categories and tags
- Priority levels for tasks
- Due dates and reminders
- Dark mode / Theme customization
- Task search and advanced filtering
- Task sharing and collaboration
- File attachments for tasks
- Progressive Web App (PWA) support
- Mobile app (React Native)
- Desktop app (Electron)
- Real-time collaboration features
- Calendar integration
- Third-party app integrations (Slack, Discord)
- Analytics dashboard
- Export functionality (CSV, PDF)
Contributions are welcome and appreciated! Here's how you can contribute:
- Fork the repository
- Create a feature branch
git checkout -b feature/AmazingFeature
- Commit your changes
git commit -m 'Add some AmazingFeature' - Push to the branch
git push origin feature/AmazingFeature
- Open a Pull Request
- Follow the existing code style
- Write meaningful commit messages
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting
Please be respectful and constructive in all interactions. We're here to build something great together.
Questions? Feedback? Opportunities?
Feel free to reach out for collaboration, bug reports, or just to say hello!
Copyright ยฉ 2025 StrayDog Syndicate. All rights reserved.
This software is proprietary and confidential. Unauthorized copying,
distribution, or use of this software, via any medium, is strictly
prohibited without express written permission from the copyright holder.
For licensing inquiries: straydogsyndicationsllc@gmail.com
Complete documentation is available in the /docs folder:
- ๐ Documentation Index - Complete guide to all documentation
- โก Quick Start - Deploy in 5 minutes
- โ Action Items - Deployment checklist
- ๐ Full Deployment Guide - Comprehensive Vercel guide
- ๐ท๏ธ Badge Updates - Update URLs after deployment
- ๐ Migration Summary - Netlify to Vercel changes
Visit the /docs folder for detailed guides on:
- Deploying to Vercel Pro
- Configuring environment variables
- Setting up custom domains
- Troubleshooting common issues
- Backend deployment options
- Performance optimization

