Skip to content

Krishna-Mehta-135/Second-Brain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

60 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Second Brain

Second Brain is a personal knowledge management app that allows you to collect, organize, and store content from various sources like Twitter, YouTube, Google Docs, and more. It serves as a centralized hub for all your ideas, notes, and resources, helping you stay productive and organized.


✨ Features

  1. πŸ“¦ Centralized Content Storage:

    • Collect and store content from multiple sources in one place.
    • Supported sources include:
      • 🐦 Tweets
      • πŸ“Ή YouTube videos
      • πŸ“„ Google Docs
      • πŸ”— Links and more.
  2. πŸ—‚οΈ Categorization and Organization:

    • Organize content into categories like Notes, Videos, Documents, and Links.
    • Use tags to group related content for easy filtering and searching.
  3. 🏷️ Dynamic Tagging:

    • Add tags dynamically. If a tag doesn’t exist, it will be created automatically.
    • Tags help you categorize and filter content efficiently.
  4. πŸ”— Content Sharing:

    • Share your entire collection of notes, documents, tweets, and videos with others.
    • Generate a shareable link to allow others to import your content into their own Second Brain.
  5. πŸ–₯️ User-Friendly Interface:

    • Intuitive and clean UI for easy navigation and content management.
    • Quickly add, edit, or delete content.
  6. πŸ”’ Secure User Accounts:

    • Each user has their own account to manage their personal content.
    • Links and content are associated with specific users for privacy and security.

πŸ› οΈ How It Works

  1. βž• Add Content:

    • Use the "Add Content" button to add new items from supported sources.
    • Provide the link or details, and the app will automatically categorize and store it.
  2. 🏷️ Organize with Tags:

    • Add tags to your content to group related items.
    • Tags are dynamically created if they don’t already exist.
  3. πŸ“‚ View and Manage Content:

    • Navigate through categories like Notes, Videos, Documents, and Links.
    • Use tags to filter and find specific content quickly.
  4. 🌐 Share Your Brain:

    • Use the "Share Brain" feature to generate a shareable link for your collection.
    • Others can import your shared content into their own Second Brain.

πŸš€ How to Use

  1. πŸ”‘ Sign Up or Log In:

    • Create a new account or log in with your existing credentials.
  2. βž• Add Content:

    • Click the "Add Content" button.
    • Paste the link or upload content from supported sources like Twitter, YouTube, or Google Docs.
    • Assign tags to categorize the content.
  3. πŸ—‚οΈ Organize Content:

    • Use the sidebar to navigate through categories like Notes, Videos, Documents, and Links.
    • Filter content by tags for quick access.
  4. ✏️ Edit or Delete Content:

    • Select any item to edit its details or delete it from your collection.
  5. πŸ”— Share Your Collection:

    • Use the "Share Brain" feature to generate a shareable link.
    • Share the link with others to allow them to import your content into their own Second Brain.
  6. πŸ” Search for Content:

    • Use the search bar to find specific items by title, tags, or content type.

πŸ› οΈ Tech Stack

  • Frontend:

    • βš›οΈ React.js (for building the user interface)
    • 🎨 Tailwind CSS (for styling)
  • Backend:

    • 🟒 Node.js with Express.js (for API and server-side logic)
    • πŸƒ MongoDB with Mongoose (for database and data modeling)
  • Authentication:

    • πŸ” JSON Web Tokens (JWT) for secure user authentication.
  • Other Tools:

    • πŸ”‘ bcryptjs for password hashing.
    • πŸ”’ crypto for generating unique identifiers.

βš™οΈ Installation

  1. Clone the repository:

    git clone https://github.com/your-username/second-brain.git
    cd second-brain
  2. Install server dependencies:

    cd Server
    npm install
  3. Set up server environment variables:

    • Create a .env file in the Server directory.
    • Add the following variables:
      MONGO_URL=your-mongodb-connection-string
      JWT_SECRET=your-jwt-secret
      PORT=8000
      FRONTEND_URL=http://localhost:5173
      
  4. Start the server:

    npm run dev
  5. Install client dependencies:

    cd ../Client
    npm install
  6. Start the client:

    npm run dev
  7. Open the app:

    • Navigate to http://localhost:5173 in your browser.

πŸ’‘ Contributing

We welcome contributions to Second Brain! To contribute:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix:
    git checkout -b feature-name
  3. Commit your changes:
    git commit -m "Add your message here"
  4. Push to your branch:
    git push origin feature-name
  5. Open a pull request on GitHub.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages