/Thinkrchive-Server

A small backend for the Thinkrchive app written in Kotlin with Ktor. It uses Postgresql with a few requests and JWT authentication for admins

Primary LanguageKotlinGNU General Public License v3.0GPL-3.0

๐Ÿ“ก Thinkrchive Server

Twitter: rackadev

A small backend for the Thinkrchive app written in Kotlin with Ktor. It uses Postgresql with a few requests and JWT authentication for admins.

โœจ Demo

๐Ÿ‹ Requirements to run

  • Java 11 or above
  • Intellij IDEA
  • Postgresql Desktop Client

๐Ÿ—๏ธ๏ธ Built with

Component Tool
๐ŸŽญ User Facing Clients Thinkrchive
๐Ÿง  Hosted Heroku
๐Ÿ’‰ DI Koin
๐Ÿ›ฃ๏ธ Navigation Ktor Routing + Ktor Locations
๐ŸŒŠ Async Coroutines
๐ŸŒ Networking Engine Ktor Netty Engine
๐Ÿ”’ Authentication Ktor JWT
๐Ÿ“„ JSON Kotlin Serialization
๐Ÿ’พ Persistance Postgresql
โŒจ๏ธ Logging Ktor Call Logging
๐Ÿ”ง Supplimentary Jetbrains Exposed + HikariCP
๐Ÿงช Testing Ktor Server Test )

๐Ÿง Fun Facts

  • The backend is hosted on Heroku free plan

  • Backend is used by the Thinkrchive Android app

๐Ÿ’ป Deploying on Heroku

โœ… TODO

  • Add more Tests (Unit Tests, Integration Tests)
  • Add more features
  • Make a Compose for Desktop client to manage admin features

๐Ÿ™‡ Credits

  • Special thanks to @theapache64 for readgen
  • Ktor documentation, awsome place to get started with Ktor

๐Ÿค Contributing

โค Show your support

Give a โญ๏ธ if this project helped you!

ko-fi

๐Ÿ“ License

    ThinkRhcive - An app showing all details for various Lenovo Thinkpad models.
    Copyright (C) 2021  racka98

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.

Made With โค From Tanzania ๐Ÿ‡น๐Ÿ‡ฟ

This README was generated by readgen โค