A full stack application that allows users to create and manage their own custom link pages. This project is built using Node.js, Express, Prisma, React, and PostgreSQL.
- User authentication and authorization
- Create, read, update, and delete links
- Responsive design for mobile and desktop
- Custom URL slugs for user profiles
This project is set up as a monorepo with the following structure:
.
├── client/ # React frontend
├── server/ # Node.js backend
├── ecosystem.config.js # PM2 configuration
└── README.mdBefore you begin, ensure you have met the following requirements:
- Node.js (v14 or later)
- npm or yarn
- PostgreSQL
- PM2 (for running the application locally)
-
Clone the repository:
git clone https://github.com/sarthakkimtani/linkit-app.git cd linkit-app -
Install dependencies for both client and server:
cd client && npm install cd ../server && npm install
-
Set up environment variables:
- In the
server/directory, create a.envfile based on.env.example - Configure your PostgreSQL connection string and other necessary variables
- In the
-
Set up the database:
cd server npx prisma migrate dev
To run the application locally using PM2:
- Ensure you're in the root directory of the project
- Run the following command:
This will start both the frontend and backend servers.
pm2 start
- The frontend will be available at:
http://localhost:5173 - The backend API will be available at:
http://localhost:3000
To stop the application:
pm2 stop allContributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
This project is licensed under the MIT License.
For any questions or inquiries, please contact repository owner.