NoBullshit
A sample project entirely written in Kotlin. Backend/Frontend with Ktor and Android app.
Install / Use
/learn @PhilippeBoisney/NoBullshitREADME
No Bullshit - Perfect jobs only

No Bullshit is an open source project that wants to help developers find the perfect job. An expert developer reviews each job submitted through the platform. We publish only the best... 😎
This project is intented to show how to create a full project using Kotlin. Therefore, you'll find two main modules :
- backend : Contains the Ktor backend configured to run on Google App Engine. It also uses Freemarker for Java/html template. Data are persisted in Firestore.
- android : Contains the Android app written with Kotlin. It also uses FirebaseUI, Koin & Mockk.
Demo
Because a picture is worth a thousand words :
- 🌏The backend : https://nobullshit.appspot.com/
- 📱The mobile app : Playstore
Posts
Some Medium posts about NoBullshit :
Where to start ?
You want to contribute or understand what this is all about, but you don't know where to start? Here are some useful resources :
About the backend :
Running samples
The backend sample can be run locally (http://localhost:8080/) using the following script :
./run-locally.sh
If you want to deploy it to your own GAE project, you can use the following script :
./deploy.sh YOUR_GAE_PROJECT_ID
Running tests
If you want to run the unit tests for the backend :
./gradlew :backend:test
If you want to run the instrumented tests for the android app :
./gradlew :android:connectedAndroidTest
Related Skills
node-connect
349.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
