https://github.com/rahuljsaliaan/microtix
Microtix is a microservices-based platform for seamless event ticket booking. It allows users to easily discover, book, and manage tickets for various events such as concerts, amusement parks, and more.
https://github.com/rahuljsaliaan/microtix
docker javascript jest kubernetes microservices mongoose nats-streaming nextjs nodejs skaffold stripe supertest typescript yaml
Last synced: 7 months ago
JSON representation
Microtix is a microservices-based platform for seamless event ticket booking. It allows users to easily discover, book, and manage tickets for various events such as concerts, amusement parks, and more.
- Host: GitHub
- URL: https://github.com/rahuljsaliaan/microtix
- Owner: rahuljsaliaan
- License: mit
- Created: 2024-01-20T06:32:40.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-18T16:50:04.000Z (over 1 year ago)
- Last Synced: 2025-02-01T21:13:41.042Z (9 months ago)
- Topics: docker, javascript, jest, kubernetes, microservices, mongoose, nats-streaming, nextjs, nodejs, skaffold, stripe, supertest, typescript, yaml
- Language: TypeScript
- Homepage:
- Size: 1.16 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Microtix - Your Ticket to Unforgettable Experiences 🎫
Discover the convenience of seamless ticket booking with Microtix, the ultimate platform for accessing a wide range of events and experiences. Whether you're planning a night out at a concert or a day of adventure at an amusement park, Microtix has you covered.
## Features at a Glance
- **Efficient Ticketing:** Easily browse events, select your preferred seats, and secure your tickets with just a few clicks.- **User Authentication:** Create an account or log in to access exclusive offers, manage bookings, and receive personalized recommendations.
- **Seamless Payments:** Enjoy hassle-free payment processing with secure transactions powered by Stripe.
- **Containerization with Docker:** Leveraging Docker for containerization, ensuring easy deployment and scalability of Microtix across various environments.
- **Orchestration with Kubernetes:** Utilizing Kubernetes for seamless management and orchestration of Microtix containers, guaranteeing high availability and scalability.
- **Event-Driven Architecture with NATS Streaming Server:** Implementing an event-driven architecture with NATS Streaming Server for efficient communication and handling of events between microservices.
- **Ingress for Communication:** Utilizing Ingress to manage inbound traffic and facilitate communication between clients and Microtix services.
## How to Contribute
Thank you for considering contributing to Microtix! To contribute, please follow these steps:
1. Clone the repository:
```bash
git clone -b dev https://github.com/yourusername/microtix.git
```2. Create a new branch for your changes:
```bash
git checkout -b feature/my-new-feature
```3. Make your changes and commit them:
```bash
git commit -am 'Add some feature'
```4. Push your changes to your fork:
```bash
git push origin feature/my-new-feature
```5. Create a Pull Request (PR) against the `dev` branch of the main repository.
## Automated Testing with GitHub Actions
We use GitHub Actions for automated testing. Whenever you create a pull request, the Jest test suite will automatically run against the changed files. This ensures that your changes adhere to our code quality standards.
## Technologies Used
- **TypeScript:** Providing static types and modern JavaScript features to enhance code quality and readability. Used exclusively in our Node.js (backend).
- **Node.js:** Powering the backend logic of our ticket booking platform with its efficiency and scalability.
- **Next.js:** Utilized for server-rendered React applications, ensuring optimal performance and SEO benefits.
- **MongoDB:** Managing our dynamic event and user data with its flexible and scalable NoSQL database solution.
- **Stripe:** Facilitating secure and seamless payment transactions to enhance the ticket booking experience.
- **Jest and Supertest:** Ensuring the reliability and functionality of our application through comprehensive testing.
## Continuous Deployment
Microtix is on its way to being hosted on a reliable platform to ensure continuous deployment and keep our platform up-to-date with the latest features and improvements.
---
Thank you for choosing Microtix for your ticketing needs. We're dedicated to providing you with easy access to unforgettable experiences. If you have any questions or feedback, don't hesitate to get in touch. Let the adventures begin! 🎉🎟️✨