Ei kuvausta

Graciela Gallas f0f6c03316 Merge branch 'main' into feature/integration-tests-note-controller 9 kuukautta sitten
.github 996de17861 fix release workflow 9 kuukautta sitten
desktop-app 70787ef800 fix release workflow 9 kuukautta sitten
gradle df39d1962b first commit 10 kuukautta sitten
src f0f6c03316 Merge branch 'main' into feature/integration-tests-note-controller 9 kuukautta sitten
.gitattributes df39d1962b first commit 10 kuukautta sitten
.gitignore 1dd00b5fdf update logo 10 kuukautta sitten
Dockerfile df39d1962b first commit 10 kuukautta sitten
README.md f4f0f71cf7 update readme 10 kuukautta sitten
TESTING_WORKFLOW.md 108b8cf2b4 fix app release workflow 9 kuukautta sitten
UNIFIED_WORKFLOW.md 23dfeb4027 Feat/desktop app (#3) 9 kuukautta sitten
WORKFLOW_BUILD_FIX.md 996de17861 fix release workflow 9 kuukautta sitten
WORKFLOW_PERMISSIONS_FIX.md 108b8cf2b4 fix app release workflow 9 kuukautta sitten
build.gradle fe1bb75110 feat: add integration tests for NoteController 9 kuukautta sitten
gradlew a5cffc6e8c add frontend 10 kuukautta sitten
gradlew.bat df39d1962b first commit 10 kuukautta sitten
settings.gradle df39d1962b first commit 10 kuukautta sitten
test-workflow.sh 108b8cf2b4 fix app release workflow 9 kuukautta sitten

README.md

kNotes

A modern, efficient note-taking application with automatic compression, dark mode theming, and mobile-responsive design.

Quick Start

Prerequisites

  • Java 25 or higher
  • MongoDB

Running the Application

  1. Build the application

    ./gradlew build
    
  2. Run the application

    ./gradlew bootRun
    
  3. Access the application

    • Open your browser to http://localhost:8080
    • Start typing to create your first note!

API

Note Endpoints

Method Endpoint Description
GET /api/notes/{id} Retrieve a note by ID
POST /api/notes Create a new note
PUT /api/notes Update an existing note

Request/Response Examples

Create Note:

POST /api/notes
Content-Type: application/json

{
  "note": "Your note content here"
}

Response:

{
  "id": "01KDECFWYDMS857DZMCR680MCY",
  "content": "Your note content here",
  "createdAt": "2024-12-27T10:30:00Z",
  "modifiedAt": "2024-12-27T10:30:00Z"
}

Testing

Run the test suite:

./gradlew test

Test categories:

  • Unit tests for compression utilities
  • Integration tests for Note entity
  • Service layer tests for business logic

Configuration

MongoDB Configuration

The application uses MongoDB for storage. Configure connection in application.properties:

spring.data.mongodb.uri=mongodb://localhost:27017/knotes

Live

https://notes.lhamacorp.com/01KDFNNWYG2MJR2TD9F0384T3N