{"id":22437093,"url":"https://github.com/somnath-chattaraj/zapier","last_synced_at":"2025-12-30T19:04:21.492Z","repository":{"id":248740371,"uuid":"828254838","full_name":"Somnath-Chattaraj/Zapier","owner":"Somnath-Chattaraj","description":"This is a scalable and modular Zapier clone designed to handle webhooks, email notifications, and Solana blockchain integration. Built with modern technologies, the platform ensures robust performance, efficient task automation, and seamless integration capabilities.","archived":false,"fork":false,"pushed_at":"2024-11-25T10:00:56.000Z","size":191,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-01T13:44:44.784Z","etag":null,"topics":["expressjs","kafka","nextjs","nodejs","postgresql","solana"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Somnath-Chattaraj.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-13T15:21:32.000Z","updated_at":"2025-01-02T21:40:03.000Z","dependencies_parsed_at":"2024-08-28T06:46:45.249Z","dependency_job_id":"8b1c0b93-f426-48a6-bd30-db2221055e70","html_url":"https://github.com/Somnath-Chattaraj/Zapier","commit_stats":null,"previous_names":["somnath-chattaraj/zapier"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Somnath-Chattaraj%2FZapier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Somnath-Chattaraj%2FZapier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Somnath-Chattaraj%2FZapier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Somnath-Chattaraj%2FZapier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Somnath-Chattaraj","download_url":"https://codeload.github.com/Somnath-Chattaraj/Zapier/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245813200,"owners_count":20676763,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expressjs","kafka","nextjs","nodejs","postgresql","solana"],"created_at":"2024-12-06T00:11:37.591Z","updated_at":"2025-12-30T19:04:21.469Z","avatar_url":"https://github.com/Somnath-Chattaraj.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AutoFlow\n[![GitHub release](https://img.shields.io/github/v/release/Somnath-Chattaraj/Zapier)](https://github.com/Somnath-Chattaraj/Zapier/releases)\n[![GitHub issues](https://img.shields.io/github/issues/Somnath-Chattaraj/Zapier)](https://github.com/Somnath-Chattaraj/Zapier/issues)\n[![GitHub forks](https://img.shields.io/github/forks/Somnath-Chattaraj/Zapier)](https://github.com/Somnath-Chattaraj/Zapier/network)\n[![GitHub stars](https://img.shields.io/github/stars/Somnath-Chattaraj/Zapier)](https://github.com/Somnath-Chattaraj/Zapier/stargazers)\n[![License: Royalty License](https://img.shields.io/badge/License-Royalty-blue)](https://github.com/Somnath-Chattaraj/Zapier/blob/master/LICENSE)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](http://makeapullrequest.com)\n[![code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n### **Overview**\n\nThis is a scalable and modular workflow designed to handle webhooks, email notifications, and Solana blockchain integration. Built with modern technologies, the platform ensures robust performance, efficient task automation, and seamless integration capabilities.\n\n### **Features**\n\n- **Webhooks**: Trigger events and actions programmatically.\n- **Email Notifications**: Automate sending and receiving emails.\n- **Solana Integration**: Utilize Solana blockchain for decentralized operations.\n- **Scalable Architecture**: Powered by Kafka for message streaming.\n- **Full-Stack Solution**: Built using Next.js, Node.js, and Express for both frontend and backend functionalities.\n- **Database Management**: Prisma ORM integrated with PostgreSQL for efficient data handling.\n\n---\n### **Tech Stack**\n\n- **Frontend** : Next.js\n- **Backend** : Node.js, Express\n- **Database** : PostgresSQL with Prisma\n- **Messaging** : Kafka\n- **Blockchain** : Solana\n\n---\n\n### **System Design**\n![System Design](frontend/public/image.png)\n\n---\n\n## **Getting Started**\n\n### Prerequisites\n\nEnsure the following tools are installed on your system:\n\n - Docker (for containerized environment)\n - Node.js (v18 or later)\n - Kafka (for message brokering)\n\n### Clone Respositry\n```\ngit clone https://github.com/Somnath-Chattaraj/Zapier.git\ncd Zapier\n```\n\n### Set Up Environment Variables\n\nCreate a `.env` file in every location where a `.env.example` file is present. Copy the contents of the corresponding `.env.example` file and update the placeholder values with your actual configuration.\n\n### Start the project\n1. **Install Dependencies in every folder**:\n```\ncd frontend\nnpm i\ncd ../primary_backend\nnpm i\ncd ../hooks\nnpm i\ncd ../worker\nnpm i\ncd ../processor\nnpm i\n```\n2. **Start Kafka**:\nIf using docker, start kafka with\n```\ndocker run -p 9092:9092 -d apache/kafka:3.9.0\n```  \nThen, access the Kafka container:\n```\ndocker exec -it \u003ccontainer_id\u003e /bin/bash\n```\nCreate a topic named zap-events:\n\n```\nbin/kafka-topics.sh --create --topic zap-events --bootstrap-server localhost:9092\n```\n\n3. **Run Database Migrations**:\n    Go to every folder and migrate the database\n```\ncd primary_backend\nnpx prisma migrate dev\ncd ../hooks\nnpx prisma migrate dev\ncd ../worker\nnpx prisma migrate dev\ncd ../processor\nnpx prisma migrate dev\n```\n\n4. **Run the Application** \n\u003cbr/\u003e\nRun the frontend \n```\ncd frontend\nnpm run dev\n``` \n\nRun the primary backend\n\n```\ncd primary_backend\ntsc -b\nnode dist/index.js\n```\n\nRun the processor\n\n```\ncd processor\ntsc -b\nnode dist/index.js\n```\n\nRun the worker\n\n```\ncd worker\ntsc -b\nnode dist/index.js\n```\n\nRun the hooks\n\n```\ncd hooks\ntsc -b\nnode dist/index.js\n```\n\n5. **Access the application at `http://localhost:3000`**.\n\n## Usage\n- **Webhooks**: Configure webhook URLs and trigger actions through the dashboard.\n- **Emails**: Set up email templates and automate notifications.\n- **Blockchain**: Utilize Solana integration for blockchain-specific triggers and workflows.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsomnath-chattaraj%2Fzapier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsomnath-chattaraj%2Fzapier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsomnath-chattaraj%2Fzapier/lists"}