Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/amitkannaujiya/gotrainbookinggrpcserver
This Repo will have a golang grpc server which will expose protobuf api for the train ticket booking .
https://github.com/amitkannaujiya/gotrainbookinggrpcserver
api go-patterns golang grpc-server
Last synced: 18 days ago
JSON representation
This Repo will have a golang grpc server which will expose protobuf api for the train ticket booking .
- Host: GitHub
- URL: https://github.com/amitkannaujiya/gotrainbookinggrpcserver
- Owner: AmitKannaujiya
- License: apache-2.0
- Created: 2024-10-24T20:24:48.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-10-25T03:48:41.000Z (2 months ago)
- Last Synced: 2024-10-27T07:51:05.933Z (2 months ago)
- Topics: api, go-patterns, golang, grpc-server
- Language: Go
- Homepage:
- Size: 19.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go Ticket Booking Server (GRPC API for Train Ticket Booking)
This Repo will have a golang grpc server which will expose protobuf api for the train ticket booking .## List of features
### Generate Seats for Section
* Add configurable no of seat for each section (A or B)### Purchase Ticket PurchaseTicket
* Add Booking for User (firstName, lastName, Section A or B, Price, Source, Destination)
* Store Booking history in memory### Generate Booking Receipt
* Get Booking details against ReceiptId### Get List of Users for each sections
* Send List of Users and booked seats section wise
* Fetch and send details of User Seat mapping### Modify Seat of User
* Modify the seat of user if it is available
* Update the booking### Remove User from Train (Cancel Booking)
* Modify the seat of user if it is available
* Update the booking# Running Locally using Docker
* git clone https://github.com/AmitKannaujiya/GoTrainBookingGrpcServer.git
```bash
cd
go run main.go```
access site on: http://localhost:5001/
# Documentation
* [API Docs](pending)
* [Model Design](pending)
* [Code Structure](pending)# TODO
- [ ] Add tests for more cases
- [ ] Add tests for helpers
- [ ] Add documentation
- [ ] Add Authentication
- [ ] Update Logging