https://github.com/aryanagn/ticket-go-app
ticket-go mobile app
https://github.com/aryanagn/ticket-go-app
docker golang postgresql react-native typescript
Last synced: 6 months ago
JSON representation
ticket-go mobile app
- Host: GitHub
- URL: https://github.com/aryanagn/ticket-go-app
- Owner: aryanagn
- Created: 2025-04-21T03:52:32.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-02T17:51:24.000Z (about 1 year ago)
- Last Synced: 2025-08-25T11:39:36.376Z (11 months ago)
- Topics: docker, golang, postgresql, react-native, typescript
- Language: TypeScript
- Homepage:
- Size: 5.62 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ticket Application (Mobile)
A full-stack ticket booking application built with Golang (backend) and React Native (mobile frontend). Built using **React Native**, **Golang**, **PostgreSQL**, **Docker**, and **TypeScript**.
---
## Features
### Backend
- **User Authentication**: Secure registration and login with JWT tokens.
- **Event Management**: Create, update, delete, and list events.
- **Ticket Booking**: Book tickets for events, manage bookings, and view booking history.
- **Role-based Access**: Admin and user roles with appropriate permissions.
- **RESTful API**: Well-structured endpoints for all resources (fiber)
- **Database Integration**: Persistent storage using PostgreSQL.
- **Validation & Error Handling**: Robust input validation and descriptive error messages.
- **Scalable Architecture**: Modular codebase for easy extension.
### Mobile Frontend
- **User Registration & Login**: Simple onboarding and authentication.
- **Event Browsing**: List and search for available events.
- **Event Details**: View event information including date, time, location, and description.
- **Ticket Booking**: Book tickets directly from the app, including scanning functionality.
- **Booking History**: View and manage your past and future bookings.
- **Responsive UI**: Clean, modern, and intuitive interface.
- **State Management**: Efficient state handling for smooth user experience.
- **Deployment**: Fully containerized using docker with a proper CI/CD pipeline and instructions.
---
## Architecture
- **Backend**: Golang (Fiber/GORM), PostgreSQL, JWT authentication, Docker, CI/CD Pipeline with 1Password CLI integration
- **Frontend**: React Native, Redux (or Context API) for state management, REST API integration
- **Communication**: RESTful HTTP/JSON between mobile app and backend server
---
## Backend (Golang)
### Key Technologies
- Golang
- Fiber
- GORM
- JWT (authentication)
- PostgreSQL (database)
### Main Modules
- **User Module**: Handles registration, login, JWT token issuance, and user profile
- **Event Module**: CRUD operations for events
- **Booking Module**: Handles ticket booking/scanning QR, listing, and cancellation
- **Middleware**: Authentication and role-based access control
## Mobile Frontend (React Native)
### Key Technologies
- React Native
- Redux or Context API
- Axios (API calls)
- React Navigation (navigation)
- AsyncStorage (local storage)
### Main Screens
- **Login/Register Screen**: User authentication
- **Event List Screen**: Browse all available events
- **Event Details Screen**: View detailed event info and book tickets
- **Booking Screen**: View and manage your bookings
- **Profile Screen**: View and edit user profile
---