Skip to content

Saunakghosh10/neura

Repository files navigation

Neura - Your Digital Mind 🧠

Screenshot 2024-11-01 014414

A Modern Note-Taking App with Bi-directional Linking and Graph Visualization

🌟 Overview

Neura is a powerful note-taking application that combines the simplicity of markdown with the power of networked thought. Built with Next.js 14 and TypeScript, it offers a seamless experience for creating, connecting, and visualizing your knowledge.

✨ Key Features

📝 Rich Markdown Editor

  • Full markdown support with live preview
  • Real-time syntax highlighting
  • Support for code blocks, tables, and task lists
  • Toolbar for common formatting options
  • Auto-save functionality
  • Keyboard shortcuts

🔗 Bi-directional Linking

  • Wiki-style [[links]] between notes
  • Smart auto-completion for note links
  • Real-time link suggestions
  • Automatic backlink tracking
  • Visual link previews

📊 Knowledge Graph

  • Interactive visualization of note connections
  • Real-time graph updates
  • Zoom and pan navigation
  • Click-to-navigate between notes
  • Visual relationship mapping

🎨 Modern User Experience

  • Clean, minimalist interface
  • Dark mode support
  • Responsive design
  • Smooth animations and transitions
  • Glass-morphism effects
  • Instant search functionality

🛡️ Security & Data

  • Secure authentication via Clerk
  • Real-time data synchronization
  • Automatic cloud backups
  • PostgreSQL data persistence

🛠️ Tech Stack

Frontend

  • Next.js 14
  • TypeScript
  • Tailwind CSS
  • Framer Motion
  • shadcn/ui components
  • React-Markdown
  • D3.js for graph visualization

Backend

  • Next.js API Routes
  • Prisma ORM
  • PostgreSQL
  • Clerk Authentication

Development

  • ESLint & Prettier
  • Git Hooks with Husky
  • TypeScript strict mode

🚀 Getting Started

Prerequisites

  • Node.js 18+ installed
  • PostgreSQL database
  • Clerk account for authentication
  • pnpm (recommended) or npm

Installation

  1. Clone the repository
git clone https://github.com/Saunakghosh10/neura
  1. Install dependencies
pnpm install
  1. Set up environment variables
cp .env.example .env.local
  1. Update .env.local with your credentials:
DATABASE_URL="postgresql://..."
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="pk_..."
CLERK_SECRET_KEY="sk_..."
  1. Run database migrations
pnpm prisma migrate dev
  1. Start the development server
pnpm dev

Visit http://localhost:3000 to see the app running!

📝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

📧 Contact

Project Link: https://github.com/Saunakghosh10/neura