{"id":21985424,"url":"https://github.com/rooneyrulz/qnotes","last_synced_at":"2026-04-02T01:02:42.542Z","repository":{"id":216623715,"uuid":"741817619","full_name":"rooneyrulz/qnotes","owner":"rooneyrulz","description":"Simple notes application using mern-stack.","archived":false,"fork":false,"pushed_at":"2024-03-28T14:22:19.000Z","size":4611,"stargazers_count":1,"open_issues_count":11,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-03T14:24:12.831Z","etag":null,"topics":["authentication","authorization","caching","cookies","expressjs","fullstack-development","hooks","https","jwt","middleware","mongodb","mongoose","nodejs","passportjs","react-router-v6","reactjs","redux-toolkit","rtk-query","security","sso-authentication"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rooneyrulz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-01-11T07:08:44.000Z","updated_at":"2025-08-20T07:48:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"bfe079aa-c62a-44e9-b5a1-0b9c2b23dd50","html_url":"https://github.com/rooneyrulz/qnotes","commit_stats":null,"previous_names":["rooneyrulz/qnotes"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rooneyrulz/qnotes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rooneyrulz%2Fqnotes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rooneyrulz%2Fqnotes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rooneyrulz%2Fqnotes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rooneyrulz%2Fqnotes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rooneyrulz","download_url":"https://codeload.github.com/rooneyrulz/qnotes/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rooneyrulz%2Fqnotes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31293631,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["authentication","authorization","caching","cookies","expressjs","fullstack-development","hooks","https","jwt","middleware","mongodb","mongoose","nodejs","passportjs","react-router-v6","reactjs","redux-toolkit","rtk-query","security","sso-authentication"],"created_at":"2024-11-29T18:13:43.032Z","updated_at":"2026-04-02T01:02:42.494Z","avatar_url":"https://github.com/rooneyrulz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Qnotes - Full Stack Project 📝\n\nQnotes is a full-stack project developed using the MERN stack (MongoDB, Express.js, React, and Node.js), featuring a multiple-role-based login system with Google SSO login, GitHub SSO login, and traditional username and password login. This application allows users to create and manage notes, assign tasks to others, and includes administrative features for user management.\n\n## Technologies and Features 🚀\n\n### Backend Stack\n\n- [Node.js](https://nodejs.org/)\n- [Express.js](https://expressjs.com/)\n- [MongoDB](https://www.mongodb.com/) with [Mongoose](https://mongoosejs.com/)\n- [Passport.js](http://www.passportjs.org/) for authentication\n- [JWT](https://jwt.io/) for token-based authentication\n- Cookies and local storage for user sessions\n- Middleware for request handling and security\n- HTTPS for secure communication\n\n### Frontend Stack\n\n- [React](https://reactjs.org/)\n- [Redux Toolkit](https://redux-toolkit.js.org/) for state management\n- [RTK Query](https://redux-toolkit.js.org/rtk-query/overview) for efficient API data fetching\n- [React Hooks](https://reactjs.org/docs/hooks-intro.html)\n- [React Router DOM](https://reactrouter.com/web/guides/quick-start) version 6\n\n## To Run Instructions 🛠️\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/rooneyrulz/qnotes.git\n```\n\n## 2. Environment Configuration\n\n- Navigate to the `frontend` and `backend` folders.\n- Rename the `.env.example` files to `.env` in both folders.\n- Update the `.env` files with your specific values.\n\n## 3. Install Dependencies\n\n- Open a terminal in the `frontend` and `backend` folders separately.\n- Run the following command in both folders to install dependencies:\n\n```bash\n npm install\n```\n\n## 4. Run MongoDB Container\n\nTo use MongoDB for your project, you can run it in a Docker container. If you don't have Docker installed, you can follow the installation instructions on the [official Docker website](https://docs.docker.com/get-docker/).\n\n1. Navigate to the `backend` folder:\n\n    ```bash\n    cd backend\n    ```\n\n2. Run the following command to start the MongoDB container:\n\n    ```bash\n    docker-compose up -d\n    ```\n\n    - If you encounter any issues, make sure Docker is properly installed and running.\n\n    - If you're using a cloud-based MongoDB or have MongoDB already installed on your system, you can skip this step.\n\n## 5. Start Servers\n\nNow that MongoDB is set up, you can start the servers for the backend and frontend.\n\n### Backend Server\n\n1. In the `backend` folder, run the following command to start the server:\n\n    ```bash\n    npm run start:server\n    ```\n\n### Frontend Server\n\n2. In the `frontend` folder, run the following command to start the React app:\n\n    ```bash\n    npm start\n    ```\n\n    - You can run both servers simultaneously by checking the `package.json` file inside the `backend` folder.\n\n## 6. Access the Application\n\nOpen your web browser and navigate to [http://localhost:3000](http://localhost:3000) to access the Qnotes application.\n\n### Default Admin Credentials\n\n- **Username:** admin\n- **Password:** 12345678\n\nWishing you happy coding! 🚀✨👩‍💻👨‍💻\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frooneyrulz%2Fqnotes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frooneyrulz%2Fqnotes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frooneyrulz%2Fqnotes/lists"}