A journaling web application built with React, TypeScript, and Tailwind CSS.
- Editor on the left for inputting journal log entries
- Grid on the right side displaying all saved log entries
- Each entry displays content, type, labels, and people as badges
- API integration with http://localhost:8080/journal
- React 19.2.0 with TypeScript 5.9.3
- Vite 7.3.1
- Tailwind CSS for styling
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Build for production:
npm run build
-
Run ESLint for code linting:
npm run lint
The application communicates with a backend service at http://localhost:8080/journal:
- POST request to create a new journal entry with payload:
{ "content" : "" } - GET request to fetch all journal entries
JournalEntryForm- Form for creating new entriesJournalEntryCard- Component for displaying individual entriesApp- Main application component with layout and state management
src/
├── App.tsx # Main application component
├── main.tsx # Entry point
├── api.ts # API service for journal entries
├── types.ts # TypeScript interfaces
├── components/
│ ├── JournalEntryCard.tsx # Individual entry card component
│ └── JournalEntryForm.tsx # Entry form component
└── index.css # Styles with Tailwind directives