Skip to content

kalviumcommunity/LinkNest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”— LinkNest – Smart Resource & Link Organizer

MERN License Status

LinkNest is a MERN Stack web application that helps users organize, manage, and share useful resources such as tutorials, articles, GitHub repositories, and videos.

Instead of cluttered browser bookmarks, LinkNest allows users to structure their resources using collections, tags, and notes, making it easy to search, filter, and retrieve knowledge anytime.


✨ Key Features

πŸ” User Authentication

Secure authentication ensures every user’s resources remain private.

  • User Signup & Login
  • Password hashing with bcrypt
  • JWT based authentication
  • Protected routes for user-specific data
  • Session validation middleware

πŸ“š Resource Management

Users can store and manage all their important links in one place.

Capabilities include:

  • βž• Add new resources
  • ✏️ Edit saved links
  • ❌ Delete resources
  • πŸ“ Attach personal notes to links
  • πŸ”— Store GitHub repos, articles, videos, docs etc.

πŸ—‚ Collections / Folders

Resources can be grouped into meaningful collections.

Examples:

  • Frontend Resources
  • Backend Tutorials
  • System Design
  • DSA Practice
  • UI/UX Inspiration

This structure makes navigation clean and efficient.


🏷 Tag System

Each resource can include multiple tags for advanced organization.

Example Tags:

React
Node.js
MongoDB
Interview
System Design
UI/UX

Users can easily filter resources by tags.


πŸ”Ž Smart Search & Filtering

Quickly locate resources using:

  • Title search
  • Tag filtering
  • Collection filtering
  • Instant UI filtering

This ensures fast access to saved knowledge.


🌐 Resource Preview

When a link is added, the application automatically fetches metadata:

  • Title
  • Description
  • Preview image
  • Website name

This provides clean preview cards for every resource.


πŸ”— Public Sharing

Users can make collections publicly accessible.

Example public link:

linknest.com/collection/react-resources

This allows users to:

  • Share curated learning paths
  • Share interview preparation resources
  • Share developer knowledge bases

πŸ›  Tech Stack

Frontend

  • React.js
  • Axios
  • Tailwind CSS / Material UI
  • React Router

Backend

  • Node.js
  • Express.js
  • REST API architecture

Database

  • MongoDB
  • Mongoose ODM

Authentication

  • JSON Web Token (JWT)
  • bcrypt password hashing

🧠 System Architecture

Client (React)
       β”‚
       β”‚ HTTP Requests (Axios)
       β–Ό
Express API (Node.js)
       β”‚
       β”‚ Authentication Middleware (JWT)
       β–Ό
Controllers
       β”‚
       β–Ό
MongoDB Database

πŸ“ Project Structure

linknest
β”‚
β”œβ”€β”€ client
β”‚   β”œβ”€β”€ components
β”‚   β”œβ”€β”€ pages
β”‚   β”œβ”€β”€ services
β”‚   β”œβ”€β”€ context
β”‚   └── App.js
β”‚
β”œβ”€β”€ server
β”‚   β”œβ”€β”€ controllers
β”‚   β”œβ”€β”€ routes
β”‚   β”œβ”€β”€ models
β”‚   β”œβ”€β”€ middleware
β”‚   β”œβ”€β”€ utils
β”‚   └── server.js
β”‚
└── README.md

βš™οΈ Installation & Setup

1️⃣ Clone Repository

git clone https://github.com/yourusername/linknest.git

2️⃣ Install Dependencies

Backend

cd server
npm install

Frontend

cd client
npm install

3️⃣ Environment Variables

Create a .env file inside the server folder.

PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_secret_key

4️⃣ Run Application

Start Backend

npm run server

Start Frontend

npm start

Application will run on:

http://localhost:3000

πŸ“‘ API Endpoints

Authentication

Method Endpoint Description
POST /api/auth/register Register new user
POST /api/auth/login Login user

Resources

Method Endpoint Description
GET /api/resources Get all resources
POST /api/resources Create new resource
PUT /api/resources/:id Update resource
DELETE /api/resources/:id Delete resource

Collections

Method Endpoint Description
GET /api/collections Get user collections
POST /api/collections Create collection
PUT /api/collections/:id Update collection
DELETE /api/collections/:id Delete collection

πŸš€ Future Improvements

  • πŸ“Œ Drag & Drop resource organization
  • πŸ€– AI-based link summarization
  • 🌍 Browser extension for quick saving
  • πŸ‘₯ Collaborative collections
  • πŸŒ™ Dark mode support
  • πŸ“Š Analytics for learning resources

πŸ“· Screenshots (Optional)

You can add UI screenshots here later.

/screenshots
    dashboard.png
    resource-card.png
    collections.png

πŸ‘©β€πŸ’» Author

Janhavi Chauhan

GitHub https://github.com/janhavichauhan


πŸ“„ License

This project is licensed under the MIT License.

About

This is your first repository

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors