Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .github/workflows/maven.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: DevShelf CI

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: maven

- name: Build with Maven
run: mvn -B package --file pom.xml

- name: Run Tests
run: mvn test
61 changes: 0 additions & 61 deletions documentation/Chapter 0 Overview of DevShelf.md

This file was deleted.

59 changes: 59 additions & 0 deletions documentation/Chapter 0_ Overview of DevShelf.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Tutorial: DevShelf

DevShelf is a **digital library search engine** that helps users *discover and read programming books*.
It intelligently **searches for books** using a pre-built index, provides "Did you mean?" suggestions, and offers
*personalized recommendations* based on book details and user popularity. The system also tracks user clicks
to continuously improve its search results and recommendations, presenting information through both command-line
and graphical interfaces.


## Visual Overview

```mermaid
flowchart TD
A0["Book (Domain Model)
"]
A1["Application Orchestration
"]
A2["User Interface (UI) Presentation
"]
A3["Offline Search Indexing
"]
A4["Core Search Engine
"]
A5["User Behavior Analytics
"]
A6["Intelligent Search Enhancements
"]
A7["Text Preprocessing
"]
A1 -- "Loads" --> A0
A1 -- "Loads Index Data for" --> A3
A1 -- "Sets up" --> A2
A1 -- "Initializes" --> A4
A1 -- "Initializes" --> A5
A1 -- "Initializes" --> A6
A1 -- "Prepares tools for" --> A7
A3 -- "Indexes" --> A0
A3 -- "Uses" --> A7
A3 -- "Provides Index Data to" --> A4
A4 -- "Processes Queries with" --> A7
A4 -- "Provides Initial Results to" --> A6
A5 -- "Logs Clicks on" --> A0
A5 -- "Provides Popularity to" --> A6
A6 -- "Enhances" --> A2
A2 -- "Sends Query to" --> A4
```

## Chapters

1. [User Interface (UI) Presentation](./Chapter%201:%20User%20Interface%20(UI)%20Presentation.md)
2. [Book (Domain Model)](./Chapter%202:%20Book%20(Domain%20Model).md)
3. [Application Orchestration](./Chapter%203:%20Application%20Orchestration.md)
4. [Core Search Engine](./Chapter%204:%20Core%20Search%20Engine.md)
5. [Text Preprocessing](./Chapter%205:%20Text%20Preprocessing.md)
6. [Offline Search Indexing](./Chapter%206:%20Offline%20Search%20Indexing.md)
7. [Intelligent Search Enhancements](./Chapter%207:%20Intelligent%20Search%20Enhancements.md)
8. [User Behavior Analytics](./Chapter%208:%20User%20Behavior%20Analytics.md)


Loading