Second Home for Students for boosting Productivity
Notespace is a comprehensive productivity platform designed specifically for students to organize, manage, and enhance their learning experience. Built with modern web technologies, it provides a unified workspace where students can create, collaborate, and stay productive.
๐ Try Notespace Live
Experience Notespace in action with our live development deployment. Create an account and explore the current features!
โ ๏ธ Note: Notespace is currently in active development. Some features are complete, while others are planned or in development. See the feature status below for details.
- โ Multi-Workspace Support: Create and manage multiple workspaces for different subjects or projects
- โ Customizable Organization: Organize content with tags, colors, and custom icons
- โ Module-Based Structure: Group related files and content within modules
- โ Trash Management: Safely delete and restore content with built-in trash functionality
- โ Advanced Note Editor: Powered by BlockNote with rich text editing capabilities
- โ Pages: Rich text documents with formatting and advanced editing features
- โ Multi-Column Layouts: Organize content in multiple columns
- โ Code Blocks: Syntax highlighting for various programming languages
- โ Alerts and Callouts: Highlight important information
- โ Custom Fonts: Typography options for better readability
- โ Real-time Auto-save: Never lose your work with automatic saving
- โ Secure Authentication: Complete sign-up, sign-in, and password recovery system
- โ User Profiles: Personalized accounts with avatar support
- โ Account Settings: Comprehensive user preferences and settings
- โ Email Integration: Newsletter subscription and email notifications
- โ Dark/Light Theme: Seamless theme switching with system preference detection
- โ Responsive Design: Optimized for desktop, tablet, and mobile devices
- โ Intuitive Navigation: Smart breadcrumbs and sidebar navigation
- โ Space Switching: Quick workspace switching with elegant UI
- โ Loading States: Smooth loading animations and skeleton screens
- โ Real-time API: Built with tRPC for type-safe API calls
- โ Data Persistence: PostgreSQL database with Drizzle ORM
- โ File Upload: Image and file upload with Cloudinary integration
- ๐ง Task Boards: Kanban-style project management system (in active development)
- ๐ง Task Organization: Create, assign, and track tasks across boards
- ๐ง Progress Tracking: Visual progress indicators and completion status
- ๐ง Daily Routines: Schedule and track daily habits and routines (in development)
- ๐ง Habit Tracking: Monitor consistency and build productive habits
- ๐ง Routine Analytics: Insights into routine completion and patterns
- ๐ Whiteboards: Digital canvas for creative work and brainstorming
- ๐ Drawing Tools: Pen, shapes, sticky notes, and collaborative drawing
- ๐ Templates: Pre-built whiteboard templates for different use cases
- ๐ Mind Maps: Visual thinking and brainstorming tools
- ๐ Node Connections: Create complex idea relationships
- ๐ Export Options: Save mind maps in various formats
- ๐ PDF Support: Import, annotate, and work with PDF documents
- ๐ PDF Annotations: Highlight, comment, and mark up PDFs
- ๐ Document Viewer: Built-in PDF viewer with note-taking capabilities
- ๐ Real-time Collaboration: Live editing and collaboration features
- ๐ Advanced Search: Full-text search across all content types
- ๐ Export System: Export workspaces and content in multiple formats
- ๐ Offline Support: Progressive Web App (PWA) capabilities
- ๐ Mobile App: Native mobile applications for iOS and Android
- โ Completed: Feature is fully implemented and available
- ๐ง In Development: Feature is currently being built
- ๐ Planned: Feature is planned for future development
โ ๏ธ Development Status: Notespace is currently in active development. The core functionality (workspaces, notes, authentication) is stable and ready for use. Features like whiteboards, mind maps, PDF support, and kanban boards are planned or in development.
- Node.js 18+ or Bun
- PostgreSQL database
- Cloudinary account (for file uploads)
-
Clone the repository
git clone https://github.com/rohittiwari-dev/notespace.git cd notespace -
Install dependencies
bun install # or npm install -
Set up environment variables
cp .env.example .env.local
Fill in your database credentials, Cloudinary keys, and other required environment variables.
-
Set up the database
bun run db:generate bun run db:migrate
-
Start the development server
bun dev # or npm run dev -
Open your browser Navigate to http://localhost:3000
The application uses a PostgreSQL database with the following main entities:
- Users: Authentication and profile management
- Workspaces: Top-level organizational units
- Modules: Subject or project-specific containers
- Files: Individual content pieces (pages, mind maps, etc.)
- Authentication: Secure session management
bun dev- Start development server with Turbopackbun build- Build for productionbun start- Start production serverbun lint- Run ESLint, Markdown, and spell checkingbun format- Format code with Prettierbun typecheck- Type checking with TypeScriptbun db:studio- Open Drizzle Studio for database management
bun run db:generate- Generate database migrationsbun run db:migrate- Apply database migrationsbun run db:push- Push schema changes to databasebun run db:studio- Open database studio
- ๐ง Kanban Task Boards: Complete implementation of drag-and-drop task management
- ๐ง Routine Tracking: Finish daily routine and habit tracking system
- ๐ง Performance Optimization: Improve loading times and user experience
- ๐ Whiteboard Implementation: Start development of digital canvas features
- ๐ Mind Map Editor: Begin mind mapping tool development
- ๐ PDF Integration: Research and plan PDF support architecture
- ๐ Mobile Applications: Native iOS and Android apps
- ๐ Real-time Collaboration: Live editing and multi-user features
- ๐ Advanced Analytics: Usage insights and productivity metrics
- ๐ API Ecosystem: Public API for third-party integrations
๐ก Want to contribute? Check our issues for current development tasks or suggest new features!
We welcome contributions from the community! Please read our Code of Conduct and Contributing Guidelines before getting started.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Security is a top priority for Notespace. If you discover any security vulnerabilities, please review our Security Policy for responsible disclosure guidelines.
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See the LICENSE file for details.
Rohit Tiwari - @rohittiwari-dev
- Next.js - The React framework for production
- BlockNote - Rich text editor
- Drizzle ORM - TypeScript ORM
- tRPC - End-to-end typesafe APIs
- Tailwind CSS - Utility-first CSS framework
- ๐ Report Issues
- ๐ก Feature Requests
- ๐ง Contact
Boost your productivity with Notespace