Skip to content

This is an Android app built with Jetpack Compose. It uses Paging 3 library to fetch the data from our own REST API server developed with Ktor framework.

License

Notifications You must be signed in to change notification settings

icanerdogan/JetBorutoKtorServerApp

 
 

Repository files navigation

JetBoruto Ktor Server App

JetBorutoKtorServerApp is a server-side Kotlin application that leverages the Ktor framework to provide RESTful APIs for Boruto, a sample project. The application includes routes to manage data related to Boruto characters and offers endpoints to facilitate CRUD operations on the server.

Dark - Home Dark - Detail Collapsed Dark - Detail Expanded Dark - Search
jetboruto-dark-1 jetboruto-dark-2 jetboruto-dark-3 jetboruto-dark-4
Light - Home Light - Detail Collapsed Light - Detail Expanded Light - Search
jetboruto-light-1 jetboruto-light-2  jetboruto-light-3 jetboruto-light-4

Table of Contents

Features

  • RESTful API: Provides easy-to-use endpoints for CRUD operations on Boruto character data.
  • Data Storage: Supports data persistence and retrieval.
  • Ktor Framework: Uses Ktor for asynchronous server capabilities.
  • Dependency Injection: Implemented with Koin for scalable dependency management.
  • Exception Handling: Includes error handling and responses for invalid requests.
  • Unit Tests: Tests for core functionalities to ensure reliable operations.

Technologies

  • Kotlin - Primary programming language
  • Ktor - Server framework for Kotlin
  • Koin - Dependency injection framework for Kotlin
  • Exposed - SQL library for data access
  • SQLite - Database for local data persistence
  • JUnit - Testing framework for unit tests

Installation

To set up and run the JetBorutoKtorServerApp locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/icanerdogan/JetBorutoKtorServerApp.git
  2. Navigate to the project directory:

    cd JetBorutoKtorServerApp
  3. Build the project:

    ./gradlew build
  4. Run the server:

    ./gradlew run

The server will start running at http://localhost:8080.

Usage

Once the server is running, you can access the API through HTTP requests using tools like curl, Postman, or directly through your application.

API Endpoints

Method Endpoint Description
GET /characters Fetches a list of all characters
GET /characters/{id} Fetches a character by ID
POST /characters Adds a new character
PUT /characters/{id} Updates an existing character
DELETE /characters/{id} Deletes a character by ID

Each endpoint returns a JSON response containing the status and data or an error message.

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch: git checkout -b feature-name.
  3. Make your changes and commit them: git commit -m 'Add some feature'.
  4. Push the branch: git push origin feature-name.
  5. Open a pull request.

License

This project is open-source and available under the MIT License. See the LICENSE file for more details.

About

This is an Android app built with Jetpack Compose. It uses Paging 3 library to fetch the data from our own REST API server developed with Ktor framework.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 100.0%