Qualtet is an API-based blogging system (server-side).
Version | CI/CD | Coverage | |
---|---|---|---|
v2.x |
|||
v1.x |
Project | Description |
---|---|
Qualtet | API-based blogging system (server-side). |
Qualtet-mock | Mock server of Qualtet. Created for Quintet's E2E tests. |
Qualtet-CLI | A set of wrappers that call the APIs of Hexo and Qualtet. |
Quintet | The front end for Qualtet. |
About Hexo. Hexo is an SSG, but I'm using it only for local content management (such as markdown, images, etc.). The content of my website depends on Hexo locally. However, Qualtet doesn't necessarily need to depend on Hexo or any other SSG or CMS, etc.
An example architecture.
- sbt 1.11.x
- Scala 3.7.x
- Java 21.x, 17.x (Perhaps works with 11.x)
- MariaDB 11.4.x
- docker & docker-compose 3.x (for test)
Please see website.
Please see releases page.
Technology | Purpose | |
---|---|---|
Core | Scala | Primary programming language |
cats | Functional programming library | |
cats-effect | Pure asynchronous runtime | |
HTTP/API | http4s | HTTP server |
jsoniter-scala | JSON codec | |
jwt-scala | JWT authentication support | |
Database | doobie | Functional JDBC layer |
MariaDB JDBC Driver | Database connectivity | |
Flyway | Database migration management | |
Observability | OpenTelemetry | Distributed tracing and metrics |
otel4s | Scala OpenTelemetry integration | |
Logging | logback | Logging implementation |
slf4j | Logging facade | |
Logstash Encoder | Structured logging | |
Configuration | Typesafe Config | Configuration management |
Utils | airframe-ulid | ULID generation |
caffeine | Caching | |
Spring Security | Password hashing | |
Testing | ScalaTest | Testing framework |
Mockito | Mock | |
DevOps | Scalafmt | Code formatter |
GitHub Actions | CI/CD pipeline | |
Coveralls | Code coverage reporting | |
ReDoc | API documentation generation | |
GitHub Pages | Documentation hosting |
The current master branch is for v2.x
. v1.x
branch is here. But it will be not updated.
This code is open source software licensed under the Apache 2.0 License.