A modern, serverless email client application built with React and AWS services. PostMate provides a clean, intuitive interface for managing emails efficiently.
-
📨 Email Management
- Streamlined inbox, sent, and draft views
- Intuitive email composition interface
- Real-time email synchronization
- Advanced search capabilities
-
⚡ Serverless Architecture
- AWS DynamoDB for reliable data storage
- AWS S3 for file attachments
- Scalable and maintenance-free backend
-
🎯 User Experience
- Clean, modern interface
- Responsive design for all devices
- Quick email preview and selection
- Intuitive navigation system
- Frontend: React.js with Vite
- Routing: React Router v6
- Backend: AWS Serverless Architecture
- DynamoDB for data storage
- S3 for file storage
- Styling: Modern CSS3
postmate/ ├── src/ │ ├── assets/ # Static assets and styles │ ├── cmps/ # Reusable components │ ├── pages/ # Page components │ ├── services/ # AWS and utility services │ └── App.jsx # Root component
## Setup and Installation
1. **Clone the repository**
```bash
git clone <repository-url>
cd postmate
-
Install dependencies
npm install
-
Configure environment variables Create a
.envfile:VITE_AWS_REGION=your_region VITE_AWS_ACCESS_KEY_ID=your_access_key VITE_AWS_SECRET_ACCESS_KEY=your_secret_key
-
Start development server
npm run dev
- Table name: 'emails'
- Primary key: 'emailId'
- Required IAM permissions for CRUD operations
- Bucket configuration for file storage
- Appropriate CORS settings
- Security policies
- Streamlined email list view
- Quick actions (select, star, delete)
- Preview of email content
- Smart date formatting
- Rich text composition
- File attachment support
- Auto-save drafts
- Quick send functionality
- Email storage and retrieval
- Status management
- User data persistence
- Secure file storage
- Efficient attachment handling
npm run dev- Development servernpm run build- Production buildnpm run preview- Production preview
- Fork the repository
- Create feature branch (
git checkout -b feature/NewFeature) - Commit changes (
git commit -m 'Add NewFeature') - Push to branch (
git push origin feature/NewFeature) - Create Pull Request
This project is licensed under the MIT License.
- Built with modern React practices
- Powered by AWS serverless architecture
- Inspired by modern email clients