A modern automation platform that connects your favorite apps and services. Built with scalability and extensibility in mind.
- 🔗 Connect multiple apps and services
- 🤖 Automated workflow creation
- 📧 Gmail integration
- 💌 Email automation
- 🔐 Secure OAuth2 authentication
- 🌐 RESTful API
- 🚀 Real-time processinggit clone https://github.com/SwarnenduG07/chainx.git cd chainx
- Frontend: Next.js 14, TailwindCSS, TypeScript
- Backend: Express.js, Node.js
- Database: PostgreSQL, Prisma ORM
- Message Queue: Apache Kafka
- Authentication: JWT, OAuth2
- Infrastructure: Docker,
- CI/CD: GitHub Actions
- Prettier for code formatting
chainx/
├── apps/
│ ├── web/ # Next.js frontend
│ ├── primary-backend/ # Main API server
│ ├── processor/ # Kafka message processor
│ ├── worker/ # Background job worker
│ └── hooks/ # Webhook handlers
├── packages/
│ ├── db/ # Prisma database package
│ ├── ui/ # Shared UI components
│ ├── config-eslint/ # ESLint configuration
│ ├── config-typescript/ # TypeScript configuration
│ └── config-tailwind/ # TailwindCSS configuration
Node.js 20+ pnpm 9+ Docker (optional)
Run the following command:
git clone https://github.com/SwarnenduG07/chainx.git
cd chainx
pnpm install
# Databse url = DATABASE_URL=postgresql://user:password@localhost:5432/chainx
# SendGrid Configuration
SMTP_HOST=smtp.sendgrid.net
SMTP_PORT=587
SMTP_USER=apikey
SMTP_PASS=your_new_sendgrid_api_key
SMTP_FROM=your_new_verified_sender@domain.com
# JWT Configuration
JWT_SECRET=generate_strong_random_secret
FRONTEND_URL=http://localhost:3000
# Google Cloud/Gmail Configuration
GMAIL_TOPIC_NAME=projects/your-new-project-id/topics/gmail-topic
PUBSUB_SUBSCRIPTION=projects/your-new-project-id/subscriptions/gmail-subscription
GMAIL_CLIENT_ID=your_new_gmail_client_id
GMAIL_CLIENT_SECRET=your_new_gmail_client_secret
GMAIL_REDIRECT_URI=http://localhost:3002/api/v1/trigger/gmail/callback
pnpm run dev
pnpm build # Build all apps and packages
pnpm dev # Start development servers
pnpm test # Run tests
pnpm lint # Run linting
pnpm type-check # Run type checking
graph TD
A[Web Frontend] --> B[API Gateway]
B --> C[Primary Backend]
C --> D[PostgreSQL]
C --> E[Kafka]
E --> F[Processor]
F --> G[Worker]
Turborepo
Next.js
Express
Prisma
kafka
gmail-api\