HooknHold is an open-source project built with Next.js that empowers users to efficiently bookmark, organize, and manage their favorite web content.
- Smart Bookmarking: Easily save and categorize web pages with automatic metadata extraction.
- Intuitive Organization: Create custom folders and tags for effortless content management.
- Drag-and-Drop Interface: Seamlessly reorganize bookmarks and folders with a user-friendly drag-and-drop system.
- Full Search: Quickly find your bookmarks.
- Node.js
- pnpm, npm, or yarn
- PostgreSQL database
- AWS S3 bucket (optional, for cloud storage)
- GitHub account (for OAuth)
-
Clone the repository:
git clone https://github.com/dendianugerah/hooknhold.git cd hooknhold
-
Install dependencies:
pnpm install # or npm install # or yarn install
-
Set up environment variables: Copy the
.env.example
file to.env
and fill in the required values. -
Run database migrations:
pnpm run migrate # or npm run migrate # or yarn migrate
-
Start the development server:
pnpm run dev # or npm run dev # or yarn dev
-
Open http://localhost:3002 with your browser to see the result.
- Sign in with your GitHub account.
- Add bookmarks by pasting URLs or using the "Add Bookmark" button.
- Organize your bookmarks into folders and add tags for easy categorization.
- Use the search function to quickly find specific bookmarks.
- Drag and drop bookmarks to rearrange or move them between folders.
- Next.js - React framework for server-side rendering and static site generation
- NextAuth.js - Authentication for Next.js applications
- Drizzle ORM - TypeScript ORM for SQL databases
- PostgreSQL - Open-source relational database
- AWS S3 - Cloud object storage (mandatory for now)
- TypeScript - Typed superset of JavaScript
- Tailwind CSS - Utility-first CSS framework
- [V] Hybrid storage system: Option to store bookmarks in local directory or AWS S3 (Still need to test)
- Code refactoring for improved performance and maintainability
- Browser extension for quick bookmarking
- Sharing bookmarks with other users
- AI-powered website recommendations based on bookmark history
- Comprehensive API documentation
- Integration tests for core functionalities