Note system using Golang, Python and microservices architecture. The goal of the project is to develop a system for creating, storing notes and searching for notes.
- π Authentication system: The user must sign in and sign up for using this app.
- π Notes creation with Markdown: User can create notes through the homepage. Viewing a note: User can view a note by clicking the note summary.
- π File Upload and Download you can upload files to the note and download files from the note.
- π Tags they are needed to clearly describe your note
- ποΈ Categories (User can create categories and add notes to categories)
- π Full-text Search: User can search for notes by title, content, tags and categories.
This is a service diagram. These are services planned to be implemented
-
A note is a summary of some material, such as a book, video, course, article, etc. A user can log in and create public notes and drafts.
-
The advantage of this project is that a person studying some material reduces the time to create notes.
Note Service | Category Service | API Service | Search Service | File Service | User Service | Web Service |
---|---|---|---|---|---|---|
- Note Service
- Category Service
- API Service
- Search Service
- File Service
- User Service
- Tag Service
- Web Service
- Notification Service
- User Profile Service
- User Activity Service
- User Activity Service
- Docker - Docker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers.
- Docker Compose - Docker Compose is a tool for defining and running multi-container Docker applications.
- Python - Python is an interpreted, high-level and general-purpose programming language.
- Golang - Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
- NodeJS - Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser.
- Yarn - Yarn is a package manager that doubles down as project manager. Whether you work on one-shot projects or large monorepos, as a hobbyist or an enterprise user, we've got you covered.