Restful-API for Trexense APP.
You can view the API documentation here.
- Node.js: High-performance JavaScript runtime environment that enables server-side application development.
- Express.js: Lightweight and flexible web application framework for Node.js.
- Prisma: Modern database toolkit and ORM that offers type-safe database access.
- Google Cloud Storage: Scalable and secure cloud storage service for storing and retrieving application media files like profile pictures, banners, and hotel images with global availability and high performance.
- Vision API: Advanced machine learning-powered image analysis service that provides intelligent image filtering.
- PostgreSQL: Powerful, open-source relational database management system known for its reliability, robust feature set, and advanced data integrity capabilities.
src/:config/: Holds configuration files, such as environment-specific settingscontrollers/: Handles the application's routing and request handlingmiddlewares/: Includes custom Express middleware, such as logging, validation, and other cross-cutting concernsroutes/: Defines the Express route definitionsservices/: Contains the application's business logic and servicesutils/: Holds various utility functions and helper modulesvalidations/: Contains input validation rules and logicapp.js: The main entry point of the Express application
- DATABASE_URL="your postgre url"
- PORT=8080
- JWT_SECRET="secret for jwt"
- HERE_API_SECRET="api key for hereapi"
- EMAIL="email for send email verification"
- PASSWORD="password for email"
- BUCKET_NAME="bucket storage name"
- BACKEND_URL="this app url"
- CREDENTIAL="gcp service account url"
-
Clone the repository
-
Create the
.envfile with your configuration:vim .env
-
Build the Docker image
docker build -t trexense-server . -
Run the Docker container
docker run -d --name trexense --env-file .env -p 8080:8080 trexense-server
| Name | ID Bangkit |
|---|---|
| Gerry Desrian | C764B4KY1602 |
| Maria Stephanie Rayadi | C172B4KX2408 |