Clone the repository and install the dependencies:
npm install
npm run dev
A simpleweb application for tracking and learning new technical terms, jargon, and concepts. Built with React, TypeScript, and Express, it helps you manage your learning journey by capturing initial thoughts, detailed notes, and simplified explanations.
- Add new terms with initial thoughts
- Track understanding status (understood/not understood)
- Edit terms with additional context:
- Definition
- Notes
- "Explain Like I'm Five" (ELI5) explanations
- Delete terms when no longer needed
- Real-time search filtering
- Direct links to search terms on Google
- Quick access to Wikipedia articles
- Track when terms were added and understood
- Clean, modern interface with Tailwind CSS
- Responsive design for all devices
- Intuitive status indicators
- Progress tracking dashboard
- SQLite database for reliable storage
- Automatic data synchronization
- Timestamp tracking for term management
- React 18
- TypeScript
- Tailwind CSS
- Lucide React (icons)
- Vite (build tool)
- Express.js
- SQLite3
- Node.js
├── src/ # Frontend source code
│ ├── components/ # React components
│ │ ├── AddTermForm.tsx # New term entry
│ │ ├── SearchTerms.tsx # Search interface
│ │ ├── Stats.tsx # Progress dashboard
│ │ └── TermList.tsx # Terms display
│ ├── context/ # React context
│ │ └── TermContext.tsx # Term state management
│ └── types/ # TypeScript definitions
├── server/ # Backend code
│ ├── index.js # Express server
│ └── terms.db # SQLite database
└── public/ # Static assets
CREATE TABLE terms (
id TEXT PRIMARY KEY,
term TEXT NOT NULL,
definition TEXT,
understood BOOLEAN DEFAULT 0,
dateAdded TEXT NOT NULL,
dateUnderstood TEXT,
initialThoughts TEXT,
notes TEXT,
eli5 TEXT
);
- Retrieves all terms
- Response: Array of term objects
- Creates a new term
- Body:
{ id, term, definition, dateAdded, initialThoughts }
- Updates an existing term
- Body:
{ term, definition, notes, eli5 }
- Toggles term understanding status
- Body:
{ understood, dateUnderstood }
- Deletes a term
-
Prerequisites:
- Node.js (v18 or higher)
- npm (included with Node.js)
-
Installation:
git clone <repository-url> cd jargon-buster npm install
-
Start Development Servers:
npm run dev
This starts:
- Frontend:
http://localhost:5173
- Backend:
http://localhost:3000
- Frontend:
-
Build the application:
npm run build
-
Start production server:
npm start
The application uses default ports:
- Frontend Dev Server: 5173
- Backend Server: 3000
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
MIT License - feel free to use this project for personal or commercial purposes.
- Icons provided by Lucide
- UI styled with Tailwind CSS