{"id":23551666,"url":"https://github.com/utkarsh1504/notely","last_synced_at":"2025-05-15T15:32:05.707Z","repository":{"id":233472544,"uuid":"739423315","full_name":"Utkarsh1504/notely","owner":"Utkarsh1504","description":null,"archived":false,"fork":false,"pushed_at":"2024-01-05T15:02:12.000Z","size":267,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-17T12:18:04.766Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Utkarsh1504.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-01-05T14:30:56.000Z","updated_at":"2024-01-05T15:02:16.000Z","dependencies_parsed_at":"2024-04-16T09:28:03.345Z","dependency_job_id":"1fe6f89b-b38b-48e4-b41b-820c45bb1c41","html_url":"https://github.com/Utkarsh1504/notely","commit_stats":null,"previous_names":["utkarsh1504/notely"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Utkarsh1504%2Fnotely","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Utkarsh1504%2Fnotely/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Utkarsh1504%2Fnotely/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Utkarsh1504%2Fnotely/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Utkarsh1504","download_url":"https://codeload.github.com/Utkarsh1504/notely/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254367595,"owners_count":22059537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-26T10:27:28.116Z","updated_at":"2025-05-15T15:32:05.684Z","avatar_url":"https://github.com/Utkarsh1504.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Notely - Your Note Management App\n\n## Introduction\n\nNotely is a web application designed to help users manage and organize their notes efficiently. It provides user authentication, note creation, updating, deleting, sharing and searching functionalities. Users can also share notes with others and search for notes based on keywords.\n\n## Tech Stack\n\n- **Frontend:**\n\n  - React.js\n  - Tailwind CSS\n  - Axios\n\n- **Backend:**\n  - Node.js (Express.js)\n  - MongoDB (Mongoose for ODM)\n  - JWT for authentication\n\n## Getting Started\n\n### Prerequisites\n\n- Node.js and npm installed\n- MongoDB server running locally or accessible remotely\n\n### Installation\n\n1. Fork the repository:\n2. Clone the repository:\n\n```bash\ngit clone https://github.com/your-username/notely.git\ncd notely\n\n# Install backend dependencies\ncd backend\nnpm install\n\ncd ..\n# Install frontend dependencies\ncd client\nnpm install\n```\n\n3. Configure environment variables:\n\n- Create a .env file in the backend directory and set the following variables:\n\n```env\nMONGO_URL=your_mongodb_connection_string\nJWT_SECRET=your_jwt_secret\nPORT=port\n```\n\n4. Run the application:\n\n```bash\ncd backend\nnpm run dev\n\n\ncd client\nnpm run dev\n```\n\n### API Endpoints:\n\n1. Authentication\n\n- Sign Up: POST /api/auth/signup\n- Login: POST /api/auth/login\n\n2. Notes\n\n- Get All Notes: GET /api/notes\n- Get a Note by ID: GET /api/notes/:id\n- Create a New Note: POST /api/notes\n- Update a Note by ID: PUT /api/notes/:id\n- Delete a Note by ID: DELETE /api/notes/:id\n- Share a Note with Another User: POST /api/notes/:id/share\n- Search for Notes Based on Keywords: GET /api/search?q=:query\n\n### Testing:\n\nto test all api by running frontend or simply use Postman\n\n### Backend folder structure\n\n```\nbackend/\n|-- controller/\n|   |-- authController(auth.js)\n|   |-- noteController(note.js)\n|\n|-- middleware/\n|   |-- authMiddleware(auth.js)\n|\n|-- model/\n|   |-- userModel(user.js)\n|   |-- noteModel(note.js)\n|\n|-- routes/\n|   |-- authRoutes(auth.js)\n|   |-- noteRoutes(note.js)\n|\n|-- .env\n|-- .gitignore\n|-- dbConnect.js\n|-- index.js\n|-- package.json\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futkarsh1504%2Fnotely","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Futkarsh1504%2Fnotely","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futkarsh1504%2Fnotely/lists"}