Novelys

Context

Mobile reading tracker with book search, personal library, custom lists, and recommendations

Description

Novelys is a TypeScript monorepo managed with Turborepo and pnpm, combining an Expo/React Native mobile app, an Express API, and a shared package of Zod contracts. The app lets users search books through Google Books, build a personal library, manage reading statuses, ratings, and reviews, then organize books into custom reading lists. The backend exposes dedicated modules (search, library, lists, preferences, recent searches, stats), protects routes with a Bearer token, and persists data in SQLite through Drizzle ORM. The API is Dockerized for easier local setup.

March 2026
1 person

Skills used

React
TypeScript
Node.js
Express
Zod
Drizzle ORM
Docker
pnpm
Turborepo
Tailwind CSS

Skills

Skills used

React
TypeScript
Node.js
Express
Zod
Drizzle ORM
Docker
pnpm
Turborepo
Tailwind CSS

Skills acquired

Turborepo
Drizzle ORM
Zod
Docker

Skills improved

React
TypeScript
Node.js
Express
Tailwind CSS

Features

12Features
Swipe< >
01

Turbo monorepo with mobile app + API service + shared package, orchestrated with pnpm

Turborepo
pnpm
TypeScript
02

Expo / React Native mobile app with tab and stack navigation

React
TypeScript
Tailwind CSS
03

Google Books search integration with configurable language

React
TypeScript
Node.js
04

Personalized recommendations built from library and reading-list signals

React
TypeScript
Node.js
05

Personal library with status filters and title/author search

React
TypeScript
06

Library sorting by date or author with ascending/descending order

React
TypeScript
07

Book detail screen with direct add-to-library or add-to-list actions

React
TypeScript
Node.js
08

Library item editor (status, rating, review, delete)

React
TypeScript
09

Custom reading lists with previews, add, and remove flows

React
TypeScript
Node.js
10

Profile screen with reading stats (average rating, pages read, status split) and theme/language settings

React
TypeScript
11

Modular Express API secured by token-based authentication

Node.js
Express
Zod
12

SQLite persistence with Drizzle ORM + shared Zod contracts + Docker API runtime

Drizzle ORM
Zod
Docker
TypeScript

Gallery

Gallery

9