Container Name: StudyAbroadDocker Docker Container consists of image with Java Spring Boot backend project for storing data, with postgresSQL as database.
Install and Setup List any prerequisities, setup options and configuation details. Install Docker on your machine.
Clone the repository
git clone https://github.com/harsh25jai/StudyAbroad.git
Go to the project directory
cd ./StudyAbroad
making sure docker is successfully installed and running
docker
Load docker image from tar file
docker load < studyabroaddocker.tar
Check docker images
docker images
Run docker image
docker container run studyabroaddocker
To test the mobile app
install the StudyAbroadApp.apk
on any Android device.
Note: The API domain configure in this apk is
192.168.0.195
, you can change this easily by going inside codebase/StudyAbroadApp/src/core/index.ts API_URL.base. After change it will require for new build generation for which follow steps to setup React Native Project.
For building and running the application you need:
There are several ways to run a Spring Boot application on your local machine. One way is to execute the main
method in the com.example.studyabroad.StudyabroadApplication
class from your IDE.
Alternatively you can use the Spring Boot Maven plugin like so:
mvn spring-boot:run
OR You can use the VS Code Spring Boot Dashboard
And goto com.example.studyabroad.StudyabroadApplication
class to configure running.
This is a new React Native project, bootstrapped using @react-native-community/cli
.
Note: Make sure you have completed the React Native - Environment Setup instructions till "Creating a new application" step, before proceeding.
-
Node.js > 12 and npm (Recommended: Use nvm)
-
Xcode 12 iOS Only
-
Cocoapods 1.10.1 iOS Only
This template follows a very simple project structure:
-
src
: This folder is the main container of all the code inside your application. -
assets
: Asset folder to store all fonts, images, vectors, etc.
Filename strategy PascalCase for example NewImage.png, NewFont.ttf
components
: Folder to store any common component that you use through your app (such as a generic button)
Filename strategy FileName PascalCase for example AppButton.tsx, create sepearte style file only when component is exceeding over 500 lines of code.
-
core
: Folder to store any kind of constant that you have. -
routes
: Folder to store the navigators. -
screens
: Folder that contains all your application screens/features. -
test-utils
: Folder to store tests-related utilities and components. -
App.tsx
: Main component that starts your whole app. -
index.js
: Entry point of your application as per React-Native standards. -
package.json
: Metadata file in a Node.js project that contains information about the project.
Clone the project
git clone https://github.com/harsh25jai/StudyAbroad.git
Go to the project directory
cd codebase/StudyAbroadApp
Install dependencies
# using npm
npm install
# OR using Yarn
yarn install
First, you will need to start Metro, the JavaScript bundler that ships with React Native.
To start Metro, run the following command from the root of your React Native project:
# using npm
npm start
# OR using Yarn
yarn start
Let Metro Bundler run in its own terminal. Open a new terminal from the root of your React Native project. Run the following command to start your Android or iOS app:
# using npm
npm run android
# OR using Yarn
yarn android
Check -src/core/index.ts
, API_URL.base = IP Address of the machine running backend
For Android
npm run android -- --mode="release"