{"id":15136112,"url":"https://github.com/rohit1901/admin-little-fern","last_synced_at":"2026-01-28T00:42:13.095Z","repository":{"id":224006770,"uuid":"762145544","full_name":"rohit1901/admin-little-fern","owner":"rohit1901","description":"Administration nextjs app for the little-fern website (CMS). #showcase","archived":false,"fork":false,"pushed_at":"2024-04-25T15:55:43.000Z","size":658,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-02T18:16:26.112Z","etag":null,"topics":["auth0","aws","cloudfront","cognito","flowbite","heroku","mongoclient","mongodb","next-auth","nextjs","nodejs","okta-oidc","s3","tailwindcss","typescript","zustand"],"latest_commit_sha":null,"homepage":"https://www.admin.littlefern.in","language":"TypeScript","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/rohit1901.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}},"created_at":"2024-02-23T07:11:28.000Z","updated_at":"2024-07-09T07:33:06.000Z","dependencies_parsed_at":"2024-02-23T08:28:56.468Z","dependency_job_id":"3c19127c-87f9-4f98-a1ff-9e9d3da7fcdf","html_url":"https://github.com/rohit1901/admin-little-fern","commit_stats":null,"previous_names":["rohit1901/admin-little-fern"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rohit1901/admin-little-fern","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohit1901%2Fadmin-little-fern","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohit1901%2Fadmin-little-fern/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohit1901%2Fadmin-little-fern/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohit1901%2Fadmin-little-fern/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rohit1901","download_url":"https://codeload.github.com/rohit1901/admin-little-fern/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohit1901%2Fadmin-little-fern/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28829519,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T23:29:49.665Z","status":"ssl_error","status_checked_at":"2026-01-27T23:25:58.379Z","response_time":168,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["auth0","aws","cloudfront","cognito","flowbite","heroku","mongoclient","mongodb","next-auth","nextjs","nodejs","okta-oidc","s3","tailwindcss","typescript","zustand"],"created_at":"2024-09-26T06:04:07.824Z","updated_at":"2026-01-28T00:42:13.074Z","avatar_url":"https://github.com/rohit1901.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Admin Application for [Little Fern](https://www.littlefern.in/)\n![Build Status](https://github.com/rohit1901/admin-little-fern/actions/workflows/next_lint.yml/badge.svg)\n\nThis is an admin application built with TypeScript, MongoDB, MongoClient, AWS, Heroku, React, Next.js, Flowbite, Flowbite React, and Tailwind CSS. The application is designed to handle various types of data and provide a user-friendly interface for uploading and managing images for the Little Fern website.\n\n## Architecture\n\nThe application is built as a full-stack web application with the following components:\n\n1. **Frontend**: The frontend of the application is built using React and Next.js. It includes components like `Dropzone` for uploading images and `ImageBlock` for displaying and managing images. The UI is designed using Flowbite, Flowbite React, and Tailwind CSS. State management is handled by Zustand 🐻.\n\n2. **Backend**: The backend is built with Node.js, using MongoClient to connect to the MongoDB database. User authentication and authorization are \n   handled by ~~AWS Cognito~~ Auth0 by Okta.\n\n3. **Database**: MongoDB is used as the database for this application.\n\n4. **Cloud Storage**: AWS S3 is used for storing images uploaded through the application.\n\n5. **Content Delivery Network (CDN)**: AWS CloudFront is used to serve static and dynamic web content.\n\n6. **Deployment**: The application is deployed on Heroku.\n\n## Getting Started\n\nThese instructions will get you a copy of the project up and running on your local machine for development and testing purposes.\n\n### Prerequisites\n\n- Node.js\n- npm\n\n### Installing\n\n1. Clone the repository\n```bash\ngit clone https://github.com/rohit1901/admin-little-fern.git\n```\n2. Install NPM packages\n```bash\nnpm install\n```\n3. Start the development server\n```bash\nnpm run dev\n```\n\n## Usage\n\nThe application includes several components for handling different types of data:\n\n### LoginButton\n\n`LoginButton` is a component that handles user authentication. It uses AWS Cognito for user authentication and authorization. If the user is already logged in, it renders the `LFNavbar` and `LFSidebar` components along with the children components. If the user is not logged in, it renders a sign-in form.\n\n### Logo\n\n`Logo` is a simple component that displays the logo of the application. It uses the `next/image` component for optimized image rendering.\n\n### Dropzone\n\n`Dropzone` is a component for uploading images. It provides a user-friendly interface for selecting and previewing images before upload. The component uses AWS S3 for storing the uploaded images.\n\n### Popover\n\n`Popover` is a component that displays a popover box. It can be triggered by either hover or click events. The popover box can contain any ReactNode content.\n\nPlease refer to the source code for more details about these components.\n\n## Built With\n\n- ![TypeScript](https://img.shields.io/badge/-TypeScript-000000?style=flat-square\u0026logo=typescript)\n- ![JavaScript](https://img.shields.io/badge/-JavaScript-black?style=flat-square\u0026logo=javascript)\n- ![React](https://img.shields.io/badge/-React-black?style=flat-square\u0026logo=react)\n- ![Next.js](https://img.shields.io/badge/-Next.js-black?style=flat-square\u0026logo=next.js)\n- ![MongoDB](https://img.shields.io/badge/-MongoDB-black?style=flat-square\u0026logo=mongodb)\n- ![AWS](https://img.shields.io/badge/-AWS-black?style=flat-square\u0026logo=amazon-aws)\n- ![AUTH0](https://img.shields.io/badge/Auth0-black?logo=auth0\u0026logoColor=fff\u0026style=flat-square)\n- ![Heroku](https://img.shields.io/badge/-Heroku-430098?style=flat-square\u0026logo=heroku)\n- ![Flowbite](https://img.shields.io/badge/-Flowbite-563D7C?logo=tailwind-css\u0026logoColor=white)\n- ![Flowbite React](https://img.shields.io/badge/-FlowbiteReact-563D7C?logo=tailwind-css\u0026logoColor=white)\n- ![Tailwind CSS](https://img.shields.io/badge/Tailwind_CSS-000000?logo=tailwind-css\u0026logoColor=white)\n- ![React](https://img.shields.io/badge/zustand-000000.svg?logo=react\u0026logoColor=%2361DAFB) 🐻\n\n## Authors\n\n- [Rohit Khanduri](https://github.com/rohit1901)\n\n## License\n\nThis project is licensed under the MIT License.\n\n## Acknowledgments\n\n- Thanks to all contributors who participated in this project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frohit1901%2Fadmin-little-fern","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frohit1901%2Fadmin-little-fern","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frohit1901%2Fadmin-little-fern/lists"}