{"id":28438925,"url":"https://github.com/codeville-org/shareville","last_synced_at":"2026-04-09T18:53:46.979Z","repository":{"id":297306033,"uuid":"996348409","full_name":"codeville-org/shareville","owner":"codeville-org","description":"Shareville (by. codeville) - is a third-party web application tool designed to simplify social media post management, starting with seamless integration for scheduling and instant posting to Facebook pages.","archived":false,"fork":false,"pushed_at":"2025-06-04T21:14:08.000Z","size":1756,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-05T02:14:24.915Z","etag":null,"topics":["better-auth","bullmq","bun","drizzle-orm","honojs","nextjs","postgresql","redis","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/codeville-org.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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-04T20:24:25.000Z","updated_at":"2025-06-04T21:14:09.000Z","dependencies_parsed_at":"2025-06-05T02:14:46.196Z","dependency_job_id":"fa0d210d-fffe-4427-a572-206a7203a429","html_url":"https://github.com/codeville-org/shareville","commit_stats":null,"previous_names":["codeville-org/postly"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/codeville-org/shareville","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeville-org%2Fshareville","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeville-org%2Fshareville/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeville-org%2Fshareville/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeville-org%2Fshareville/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeville-org","download_url":"https://codeload.github.com/codeville-org/shareville/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeville-org%2Fshareville/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262513625,"owners_count":23322661,"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":["better-auth","bullmq","bun","drizzle-orm","honojs","nextjs","postgresql","redis","typescript"],"created_at":"2025-06-06T02:00:38.807Z","updated_at":"2025-10-10T22:44:13.973Z","avatar_url":"https://github.com/codeville-org.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Shareville\n\n**Shareville** is a third-party web application tool designed to simplify social media post management, starting with seamless integration for scheduling and instant posting to Facebook pages. It offers an embeddable widget that can be integrated into websites (e.g., AI image generation platforms) to enable users to connect their Facebook accounts, share media, and schedule posts with ease. Shareville prioritizes a user-friendly experience for linking accounts and managing posts, backed by a robust infrastructure for data and scheduling tasks.\n\n## Features\n\n- **Seamless Facebook Integration**: Users can securely connect their Facebook accounts and pages through a straightforward OAuth flow.\n- **Post Scheduling \u0026 Instant Sharing**: Share images or media to Facebook pages instantly or schedule posts via an intuitive widget.\n- **Reusable Widget**: Easily embeddable in any website (e.g., NextJS-based platforms) to manage social media posting without code duplication.\n- **Real-Time Status Updates**: Webhooks deliver live updates on post statuses, viewable on the host website.\n- **Scalable Design**: Built to support integration with multiple websites and future social media platforms.\n\n## Tech Stack\n\n- **Frontend Widget**: NextJS, React, TypeScript, Tailwind CSS, Shadcn UI\n- **Backend API**: BunJS, HonoJS Framework, Drizzle ORM\n- **Database**: PostgreSQL, Redis\n- **Queue**: BullMQ with Redis\n- **Authentication**: Better-Auth\n- **Hosting**: Self-managed VPS Server\n\n## Purpose\n\nShareville eliminates the need for repetitive social media integration by providing a standalone, reusable tool that simplifies connecting and posting to Facebook pages. It’s designed for scalability, enabling seamless integration with various websites while offering an effortless post management experience.\n\n## Getting Started\n\n1. Clone the repository: `git clone https://github.com/[your-username]/shareville.git`\n2. Install dependencies: `bun install` (backend) and `npm install` (frontend)\n3. Configure environment variables for PostgreSQL, Redis, and Facebook API credentials.\n4. Run the backend: `bun run start`\n5. Run the frontend widget: `npm run dev`\n6. Integrate the Shareville widget into your NextJS website and start sharing!\n\n## Contributing\n\nContributions are welcome! Please read our [Contributing Guidelines](CONTRIBUTING.md) for details on how to submit pull requests, report issues, or suggest features.\n\n### Apps and Packages\n\n- `docs`: a [Next.js](https://nextjs.org/) app\n- `web`: another [Next.js](https://nextjs.org/) app\n- `@repo/ui`: a stub React component library shared by both `web` and `docs` applications\n- `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`)\n- `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepo\n\nEach package/app is 100% [TypeScript](https://www.typescriptlang.org/).\n\n### Utilities\n\nThis Turborepo has some additional tools already setup for you:\n\n- [TypeScript](https://www.typescriptlang.org/) for static type checking\n- [ESLint](https://eslint.org/) for code linting\n- [Prettier](https://prettier.io) for code formatting\n\n### Build\n\nTo build all apps and packages, run the following command:\n\n```\ncd my-turborepo\npnpm build\n```\n\n### Develop\n\nTo develop all apps and packages, run the following command:\n\n```\ncd my-turborepo\npnpm dev\n```\n\n### Remote Caching\n\n\u003e [!TIP]\n\u003e Vercel Remote Cache is free for all plans. Get started today at [vercel.com](https://vercel.com/signup?/signup?utm_source=remote-cache-sdk\u0026utm_campaign=free_remote_cache).\n\nTurborepo can use a technique known as [Remote Caching](https://turborepo.com/docs/core-concepts/remote-caching) to share cache artifacts across machines, enabling you to share build caches with your team and CI/CD pipelines.\n\nBy default, Turborepo will cache locally. To enable Remote Caching you will need an account with Vercel. If you don't have an account you can [create one](https://vercel.com/signup?utm_source=turborepo-examples), then enter the following commands:\n\n```\ncd my-turborepo\nnpx turbo login\n```\n\nThis will authenticate the Turborepo CLI with your [Vercel account](https://vercel.com/docs/concepts/personal-accounts/overview).\n\nNext, you can link your Turborepo to your Remote Cache by running the following command from the root of your Turborepo:\n\n```\nnpx turbo link\n```\n\n## Useful Links\n\nLearn more about the power of Turborepo:\n\n- [Tasks](https://turborepo.com/docs/crafting-your-repository/running-tasks)\n- [Caching](https://turborepo.com/docs/crafting-your-repository/caching)\n- [Remote Caching](https://turborepo.com/docs/core-concepts/remote-caching)\n- [Filtering](https://turborepo.com/docs/crafting-your-repository/running-tasks#using-filters)\n- [Configuration Options](https://turborepo.com/docs/reference/configuration)\n- [CLI Usage](https://turborepo.com/docs/reference/command-line-reference)\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeville-org%2Fshareville","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodeville-org%2Fshareville","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeville-org%2Fshareville/lists"}