NoterAI helps students learn better by enabling them to take notes using a Notion-like UI or their voice. The platform leverages AI to summarize notes, generate quizzes, answer questions based on the notes, and keep students motivated with interesting facts related to their study topics.
- Note-Taking: Create and organize notes using a Notion-like interface or via voice input.
- Summarization: Use AI to summarize your notes automatically.
- Quizzes: Generate quizzes from your notes to help with revision.
- Q&A: Ask questions and get answers based on your saved notes.
- Strange Facts: Stay motivated with interesting facts relevant to your study topics.
- Backend: NestJS, Prisma, Redis
- Mobile (Android, Windows, Linux): Flutter
- iOS/macOS: Swift
- Web: Next.js
- AI: NestJS (TypeScript) for main logic, Python for AI functionalities
To get NoterAI running locally, follow these steps:
Ensure you have the following installed:
- Node.js (>= X.X.X)
- npm (>= X.X.X)
- pnpm (>= X.X.X)
- Flutter (>= X.X.X)
- Docker (for Redis and database setup)
git clone https://github.com/himasnhu-at/noterai.git
cd noterai
Use pnpm
to install all required dependencies:
pnpm install
Create .env
files for both the backend and web apps:
cp apps/backend/.env.example apps/backend/.env
cp apps/web/.env.example apps/web/.env
Fill out the environment variables such as database URLs, Redis configurations, etc.
To start the backend and frontend:
pnpm dev
You can also use Turbo for specific services:
# Backend
turbo run dev --filter=@noterai/backend
# Web
turbo run dev --filter=@noterai/web
For mobile or desktop development:
cd apps/flutter
flutter run
Ensure that you have a device or emulator running for Flutter.
Start the required services with Docker and set up the database:
docker-compose up
pnpm prisma migrate dev
For a more detailed setup guide, refer to our Installation Guide.
Once the project is set up, you can access different features through the frontend or mobile app. Follow the Usage Guide to learn how to utilize NoterAI's full range of functionalities, including note-taking, quiz generation, and AI-powered summaries.
We welcome contributions! Please review our Contributing Guidelines before making any contributions. Make sure to also check out the Code of Conduct.
Here are some common commands to help you contribute:
- Start the development environment:
pnpm dev
- Run tests:
pnpm test
- Format and lint code:
pnpm format && pnpm lint
This project is licensed under a Custom License that restricts commercial use. For more information, see the LICENSE file.
If you have any questions or need support, feel free to reach out at hyattherate2005 [at] gmail.com.
We would like to thank all the contributors who helped in developing NoterAI. Special thanks to the AI community for their resources and support.
Enjoy using NoterAI and enhance your learning experience!