Click-url is a JavaScript-based web application that allows users to shorten long URLs into compact 5-character short links. Built using a modern tech stack, this project provides a responsive front-end and a secure, scalable back-end.
My project is Live Live Url=> (https://clickurl-r72u.onrender.com/)
- 🔗 Convert long URLs into short, shareable links (5-character shortId)
- 🔐 User authentication and authorization
- ☁️ Image upload integration with Cloudinary
- 📊 URL tracking and analytics (future scope)
- ⚡️ Real-time API responses with validation
- 🧠 Form handling and validation with Formik & Yup
- 📦 RESTful backend with MongoDB and Redis caching
Built using React and styled with Tailwind CSS.
@tailwindcss/vite: ^4.1.5axios: ^1.9.0formik: ^2.4.6react: ^19.1.0react-dom: ^19.0.0react-icons: ^5.5.0react-router: ^7.5.3react-router-dom: ^7.5.3tailwindcss: ^4.1.5yup: ^1.6.1
Powered by Express, MongoDB, and Redis.
axios: ^1.9.0bcrypt: ^5.1.1cloudinary: ^2.6.1cors: ^2.8.5dotenv: ^16.5.0express: ^5.1.0express-async-handler: ^1.2.0googleapi: ^1.0.2googleapis: ^148.0.0jsonwebtoken: ^9.0.2mongodb: ^6.16.0mongoose: ^8.14.1multer: ^1.4.5-lts.2nanoid: ^5.1.5nodemon: ^3.1.10prettier: ^3.5.3redis: ^5.0.1
click-url/
├── backend/
│ ├── config/
│ ├── controllers/
│ ├── middlewares/
│ ├── models/
│ ├── routes/
│ ├── utils/
│ └── server.js
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── routes/
│ │ ├── utils/
│ │ └── App.js
├── .env
├── README.md
└── package.json
- Node.js v18+
- Javascript
- MongoDB
- Redis
- Cloudinary account for image hosting
Create a .env file in the root of the backend and define:
MONGO_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secretcd frontend
npm install
npm run devcd backend
npm install
npm run startThis project is licensed under the MIT License
Follow for more on Linkedin
Follow on github for more Project Details Github