Link Manager is a modern web application designed to help you manage your links effectively. With features like adding, updating, deleting, and differentiating links using colors, this app ensures an intuitive and personal link management experience. The app is account-based, keeping your links private and secure. It also supports offline functionality via PWA integration, making it accessible on both desktop and mobile devices.
- Link Management: Add, update, delete, and organize your links efficiently.
- Undo Functionality: Reverse accidental deletions or updates.
- Color Coding: Assign colors to links for better organization.
- Account-Based: Create an account to manage your personal links securely.
- Cross-Platform: Use the app on desktop and mobile with PWA integration.
- Animations: Smooth animations powered by GSAP for an enhanced user experience.
- Frontend: Next.js (React-based framework)
- Backend: MySQL (managed using Prisma ORM, hosted on Aiven)
- State Management: Redux
- UI Components: ShadCN
- Animations: GSAP
- PWA Integration: For offline usage and cross-platform compatibility
Ensure you have the following installed:
-
Clone the repository:
git clone https://github.com/yourusername/link-manager.git cd link-manager
-
Install dependencies:
npm install # or yarn install
-
Set up the environment variables: Create a
.env
file in the root directory and configure the following variables:DATABASE_URL="mysql://username:password@host:port/database" NEXT_PUBLIC_API_URL="http://localhost:3000"
- Replace
username
,password
,host
,port
, anddatabase
with your MySQL database details.
- Replace
-
Generate Prisma Client:
npx prisma generate
-
Run database migrations:
npx prisma migrate dev --name init
-
Start the development server:
npm run dev # or yarn dev
-
Access the app at http://localhost:3000.
-
Download and install XAMPP.
-
Start the MySQL service:
- Open the XAMPP control panel.
- Start the MySQL module.
-
Create a new database:
- Access phpMyAdmin at http://localhost/phpmyadmin.
- Click on "Databases."
- Enter a database name (e.g.,
link_manager
) and click "Create."
-
Update
.env
file:DATABASE_URL="mysql://root:@localhost:3306/link_manager"
- The default username is
root
, and the password is empty unless configured otherwise.
- The default username is
-
Apply Prisma migrations:
npx prisma migrate dev --name init
-
Start the app as described above.
The app is configured as a Progressive Web App (PWA), allowing you to:
- Install it on your desktop or mobile device.
- Use it offline with limited functionality.
To install the app:
- Open the app in a supported browser (e.g., Chrome).
- Click the "Install" button in the address bar or the browser menu.
Contributions are welcome! Follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add feature description"
- Push to the branch:
git push origin feature-name
- Create a pull request.
This project is licensed under the MIT License.
For inquiries, reach out to [rockingabhinav2000@gmail.com/+91 7017311270].