This project is a Next.js implementation of a React Notes application. It adds multi-user and multilingual capabilities to the basic note-taking functionality.
- Multi-user support: Multiple users can create and manage their own notes.
- Multilingual support: Users can switch between different languages (e.g., English, Chinese, Japanese) for the UI.
- Note management: Create, edit, and delete notes with a user-friendly interface.
- Markdown support: Import note in Markdown format.
- Next.js 14 (App Router): Leveraging the latest features of Next.js, including the new App Router.
- Prisma: An ORM for Node.js and TypeScript.
- MySQL: A popular open-source relational database.
- Tailwind CSS: A utility-first CSS framework for rapid UI development.
- Lucia Auth: A lightweight authentication library for managing user sessions.
- Next.js 14 Server Actions: Utilizing the latest server actions feature in Next.js 14.
- Docker: Containerized deployment using Docker, with easy setup via
docker compose up.
- Node.js (v14 or above)
- npm or yarn
- Docker (for containerized deployment)
-
Clone the repository:
git clone https://github.com/guohanli/next-react-notes.git cd next-react-notes -
Install the dependencies:
npm install # or yarn install
-
Start the development server:
npm run dev # or yarn dev -
Open your browser and navigate to
http://localhost:3000to see the application in action.
To create an optimized production build:
npm run build
npm run start
# or
yarn build
yarn start- Click the "NEW" button to create a new note.
- Select a note from the sidebar to view or edit it.
- Use the "EDIT" button to modify an existing note.
- Delete a note by selecting it and using the appropriate option.
- Users can log in and manage their notes individually.
- Switch between languages using the language selector at the bottom left corner of the sidebar.
We welcome contributions! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Commit your changes.
- Push to your branch.
- Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
