A full-stack URL shortener built with Node.js, Express, MongoDB, TypeScript, and React.
TrimLink is a scalable full-stack URL shortening application that allows users to:
- Create short URLs from long links
- Redirect using short codes
- View generated short links instantly on the frontend
- Handle errors via centralized middleware
- Maintain clean architecture across backend and frontend
The system is divided into:
- Backend (REST API) β handles persistence, short code generation, and redirection
- Frontend (React App) β handles user interaction and API communication
- Node.js
- Express
- MongoDB + Mongoose
- TypeScript
- ESLint + Prettier
- React
- TypeScript
- Fetch / Axios (for API calls)
- Functional components + hooks
- Short code generation
- Persistent storage
- Automatic timestamps
- Centralized error handling
- RESTful API design
- Input field for long URL
- Loading state handling
- Error display
- Display generated short URL
- Clean state management using hooks