This project is a Notion clone, aimed at replicating some of the core features of Notion, a popular productivity tool. The application provides users with the ability to create, edit, and organize documents, databases, and more, all within a single interface.
- Rich Text Editing: Users can create and edit documents with rich text formatting capabilities, including text styles, lists, and more.
- Database Functionality: Create databases to organize and manage data, with support for various data types and properties.
- Drag-and-Drop Interface: Intuitive drag-and-drop functionality for rearranging and organizing content within pages.
- Collaboration: Multiple users can collaborate on documents and databases in real-time.
- Customization: Users can customize the look and feel of their workspace, including themes and layouts.
- Responsive Design: The application is designed to work seamlessly across different devices and screen sizes.
- Frontend:
- React.js
- Redux for state management
- Styled Components for styling
- React DnD for drag-and-drop functionality
- Backend:
- Node.js
- Express.js
- MongoDB for database management
- Socket.IO for real-time collaboration
To get started with the project, follow these steps:
-
Clone the repository:
git clone https://github.com/your-username/notion-clone.git
-
Install dependencies:
cd notion-clone npm install
-
Set up environment variables: Create a .env file in the root directory. Define the following variables:
- REACT_APP_API_BASE_URL - Base URL of the backend API.
- Other necessary variables for database configuration, etc.
-
Run the application:
npm start
-
Access the application: -> Open your web browser and navigate to http://localhost:3000 to access the application.
-
Contributing: -> Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
-
Fork the repository.
-
Create your feature branch (git checkout -b feature/YourFeature).
-
Commit your changes (git commit -am 'Add some feature').
-
Push to the branch (git push origin feature/YourFeature).
-
Create a new Pull Request.
License This project is licensed under the MIT License.