ReactJS/NodeJS Web Application Development Skill¶
Overview¶
The ReactJS/NodeJS Web Application Development skill provides comprehensive guidance for building robust, scalable full-stack web applications. This skill covers the complete development lifecycle from initial setup through deployment, focusing on modern React patterns and Node.js best practices.
Key Capabilities¶
- Frontend Development: React component architecture, hooks, state management
- Backend Development: Express.js APIs, middleware, database integration
- Full-Stack Integration: API communication, authentication, data flow
- Modern Tooling: Vite, ES6+, testing frameworks, deployment pipelines
- Best Practices: Code organization, performance optimization, security
When to Use¶
This skill excels at helping developers:
- Build complete web applications from scratch
- Add new features to existing React/Node.js applications
- Implement complex user interfaces with state management
- Create RESTful APIs with proper authentication
- Set up modern development workflows
- Deploy full-stack applications to production
Skill Components¶
Core Templates¶
- React Component Template: Functional components with hooks
- Express Route Template: RESTful API endpoints
- API Service Template: Frontend-backend communication
- Authentication Middleware: JWT-based security
Configuration Files¶
- Frontend Package.json: React application dependencies
- Backend Package.json: Node.js server dependencies
- Docker Compose: Containerized deployment
Documentation¶
- Comprehensive Guide: Step-by-step development instructions
- Code Examples: Real-world implementation patterns
- Best Practices: Industry-standard development guidelines
Architecture Patterns¶
Frontend Architecture¶
src/
├── components/ # Reusable UI components
├── pages/ # Route-based page components
├── hooks/ # Custom React hooks
├── context/ # Global state management
├── services/ # API communication layer
├── utils/ # Helper functions
└── styles/ # Component styling
Backend Architecture¶
src/
├── controllers/ # Business logic handlers
├── models/ # Data models and schemas
├── routes/ # API endpoint definitions
├── middleware/ # Custom Express middleware
├── config/ # Configuration files
└── utils/ # Server utilities
Development Workflow¶
- Project Setup: Initialize React and Node.js projects
- Component Development: Build reusable React components
- API Development: Create Express.js endpoints
- State Management: Implement data flow patterns
- Authentication: Add user authentication and authorization
- Testing: Write comprehensive test suites
- Deployment: Configure production deployment
Technology Stack¶
Frontend¶
- React 18+ with functional components
- React Router for navigation
- Context API for state management
- Modern CSS (Modules, styled-components)
- Jest and React Testing Library
Backend¶
- Node.js with Express.js
- JWT for authentication
- MongoDB/Mongoose for data persistence
- Input validation and error handling
- Jest and Supertest for testing
DevOps¶
- Docker for containerization
- Environment-based configuration
- CI/CD pipeline setup
- Production deployment strategies
Example Applications¶
The skill includes complete examples for: - Task Management App: Full CRUD with authentication - Blog Platform: Content management with user roles - E-commerce Site: Product catalog with shopping cart - Social Dashboard: Real-time updates and interactions
Performance & Security¶
- Code splitting and lazy loading
- Bundle optimization and caching
- Input sanitization and validation
- CORS configuration
- Rate limiting and security headers
- Environment variable management
Skill Location¶
Available at: .github/skills/react-nodejs-webapp/
Related Skills¶
- API Development: Backend-focused API creation
- Database Design: Data modeling and optimization
- Authentication: Advanced security patterns
- Testing: Comprehensive testing strategies
- DevOps: Deployment and infrastructure