https://github.com/amliyanage/note-creaft-server
Note Craft Server is the backend API for a note-taking app, handling user notes, authentication, and syncing. It's designed for scalability, security, and seamless integration with the frontend.
https://github.com/amliyanage/note-creaft-server
express node prisma prisma-orm server typescript
Last synced: about 2 months ago
JSON representation
Note Craft Server is the backend API for a note-taking app, handling user notes, authentication, and syncing. It's designed for scalability, security, and seamless integration with the frontend.
- Host: GitHub
- URL: https://github.com/amliyanage/note-creaft-server
- Owner: amliyanage
- Created: 2025-02-11T12:08:16.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-23T21:29:03.000Z (over 1 year ago)
- Last Synced: 2025-09-12T22:18:17.070Z (10 months ago)
- Topics: express, node, prisma, prisma-orm, server, typescript
- Language: TypeScript
- Homepage:
- Size: 17.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Note Craft Server 🚀
**Note Craft Server** is the backend API for the **Note Craft** note-taking application. It provides endpoints for managing user notes, authentication, and syncing across devices. This server is built with a focus on scalability, security, and ease of integration with the frontend application.
## Features 🔧
- **User Authentication**: Secure login and registration system using JWT.
- **CRUD Operations**: Create, Read, Update, and Delete notes.
- **Tagging**: Add and manage tags for organizing notes.
- **Note Sharing**: Share notes with other users (if applicable).
- **Search Notes**: Search through user notes by keywords or tags.
## Technologies Used ðŸ›
- **Node.js**: JavaScript runtime environment for building scalable server-side applications.
- **Express.js**: Web framework for Node.js to handle routing and middleware.
- **MongoDB**: NoSQL database for storing user data and notes.
- **Mongoose**: ODM (Object Data Modeling) library for MongoDB and Node.js.
- **JWT (JSON Web Tokens)**: Used for user authentication and authorization.
- **Bcrypt.js**: Used to hash and secure passwords.
- **Dotenv**: For managing environment variables.
## Getting Started âš¡
Follow these steps to set up the **Note Craft Server** locally:
### 1. Clone the repository:
```bash
git clone https://github.com/amliyanage/note-craft-server.git
```
### 2. Install dependencies:
Navigate into the project directory and install the required dependencies:
```bash
cd note-craft-server
npm install
```
### 3. Configure Environment Variables:
Create a `.env` file in the root directory of the project and set the following environment variables:
```bash
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key
PORT=3000
```
- **MONGO_URI**: Your MongoDB database connection string.
- **JWT_SECRET**: A secret key used to sign and verify JWT tokens.
- **PORT**: The port on which the server will run.
### 4. Start the server:
Run the following command to start the server:
```bash
npm start
```
The server will start and listen on the configured port (default: `3001`).
## License 📜
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.