{"id":13406226,"url":"https://github.com/adisreyaj/flare","last_synced_at":"2025-08-16T16:12:42.326Z","repository":{"id":43191296,"uuid":"455189560","full_name":"adisreyaj/flare","owner":"adisreyaj","description":"Social network for developers.","archived":false,"fork":false,"pushed_at":"2024-04-14T05:52:39.000Z","size":2336,"stargazers_count":115,"open_issues_count":9,"forks_count":19,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-16T10:41:24.909Z","etag":null,"topics":["angular","graphql","nestjs","prisma","typescript"],"latest_commit_sha":null,"homepage":"https://flare.adi.so","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adisreyaj.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","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},"funding":{"custom":["https://www.buymeacoffee.com/adisreyaj"]}},"created_at":"2022-02-03T14:07:50.000Z","updated_at":"2025-03-15T16:34:57.000Z","dependencies_parsed_at":"2024-10-27T12:49:12.912Z","dependency_job_id":"80e2f6e9-bbf1-4939-8360-18d5f4c31b43","html_url":"https://github.com/adisreyaj/flare","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adisreyaj%2Fflare","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adisreyaj%2Fflare/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adisreyaj%2Fflare/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adisreyaj%2Fflare/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adisreyaj","download_url":"https://codeload.github.com/adisreyaj/flare/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244009002,"owners_count":20382947,"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":["angular","graphql","nestjs","prisma","typescript"],"created_at":"2024-07-30T19:02:24.593Z","updated_at":"2025-03-17T09:31:03.227Z","avatar_url":"https://github.com/adisreyaj.png","language":"TypeScript","funding_links":["https://www.buymeacoffee.com/adisreyaj"],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/adisreyaj/flare\"\u003e\n    \u003cimg src=\"apps/flare/src/assets/images/favicon.png\" alt=\"Logo\" width=\"100\" height=\"100\"\u003e\n  \u003c/a\u003e\n\n  \u003ch3 align=\"center\"\u003eFlare - Social Network for Developers\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    The social networking developers have been longing for.\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://flare.adi.so\"\u003eView Demo\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/adisreyaj/flare/issues\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/adisreyaj/flare/issues\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://cardify.vercel.app/api/badges?border=false\u0026borderColor=%23ddd\u0026borderWidth=2\u0026iconColor=\u0026icons=angular%2Ctailwindcss%2Cnestjs%2Capollographql%2Cprisma%2Cgraphql%2Cmysql%2Credis%2Cnx%2Ctypescript%2Cgithubactions%2Cpm2\u0026preset=default\u0026shadow=true\u0026width=100\"\u003e\n\u003c/p\u003e\n\u003c/p\u003e\n\n---\n# Flare - Social Network for Developers\nFlare is my take on a social network for developers. It's built entirely around the needs and interests of software developers. Flare is my entry for the Netlify x Hashnode Hackathon 🔥\n\nTL;DR: Flare is a new kind of social networking site made especially for software developers. Twitter is a really great place where developers hang out and share insightful tweets. But there is something that is lacking there.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"flare-header.png\"\u003e\n\u003c/p\u003e\n\n## Features ✨\nHere are some features that I planned for Flare. The ones implemented right now are marked. The fundamental idea is to support writing small posts within Flare. So the concept of blocks came. Blocks are used to create a flare, you can have text, code, images, etc in a single flare. Each of these smaller items that make up a flare is called a block.\n\n- Share Code snippets ✅\n- Share terminal scripts ✅\n- Share Images ✅\n- Comments ✅\n- Bookmarks ✅\n- Show Spotify last played songs ✅\n- Header Image promotions ✅\n- Kudos ✅\n- Connect Hashnode blog ✅\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"flare.png\"\u003e\n\u003c/p\u003e\n\n### Profile Page\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"profile.png\"\u003e\n\u003c/p\u003e\n\n### Mobile View\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"mobile-view.png\"\u003e\n\u003c/p\u003e\n\n## Running Locally 💻\n\n### 1. Clone the repo\n```sh\ngit clone https://github.com/adisreyaj/flare.git\n```\n### 2. Initialize the submodule (UI components)\n\nI created a small UI component library called Zigzag that is used in the project as a submodule. \n\n```sh\ngit submodule update --init\n```\n\n### 3.  Install the dependencies\n```sh\nnpm install\n```\n\n### 4. Setup the environment variables\n\nSet up all the required environment variables required for the back-end:\n```\nNODE_ENV=development\nDATABASE_URL=mysql://root:root@localhost:3307/flare\nFRONT_END_CALLBACK_URL=http://localhost:4200/auth/callback\n\n# JWT sign secret\nJWT_SECRET=veryverysecretkey\nJWT_EXPIRY=\"3d\"\nCOOKIE_SECRET=veryverysecretsessionkey\n\n# Google OAuth Details\nGOOGLE_CLIENT_ID=\nGOOGLE_CLIENT_SECRET=\nGOOGLE_CALLBACK_URI=http://localhost:3333/api/auth/google/callback\n\n# Github OAuth Details\nGITHUB_CLIENT_ID=\nGITHUB_CLIENT_SECRET=\nGITHUB_CALLBACK_URI=http://localhost:3333/api/auth/github/callback\n\n# Queue\nREDIS_HOST=localhost\nREDIS_PORT=6379\nREDIS_PASSWORD=\n\n# Object Storage\nS3_ENDPOINT=\nS3_REGION=\nS3_BUCKET=\nS3_ACCESS_KEY_ID=\nS3_SECRET_ACCESS_KEY=\n```\n\n### 5. Prepare the Database\n\nUse docker-compose to spin up MySQL and Redis databases.\n```yml\nversion: '3.1'\nservices:\n  db:\n    image: mariadb\n    restart: always\n    environment:\n      MYSQL_ROOT_PASSWORD: root\n      MYSQL_DATABASE: flare\n    ports:\n      - '3307:3306'\n    volumes:\n      - /Users/\u003cusername\u003e/Desktop/code/db:/var/lib/mysql\n  cache:\n    image: redis\n    restart: always\n    ports:\n      - '6379:6379'\n    volumes:\n      - /Users/\u003cusername\u003e/Desktop/code/cache:/var/lib/redis\n```\n\n### 6. Set up the Database\nRun the command to populate the DB with tables:\n```sh\nnpm run prisma:migrate\n```\n\n### 7. Generate the GraphQL interfaces from the schema\n\nRun the command to generate the required types:\n```sh\nnpm run generate:gql\n```\n\n### 8. Start up the UI and Back-end\nFor UI:\n```sh\nnpm start\n```\n\nFor Back-end\n```sh\nnpm start api\n```\n\nUI: `http://localhost:4200` \u0026 GQL: `http://localhost:3333`\n\nYou are all set for exploring Flare locally.\n\n## Links and References 🔗\n\n| Title        | Link                            | Description                                      |\n|--------------|---------------------------------|--------------------------------------------------|\n| Angular      | https://angular.io/             | Front-end framework                              |\n| NestJs       | https://docs.nestjs.com/        | Back-end framework based on NodeJs               |\n| Netlify      | https://www.netlify.com/        | Deployment for UI                                |\n| Prisma       | https://www.prisma.io/          | Node.js and TypeScript ORM                       |\n| Tailwind CSS | https://tailwindcss.com/        | Utility first CSS framework                      |\n| Nx           | https://nx.dev/#getting-started | Build system with monorepo support               |\n| PM2          | https://app.pm2.io/             | Advanced, production process manager for Node.JS |\n| Upstash      | https://upstash.com/            | Serverless Redis DB                              |\n| Backblaze    | https://www.backblaze.com/      | Cloud Storage                                    |\n\n## Roadmap\n\nSee the [open issues](https://github.com/adisreyaj/flare/issues) for a list of proposed features (and known issues).\n\n## License\n\nDistributed under the Apache 2.0 License. See `LICENSE` for more information.\n\n## Show your support\n\nPlease ⭐️ this repository if this project helped you!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadisreyaj%2Fflare","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadisreyaj%2Fflare","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadisreyaj%2Fflare/lists"}