├── .cursorrules ├── .env.example ├── .gitignore ├── FUNDING.yml ├── LICENSE ├── README.md ├── actions ├── claim.ts ├── filters.ts ├── media.ts ├── misc.ts ├── report.ts ├── search.ts ├── stripe.ts ├── submit.ts └── subscribe.ts ├── app ├── (web) │ ├── (home) │ │ ├── count-badge.tsx │ │ └── page.tsx │ ├── [slug] │ │ ├── featured-tools.tsx │ │ ├── opengraph-image.tsx │ │ ├── page.tsx │ │ └── related.tsx │ ├── about │ │ └── page.tsx │ ├── advertise │ │ ├── page.tsx │ │ ├── pickers.tsx │ │ └── success │ │ │ ├── form.tsx │ │ │ └── page.tsx │ ├── alternatives │ │ ├── (alternatives) │ │ │ └── page.tsx │ │ └── [slug] │ │ │ ├── opengraph-image.tsx │ │ │ ├── page.tsx │ │ │ └── related.tsx │ ├── auth │ │ ├── layout.tsx │ │ ├── login │ │ │ └── page.tsx │ │ └── verify │ │ │ └── page.tsx │ ├── blog │ │ ├── [slug] │ │ │ └── page.tsx │ │ └── page.tsx │ ├── categories │ │ ├── (categories) │ │ │ ├── listing.tsx │ │ │ └── page.tsx │ │ ├── [...slug] │ │ │ └── page.tsx │ │ └── [slug] │ │ │ ├── self-hosted │ │ │ └── page.tsx │ │ │ └── using │ │ │ └── [stack] │ │ │ └── page.tsx │ ├── coming-soon │ │ └── page.tsx │ ├── dashboard │ │ ├── layout.tsx │ │ ├── listing.tsx │ │ ├── nav.tsx │ │ ├── page.tsx │ │ └── table.tsx │ ├── error.tsx │ ├── layout.tsx │ ├── licenses │ │ ├── (licenses) │ │ │ ├── listing.tsx │ │ │ └── page.tsx │ │ └── [slug] │ │ │ └── page.tsx │ ├── not-found.tsx │ ├── providers.tsx │ ├── self-hosted │ │ ├── categories.tsx │ │ └── page.tsx │ ├── stacks │ │ ├── (stacks) │ │ │ ├── listing.tsx │ │ │ └── page.tsx │ │ └── [slug] │ │ │ ├── categories.tsx │ │ │ └── page.tsx │ ├── submit │ │ ├── [slug] │ │ │ ├── page.tsx │ │ │ ├── products.tsx │ │ │ └── success │ │ │ │ └── page.tsx │ │ ├── form.tsx │ │ └── page.tsx │ └── topics │ │ ├── [slug] │ │ └── page.tsx │ │ └── letter │ │ └── [letter] │ │ ├── listing.tsx │ │ └── page.tsx ├── admin │ ├── _components │ │ ├── analytics-card.tsx │ │ ├── calendar.tsx │ │ ├── chart.tsx │ │ ├── scheduled-card.tsx │ │ ├── stats-card.tsx │ │ ├── subscribers-card.tsx │ │ └── users-card.tsx │ ├── alternatives │ │ ├── [slug] │ │ │ └── page.tsx │ │ ├── _components │ │ │ ├── alternative-actions.tsx │ │ │ ├── alternative-form.tsx │ │ │ ├── alternative-generate-content.tsx │ │ │ ├── alternatives-delete-dialog.tsx │ │ │ ├── alternatives-table-columns.tsx │ │ │ ├── alternatives-table-toolbar-actions.tsx │ │ │ └── alternatives-table.tsx │ │ ├── new │ │ │ └── page.tsx │ │ └── page.tsx │ ├── categories │ │ ├── [slug] │ │ │ └── page.tsx │ │ ├── _components │ │ │ ├── categories-delete-dialog.tsx │ │ │ ├── categories-table-columns.tsx │ │ │ ├── categories-table-toolbar-actions.tsx │ │ │ ├── categories-table.tsx │ │ │ ├── category-actions.tsx │ │ │ └── category-form.tsx │ │ ├── new │ │ │ └── page.tsx │ │ └── page.tsx │ ├── error.tsx │ ├── layout.tsx │ ├── not-found.tsx │ ├── page.tsx │ ├── reports │ │ ├── [id] │ │ │ └── page.tsx │ │ ├── _components │ │ │ ├── report-actions.tsx │ │ │ ├── report-form.tsx │ │ │ ├── reports-delete-dialog.tsx │ │ │ ├── reports-table-columns.tsx │ │ │ ├── reports-table-toolbar-actions.tsx │ │ │ └── reports-table.tsx │ │ └── page.tsx │ ├── site │ │ └── page.tsx │ ├── tools │ │ ├── [slug] │ │ │ └── page.tsx │ │ ├── _components │ │ │ ├── tool-actions.tsx │ │ │ ├── tool-form.tsx │ │ │ ├── tool-generate-content.tsx │ │ │ ├── tool-publish-actions.tsx │ │ │ ├── tools-delete-dialog.tsx │ │ │ ├── tools-table-columns.tsx │ │ │ ├── tools-table-toolbar-actions.tsx │ │ │ └── tools-table.tsx │ │ ├── new │ │ │ └── page.tsx │ │ └── page.tsx │ └── users │ │ ├── [id] │ │ └── page.tsx │ │ ├── _components │ │ ├── user-actions.tsx │ │ ├── user-form.tsx │ │ ├── users-delete-dialog.tsx │ │ ├── users-table-columns.tsx │ │ ├── users-table-toolbar-actions.tsx │ │ └── users-table.tsx │ │ └── page.tsx ├── api │ ├── ai │ │ ├── completion │ │ │ └── route.ts │ │ ├── generate-content │ │ │ └── route.ts │ │ └── generate-description │ │ │ └── route.ts │ ├── auth │ │ └── [...all] │ │ │ └── route.ts │ ├── inngest │ │ └── route.ts │ └── stripe │ │ └── webhooks │ │ └── route.ts ├── layout.tsx ├── llms.txt │ └── route.ts ├── not-found.tsx ├── rss │ ├── alternatives.xml │ │ └── route.ts │ └── tools.xml │ │ └── route.ts └── styles.css ├── assets └── icons │ ├── lucide │ ├── arrow-down.svg │ ├── arrow-left.svg │ ├── arrow-right.svg │ ├── arrow-up-right.svg │ ├── arrow-up.svg │ ├── at-sign.svg │ ├── badge-check.svg │ ├── ban.svg │ ├── blocks.svg │ ├── calendar-days.svg │ ├── calendar.svg │ ├── check.svg │ ├── chevron-down.svg │ ├── chevron-left.svg │ ├── chevron-right.svg │ ├── chevron-up.svg │ ├── chevrons-left.svg │ ├── chevrons-right.svg │ ├── chevrons-up-down.svg │ ├── circle-check.svg │ ├── circle-dashed.svg │ ├── circle-dot-dashed.svg │ ├── circle-help.svg │ ├── circle-plus.svg │ ├── circle-x.svg │ ├── circle.svg │ ├── clock.svg │ ├── copyright.svg │ ├── crown.svg │ ├── dock.svg │ ├── ellipsis.svg │ ├── eye-off.svg │ ├── eye.svg │ ├── gem.svg │ ├── git-fork.svg │ ├── globe.svg │ ├── hash.svg │ ├── history.svg │ ├── house.svg │ ├── inbox.svg │ ├── layout-dashboard.svg │ ├── list-filter.svg │ ├── loader.svg │ ├── log-out.svg │ ├── mouse-pointer-click.svg │ ├── pencil.svg │ ├── plus.svg │ ├── refresh-cw.svg │ ├── replace.svg │ ├── rss.svg │ ├── search.svg │ ├── server.svg │ ├── shield-half.svg │ ├── shield.svg │ ├── smile-plus.svg │ ├── sparkles.svg │ ├── square-percent.svg │ ├── star.svg │ ├── tag.svg │ ├── tags.svg │ ├── timer.svg │ ├── trash.svg │ ├── triangle-alert.svg │ ├── user.svg │ ├── users.svg │ └── x.svg │ ├── tabler │ ├── brand-bluesky.svg │ ├── brand-facebook.svg │ ├── brand-github.svg │ ├── brand-linkedin.svg │ ├── brand-mastodon.svg │ ├── brand-reddit.svg │ ├── brand-whatsapp.svg │ ├── brand-x.svg │ └── brand-ycombinator.svg │ └── verified-badge.svg ├── biome.json ├── bun.lock ├── components ├── admin │ ├── auth-hoc.tsx │ ├── date-range-picker.tsx │ ├── nav.tsx │ ├── relation-selector.tsx │ ├── row-checkbox.tsx │ ├── shell.tsx │ ├── sidebar.tsx │ └── wrapper.tsx ├── common │ ├── animated-container.tsx │ ├── avatar.tsx │ ├── badge.tsx │ ├── box.tsx │ ├── button.tsx │ ├── calendar.tsx │ ├── card.tsx │ ├── checkbox.tsx │ ├── command.tsx │ ├── dialog.tsx │ ├── dropdown-menu.tsx │ ├── form.tsx │ ├── heading.tsx │ ├── hint.tsx │ ├── hover-card.tsx │ ├── icon.tsx │ ├── input.tsx │ ├── kbd.tsx │ ├── label.tsx │ ├── link.tsx │ ├── note.tsx │ ├── ping.tsx │ ├── popover.tsx │ ├── prose.tsx │ ├── radio-group.tsx │ ├── search.tsx │ ├── select.tsx │ ├── separator.tsx │ ├── skeleton.tsx │ ├── slottable.tsx │ ├── stack.tsx │ ├── switch.tsx │ ├── table.tsx │ ├── textarea.tsx │ ├── toaster.tsx │ └── tooltip.tsx ├── data-table │ ├── data-table-column-header.tsx │ ├── data-table-faceted-filter.tsx │ ├── data-table-header.tsx │ ├── data-table-link.tsx │ ├── data-table-pagination.tsx │ ├── data-table-skeleton.tsx │ ├── data-table-toolbar.tsx │ ├── data-table-view-options.tsx │ └── data-table.tsx └── web │ ├── ads-calendar.tsx │ ├── ads-picker-alternatives.tsx │ ├── ads-picker.tsx │ ├── ads │ ├── ad-banner.tsx │ ├── ad-button.tsx │ └── ad-card.tsx │ ├── advertisers.tsx │ ├── alternatives │ ├── alternative-card-external.tsx │ ├── alternative-card.tsx │ ├── alternative-hover-card.tsx │ ├── alternative-list.tsx │ ├── alternative-listing.tsx │ ├── alternative-preview.tsx │ ├── alternative-query.tsx │ └── alternative-search.tsx │ ├── auth │ ├── login-button.tsx │ ├── login-dialog.tsx │ ├── login-form.tsx │ └── login.tsx │ ├── bottom.tsx │ ├── built-with.tsx │ ├── categories │ └── category-list.tsx │ ├── contribution-graph.tsx │ ├── dialogs │ ├── tool-claim-dialog.tsx │ └── tool-report-dialog.tsx │ ├── discount.tsx │ ├── empty-list.tsx │ ├── external-link.tsx │ ├── feature-nudge.tsx │ ├── featured.tsx │ ├── feedback-widget.tsx │ ├── footer.tsx │ ├── header.tsx │ ├── inline-menu.tsx │ ├── letter-picker.tsx │ ├── licenses │ ├── license-card.tsx │ └── license-list.tsx │ ├── listing.tsx │ ├── markdown.tsx │ ├── mdx-components.tsx │ ├── mdx.tsx │ ├── newsletter-form.tsx │ ├── newsletter-proof.tsx │ ├── og │ └── og-base.tsx │ ├── overlay-image.tsx │ ├── pagination-link.tsx │ ├── pagination.tsx │ ├── plan-interval-switch.tsx │ ├── plan.tsx │ ├── posthog-pageview.tsx │ ├── posts │ └── post-card.tsx │ ├── price.tsx │ ├── repository-details.tsx │ ├── search-form.tsx │ ├── share-buttons.tsx │ ├── show-more.tsx │ ├── stacks │ └── stack-list.tsx │ ├── stats.tsx │ ├── testimonial.tsx │ ├── tools │ ├── tool-actions.tsx │ ├── tool-alternatives.tsx │ ├── tool-badges.tsx │ ├── tool-card.tsx │ ├── tool-entry.tsx │ ├── tool-filters.tsx │ ├── tool-hover-card.tsx │ ├── tool-list.tsx │ ├── tool-listing.tsx │ ├── tool-query.tsx │ ├── tool-refinement.tsx │ ├── tool-search.tsx │ └── tool-stacks.tsx │ ├── topics │ ├── topic-card.tsx │ └── topic-list.tsx │ ├── ui │ ├── author.tsx │ ├── back-button.tsx │ ├── brand-link.tsx │ ├── breadcrumbs.tsx │ ├── container.tsx │ ├── favicon.tsx │ ├── grid.tsx │ ├── hamburger.tsx │ ├── insights.tsx │ ├── intro.tsx │ ├── logo-symbol.tsx │ ├── logo.tsx │ ├── nav-link.tsx │ ├── section.tsx │ ├── stat.tsx │ ├── tag.tsx │ └── tile.tsx │ ├── user-logout.tsx │ ├── user-menu.tsx │ └── verified-badge.tsx ├── compose.yml ├── config ├── ads.ts ├── claims.ts ├── index.ts ├── links.ts ├── metadata.ts ├── search.ts ├── site.ts ├── stats.ts └── submissions.ts ├── content-collections.ts ├── content └── posts │ ├── 7-open-source-tools-for-website-analytics.mdx │ ├── how-open-source-companies-make-money.mdx │ └── top-5-open-source-projects-for-developers.mdx ├── contexts ├── filter-context.tsx └── search-context.tsx ├── emails ├── admin-submission-premium.tsx ├── components │ ├── button.tsx │ ├── expedite-nudge.tsx │ ├── feature-nudge.tsx │ └── wrapper.tsx ├── magic-link.tsx ├── submission-premium.tsx ├── submission-published.tsx ├── submission-scheduled.tsx ├── submission.tsx ├── verify-domain.tsx └── welcome.tsx ├── env.ts ├── functions ├── cron.analyze-tools.ts ├── cron.fetch-data.ts ├── cron.index-data.ts └── cron.publish-tools.ts ├── hooks ├── use-ads.ts ├── use-computed-field.ts ├── use-data-table.ts ├── use-inline-menu.ts ├── use-pagination.ts └── use-plan-prices.ts ├── lib ├── analytics.ts ├── apis.ts ├── auth-client.ts ├── auth-hoc.ts ├── auth.ts ├── categories.ts ├── data-table.ts ├── email.ts ├── fonts.ts ├── github │ ├── queries.ts │ ├── types.ts │ └── utils.ts ├── handle-error.ts ├── image-loader.ts ├── indexing.ts ├── media.ts ├── milestones.ts ├── notifications.ts ├── parsers.ts ├── pricing.ts ├── products.ts ├── rate-limiter.ts ├── repositories.ts ├── safe-actions.ts ├── scraper.ts ├── socials.ts ├── stack-analysis.ts └── tools.ts ├── middleware.ts ├── next-sitemap.config.js ├── next.config.ts ├── package.json ├── postcss.config.mjs ├── prisma └── schema.prisma ├── public ├── 3d-heart.webp ├── authors │ ├── abdullahatta.webp │ ├── mohitvaswani.webp │ └── piotrkulpinski.webp ├── content │ ├── 7-open-source-tools-for-website-analytics │ │ ├── countly.webp │ │ ├── matomo.webp │ │ ├── openpanel.webp │ │ ├── plausible.webp │ │ ├── swetrix.webp │ │ ├── thumbnail.webp │ │ ├── trench.webp │ │ └── umami.webp │ ├── open-source-money.webp │ └── top-5-open-source-projects-for-developers │ │ ├── airbyte.webp │ │ ├── openreplay.webp │ │ ├── plausible.webp │ │ ├── posthog.webp │ │ ├── sentry.webp │ │ └── thumbnail.webp ├── favicon.png ├── fonts │ └── ABCDiatype-Bold.woff2 ├── gmail.svg ├── hackernews.svg ├── indiehackers.svg ├── logo.png ├── logo.svg ├── opengraph.png ├── outlook.svg ├── producthunt.svg ├── superhuman.svg ├── twitter.svg └── users │ ├── 1.webp │ ├── 2.webp │ ├── 3.webp │ ├── 4.webp │ └── 5.webp ├── scripts ├── build-icons.ts └── setup-meilisearch.ts ├── server ├── admin │ ├── alternatives │ │ ├── actions.ts │ │ ├── queries.ts │ │ └── schema.ts │ ├── categories │ │ ├── actions.ts │ │ ├── queries.ts │ │ └── schema.ts │ ├── reports │ │ ├── actions.ts │ │ ├── queries.ts │ │ └── schema.ts │ ├── shared │ │ └── schema.ts │ ├── tools │ │ ├── actions.ts │ │ ├── queries.ts │ │ └── schema.ts │ └── users │ │ ├── actions.ts │ │ ├── queries.ts │ │ └── schema.ts └── web │ ├── ads │ ├── payloads.ts │ └── queries.ts │ ├── alternatives │ ├── payloads.ts │ └── queries.ts │ ├── categories │ ├── payloads.ts │ └── queries.ts │ ├── licenses │ ├── payloads.ts │ └── queries.ts │ ├── shared │ └── schema.ts │ ├── stacks │ ├── payloads.ts │ └── queries.ts │ ├── tools │ ├── payloads.ts │ └── queries.ts │ ├── topics │ ├── payloads.ts │ └── queries.ts │ └── users │ └── actions.ts ├── services ├── bluesky.ts ├── db.ts ├── github.ts ├── inngest.ts ├── mastodon.ts ├── meilisearch.ts ├── plausible.ts ├── redis.ts ├── resend.ts ├── s3.ts ├── stripe.ts └── twitter.ts ├── sly.json ├── tsconfig.json ├── types ├── index.ts └── search.ts └── utils ├── ads.ts ├── cva.ts ├── helpers.ts └── search-params.ts /.cursorrules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/.cursorrules -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/.env.example -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/.gitignore -------------------------------------------------------------------------------- /FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: piotrkulpinski 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/README.md -------------------------------------------------------------------------------- /actions/claim.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/claim.ts -------------------------------------------------------------------------------- /actions/filters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/filters.ts -------------------------------------------------------------------------------- /actions/media.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/media.ts -------------------------------------------------------------------------------- /actions/misc.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/misc.ts -------------------------------------------------------------------------------- /actions/report.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/report.ts -------------------------------------------------------------------------------- /actions/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/search.ts -------------------------------------------------------------------------------- /actions/stripe.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/stripe.ts -------------------------------------------------------------------------------- /actions/submit.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/submit.ts -------------------------------------------------------------------------------- /actions/subscribe.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/actions/subscribe.ts -------------------------------------------------------------------------------- /app/(web)/(home)/count-badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/(home)/count-badge.tsx -------------------------------------------------------------------------------- /app/(web)/(home)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/(home)/page.tsx -------------------------------------------------------------------------------- /app/(web)/[slug]/featured-tools.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/[slug]/featured-tools.tsx -------------------------------------------------------------------------------- /app/(web)/[slug]/opengraph-image.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/[slug]/opengraph-image.tsx -------------------------------------------------------------------------------- /app/(web)/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/[slug]/related.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/[slug]/related.tsx -------------------------------------------------------------------------------- /app/(web)/about/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/about/page.tsx -------------------------------------------------------------------------------- /app/(web)/advertise/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/advertise/page.tsx -------------------------------------------------------------------------------- /app/(web)/advertise/pickers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/advertise/pickers.tsx -------------------------------------------------------------------------------- /app/(web)/advertise/success/form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/advertise/success/form.tsx -------------------------------------------------------------------------------- /app/(web)/advertise/success/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/advertise/success/page.tsx -------------------------------------------------------------------------------- /app/(web)/alternatives/(alternatives)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/alternatives/(alternatives)/page.tsx -------------------------------------------------------------------------------- /app/(web)/alternatives/[slug]/opengraph-image.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/alternatives/[slug]/opengraph-image.tsx -------------------------------------------------------------------------------- /app/(web)/alternatives/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/alternatives/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/alternatives/[slug]/related.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/alternatives/[slug]/related.tsx -------------------------------------------------------------------------------- /app/(web)/auth/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/auth/layout.tsx -------------------------------------------------------------------------------- /app/(web)/auth/login/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/auth/login/page.tsx -------------------------------------------------------------------------------- /app/(web)/auth/verify/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/auth/verify/page.tsx -------------------------------------------------------------------------------- /app/(web)/blog/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/blog/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/blog/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/blog/page.tsx -------------------------------------------------------------------------------- /app/(web)/categories/(categories)/listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/categories/(categories)/listing.tsx -------------------------------------------------------------------------------- /app/(web)/categories/(categories)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/categories/(categories)/page.tsx -------------------------------------------------------------------------------- /app/(web)/categories/[...slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/categories/[...slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/categories/[slug]/self-hosted/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/categories/[slug]/self-hosted/page.tsx -------------------------------------------------------------------------------- /app/(web)/categories/[slug]/using/[stack]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/categories/[slug]/using/[stack]/page.tsx -------------------------------------------------------------------------------- /app/(web)/coming-soon/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/coming-soon/page.tsx -------------------------------------------------------------------------------- /app/(web)/dashboard/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/dashboard/layout.tsx -------------------------------------------------------------------------------- /app/(web)/dashboard/listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/dashboard/listing.tsx -------------------------------------------------------------------------------- /app/(web)/dashboard/nav.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/dashboard/nav.tsx -------------------------------------------------------------------------------- /app/(web)/dashboard/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/dashboard/page.tsx -------------------------------------------------------------------------------- /app/(web)/dashboard/table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/dashboard/table.tsx -------------------------------------------------------------------------------- /app/(web)/error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/error.tsx -------------------------------------------------------------------------------- /app/(web)/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/layout.tsx -------------------------------------------------------------------------------- /app/(web)/licenses/(licenses)/listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/licenses/(licenses)/listing.tsx -------------------------------------------------------------------------------- /app/(web)/licenses/(licenses)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/licenses/(licenses)/page.tsx -------------------------------------------------------------------------------- /app/(web)/licenses/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/licenses/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/not-found.tsx -------------------------------------------------------------------------------- /app/(web)/providers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/providers.tsx -------------------------------------------------------------------------------- /app/(web)/self-hosted/categories.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/self-hosted/categories.tsx -------------------------------------------------------------------------------- /app/(web)/self-hosted/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/self-hosted/page.tsx -------------------------------------------------------------------------------- /app/(web)/stacks/(stacks)/listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/stacks/(stacks)/listing.tsx -------------------------------------------------------------------------------- /app/(web)/stacks/(stacks)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/stacks/(stacks)/page.tsx -------------------------------------------------------------------------------- /app/(web)/stacks/[slug]/categories.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/stacks/[slug]/categories.tsx -------------------------------------------------------------------------------- /app/(web)/stacks/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/stacks/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/submit/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/submit/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/submit/[slug]/products.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/submit/[slug]/products.tsx -------------------------------------------------------------------------------- /app/(web)/submit/[slug]/success/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/submit/[slug]/success/page.tsx -------------------------------------------------------------------------------- /app/(web)/submit/form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/submit/form.tsx -------------------------------------------------------------------------------- /app/(web)/submit/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/submit/page.tsx -------------------------------------------------------------------------------- /app/(web)/topics/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/topics/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(web)/topics/letter/[letter]/listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/topics/letter/[letter]/listing.tsx -------------------------------------------------------------------------------- /app/(web)/topics/letter/[letter]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/(web)/topics/letter/[letter]/page.tsx -------------------------------------------------------------------------------- /app/admin/_components/analytics-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/analytics-card.tsx -------------------------------------------------------------------------------- /app/admin/_components/calendar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/calendar.tsx -------------------------------------------------------------------------------- /app/admin/_components/chart.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/chart.tsx -------------------------------------------------------------------------------- /app/admin/_components/scheduled-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/scheduled-card.tsx -------------------------------------------------------------------------------- /app/admin/_components/stats-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/stats-card.tsx -------------------------------------------------------------------------------- /app/admin/_components/subscribers-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/subscribers-card.tsx -------------------------------------------------------------------------------- /app/admin/_components/users-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/_components/users-card.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/[slug]/page.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternative-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternative-actions.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternative-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternative-form.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternative-generate-content.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternative-generate-content.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternatives-delete-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternatives-delete-dialog.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternatives-table-columns.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternatives-table-columns.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternatives-table-toolbar-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternatives-table-toolbar-actions.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/_components/alternatives-table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/_components/alternatives-table.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/new/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/new/page.tsx -------------------------------------------------------------------------------- /app/admin/alternatives/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/alternatives/page.tsx -------------------------------------------------------------------------------- /app/admin/categories/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/[slug]/page.tsx -------------------------------------------------------------------------------- /app/admin/categories/_components/categories-delete-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/_components/categories-delete-dialog.tsx -------------------------------------------------------------------------------- /app/admin/categories/_components/categories-table-columns.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/_components/categories-table-columns.tsx -------------------------------------------------------------------------------- /app/admin/categories/_components/categories-table-toolbar-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/_components/categories-table-toolbar-actions.tsx -------------------------------------------------------------------------------- /app/admin/categories/_components/categories-table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/_components/categories-table.tsx -------------------------------------------------------------------------------- /app/admin/categories/_components/category-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/_components/category-actions.tsx -------------------------------------------------------------------------------- /app/admin/categories/_components/category-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/_components/category-form.tsx -------------------------------------------------------------------------------- /app/admin/categories/new/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/new/page.tsx -------------------------------------------------------------------------------- /app/admin/categories/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/categories/page.tsx -------------------------------------------------------------------------------- /app/admin/error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/error.tsx -------------------------------------------------------------------------------- /app/admin/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/layout.tsx -------------------------------------------------------------------------------- /app/admin/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/not-found.tsx -------------------------------------------------------------------------------- /app/admin/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/page.tsx -------------------------------------------------------------------------------- /app/admin/reports/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/[id]/page.tsx -------------------------------------------------------------------------------- /app/admin/reports/_components/report-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/_components/report-actions.tsx -------------------------------------------------------------------------------- /app/admin/reports/_components/report-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/_components/report-form.tsx -------------------------------------------------------------------------------- /app/admin/reports/_components/reports-delete-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/_components/reports-delete-dialog.tsx -------------------------------------------------------------------------------- /app/admin/reports/_components/reports-table-columns.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/_components/reports-table-columns.tsx -------------------------------------------------------------------------------- /app/admin/reports/_components/reports-table-toolbar-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/_components/reports-table-toolbar-actions.tsx -------------------------------------------------------------------------------- /app/admin/reports/_components/reports-table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/_components/reports-table.tsx -------------------------------------------------------------------------------- /app/admin/reports/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/reports/page.tsx -------------------------------------------------------------------------------- /app/admin/site/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/site/page.tsx -------------------------------------------------------------------------------- /app/admin/tools/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/[slug]/page.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tool-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tool-actions.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tool-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tool-form.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tool-generate-content.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tool-generate-content.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tool-publish-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tool-publish-actions.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tools-delete-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tools-delete-dialog.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tools-table-columns.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tools-table-columns.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tools-table-toolbar-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tools-table-toolbar-actions.tsx -------------------------------------------------------------------------------- /app/admin/tools/_components/tools-table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/_components/tools-table.tsx -------------------------------------------------------------------------------- /app/admin/tools/new/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/new/page.tsx -------------------------------------------------------------------------------- /app/admin/tools/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/tools/page.tsx -------------------------------------------------------------------------------- /app/admin/users/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/[id]/page.tsx -------------------------------------------------------------------------------- /app/admin/users/_components/user-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/_components/user-actions.tsx -------------------------------------------------------------------------------- /app/admin/users/_components/user-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/_components/user-form.tsx -------------------------------------------------------------------------------- /app/admin/users/_components/users-delete-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/_components/users-delete-dialog.tsx -------------------------------------------------------------------------------- /app/admin/users/_components/users-table-columns.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/_components/users-table-columns.tsx -------------------------------------------------------------------------------- /app/admin/users/_components/users-table-toolbar-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/_components/users-table-toolbar-actions.tsx -------------------------------------------------------------------------------- /app/admin/users/_components/users-table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/_components/users-table.tsx -------------------------------------------------------------------------------- /app/admin/users/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/admin/users/page.tsx -------------------------------------------------------------------------------- /app/api/ai/completion/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/api/ai/completion/route.ts -------------------------------------------------------------------------------- /app/api/ai/generate-content/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/api/ai/generate-content/route.ts -------------------------------------------------------------------------------- /app/api/ai/generate-description/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/api/ai/generate-description/route.ts -------------------------------------------------------------------------------- /app/api/auth/[...all]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/api/auth/[...all]/route.ts -------------------------------------------------------------------------------- /app/api/inngest/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/api/inngest/route.ts -------------------------------------------------------------------------------- /app/api/stripe/webhooks/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/api/stripe/webhooks/route.ts -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/llms.txt/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/llms.txt/route.ts -------------------------------------------------------------------------------- /app/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/not-found.tsx -------------------------------------------------------------------------------- /app/rss/alternatives.xml/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/rss/alternatives.xml/route.ts -------------------------------------------------------------------------------- /app/rss/tools.xml/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/rss/tools.xml/route.ts -------------------------------------------------------------------------------- /app/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/app/styles.css -------------------------------------------------------------------------------- /assets/icons/lucide/arrow-down.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/arrow-down.svg -------------------------------------------------------------------------------- /assets/icons/lucide/arrow-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/arrow-left.svg -------------------------------------------------------------------------------- /assets/icons/lucide/arrow-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/arrow-right.svg -------------------------------------------------------------------------------- /assets/icons/lucide/arrow-up-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/arrow-up-right.svg -------------------------------------------------------------------------------- /assets/icons/lucide/arrow-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/arrow-up.svg -------------------------------------------------------------------------------- /assets/icons/lucide/at-sign.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/at-sign.svg -------------------------------------------------------------------------------- /assets/icons/lucide/badge-check.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/badge-check.svg -------------------------------------------------------------------------------- /assets/icons/lucide/ban.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/ban.svg -------------------------------------------------------------------------------- /assets/icons/lucide/blocks.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/blocks.svg -------------------------------------------------------------------------------- /assets/icons/lucide/calendar-days.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/calendar-days.svg -------------------------------------------------------------------------------- /assets/icons/lucide/calendar.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/calendar.svg -------------------------------------------------------------------------------- /assets/icons/lucide/check.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/check.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevron-down.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevron-down.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevron-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevron-left.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevron-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevron-right.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevron-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevron-up.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevrons-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevrons-left.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevrons-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevrons-right.svg -------------------------------------------------------------------------------- /assets/icons/lucide/chevrons-up-down.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/chevrons-up-down.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle-check.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle-check.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle-dashed.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle-dashed.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle-dot-dashed.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle-dot-dashed.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle-help.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle-help.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle-plus.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle-plus.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle-x.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle-x.svg -------------------------------------------------------------------------------- /assets/icons/lucide/circle.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/circle.svg -------------------------------------------------------------------------------- /assets/icons/lucide/clock.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/clock.svg -------------------------------------------------------------------------------- /assets/icons/lucide/copyright.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/copyright.svg -------------------------------------------------------------------------------- /assets/icons/lucide/crown.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/crown.svg -------------------------------------------------------------------------------- /assets/icons/lucide/dock.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/dock.svg -------------------------------------------------------------------------------- /assets/icons/lucide/ellipsis.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/ellipsis.svg -------------------------------------------------------------------------------- /assets/icons/lucide/eye-off.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/eye-off.svg -------------------------------------------------------------------------------- /assets/icons/lucide/eye.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/eye.svg -------------------------------------------------------------------------------- /assets/icons/lucide/gem.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/gem.svg -------------------------------------------------------------------------------- /assets/icons/lucide/git-fork.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/git-fork.svg -------------------------------------------------------------------------------- /assets/icons/lucide/globe.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/globe.svg -------------------------------------------------------------------------------- /assets/icons/lucide/hash.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/hash.svg -------------------------------------------------------------------------------- /assets/icons/lucide/history.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/history.svg -------------------------------------------------------------------------------- /assets/icons/lucide/house.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/house.svg -------------------------------------------------------------------------------- /assets/icons/lucide/inbox.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/inbox.svg -------------------------------------------------------------------------------- /assets/icons/lucide/layout-dashboard.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/layout-dashboard.svg -------------------------------------------------------------------------------- /assets/icons/lucide/list-filter.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/list-filter.svg -------------------------------------------------------------------------------- /assets/icons/lucide/loader.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/loader.svg -------------------------------------------------------------------------------- /assets/icons/lucide/log-out.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/log-out.svg -------------------------------------------------------------------------------- /assets/icons/lucide/mouse-pointer-click.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/mouse-pointer-click.svg -------------------------------------------------------------------------------- /assets/icons/lucide/pencil.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/pencil.svg -------------------------------------------------------------------------------- /assets/icons/lucide/plus.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/plus.svg -------------------------------------------------------------------------------- /assets/icons/lucide/refresh-cw.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/refresh-cw.svg -------------------------------------------------------------------------------- /assets/icons/lucide/replace.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/replace.svg -------------------------------------------------------------------------------- /assets/icons/lucide/rss.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/rss.svg -------------------------------------------------------------------------------- /assets/icons/lucide/search.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/search.svg -------------------------------------------------------------------------------- /assets/icons/lucide/server.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/server.svg -------------------------------------------------------------------------------- /assets/icons/lucide/shield-half.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/shield-half.svg -------------------------------------------------------------------------------- /assets/icons/lucide/shield.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/shield.svg -------------------------------------------------------------------------------- /assets/icons/lucide/smile-plus.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/smile-plus.svg -------------------------------------------------------------------------------- /assets/icons/lucide/sparkles.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/sparkles.svg -------------------------------------------------------------------------------- /assets/icons/lucide/square-percent.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/square-percent.svg -------------------------------------------------------------------------------- /assets/icons/lucide/star.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/star.svg -------------------------------------------------------------------------------- /assets/icons/lucide/tag.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/tag.svg -------------------------------------------------------------------------------- /assets/icons/lucide/tags.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/tags.svg -------------------------------------------------------------------------------- /assets/icons/lucide/timer.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/timer.svg -------------------------------------------------------------------------------- /assets/icons/lucide/trash.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/trash.svg -------------------------------------------------------------------------------- /assets/icons/lucide/triangle-alert.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/triangle-alert.svg -------------------------------------------------------------------------------- /assets/icons/lucide/user.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/user.svg -------------------------------------------------------------------------------- /assets/icons/lucide/users.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/users.svg -------------------------------------------------------------------------------- /assets/icons/lucide/x.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/lucide/x.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-bluesky.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-bluesky.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-facebook.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-facebook.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-github.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-github.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-linkedin.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-linkedin.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-mastodon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-mastodon.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-reddit.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-reddit.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-whatsapp.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-whatsapp.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-x.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-x.svg -------------------------------------------------------------------------------- /assets/icons/tabler/brand-ycombinator.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/tabler/brand-ycombinator.svg -------------------------------------------------------------------------------- /assets/icons/verified-badge.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/assets/icons/verified-badge.svg -------------------------------------------------------------------------------- /biome.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/biome.json -------------------------------------------------------------------------------- /bun.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/bun.lock -------------------------------------------------------------------------------- /components/admin/auth-hoc.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/auth-hoc.tsx -------------------------------------------------------------------------------- /components/admin/date-range-picker.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/date-range-picker.tsx -------------------------------------------------------------------------------- /components/admin/nav.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/nav.tsx -------------------------------------------------------------------------------- /components/admin/relation-selector.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/relation-selector.tsx -------------------------------------------------------------------------------- /components/admin/row-checkbox.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/row-checkbox.tsx -------------------------------------------------------------------------------- /components/admin/shell.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/shell.tsx -------------------------------------------------------------------------------- /components/admin/sidebar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/sidebar.tsx -------------------------------------------------------------------------------- /components/admin/wrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/admin/wrapper.tsx -------------------------------------------------------------------------------- /components/common/animated-container.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/animated-container.tsx -------------------------------------------------------------------------------- /components/common/avatar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/avatar.tsx -------------------------------------------------------------------------------- /components/common/badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/badge.tsx -------------------------------------------------------------------------------- /components/common/box.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/box.tsx -------------------------------------------------------------------------------- /components/common/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/button.tsx -------------------------------------------------------------------------------- /components/common/calendar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/calendar.tsx -------------------------------------------------------------------------------- /components/common/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/card.tsx -------------------------------------------------------------------------------- /components/common/checkbox.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/checkbox.tsx -------------------------------------------------------------------------------- /components/common/command.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/command.tsx -------------------------------------------------------------------------------- /components/common/dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/dialog.tsx -------------------------------------------------------------------------------- /components/common/dropdown-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/dropdown-menu.tsx -------------------------------------------------------------------------------- /components/common/form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/form.tsx -------------------------------------------------------------------------------- /components/common/heading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/heading.tsx -------------------------------------------------------------------------------- /components/common/hint.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/hint.tsx -------------------------------------------------------------------------------- /components/common/hover-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/hover-card.tsx -------------------------------------------------------------------------------- /components/common/icon.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/icon.tsx -------------------------------------------------------------------------------- /components/common/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/input.tsx -------------------------------------------------------------------------------- /components/common/kbd.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/kbd.tsx -------------------------------------------------------------------------------- /components/common/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/label.tsx -------------------------------------------------------------------------------- /components/common/link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/link.tsx -------------------------------------------------------------------------------- /components/common/note.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/note.tsx -------------------------------------------------------------------------------- /components/common/ping.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/ping.tsx -------------------------------------------------------------------------------- /components/common/popover.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/popover.tsx -------------------------------------------------------------------------------- /components/common/prose.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/prose.tsx -------------------------------------------------------------------------------- /components/common/radio-group.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/radio-group.tsx -------------------------------------------------------------------------------- /components/common/search.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/search.tsx -------------------------------------------------------------------------------- /components/common/select.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/select.tsx -------------------------------------------------------------------------------- /components/common/separator.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/separator.tsx -------------------------------------------------------------------------------- /components/common/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/skeleton.tsx -------------------------------------------------------------------------------- /components/common/slottable.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/slottable.tsx -------------------------------------------------------------------------------- /components/common/stack.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/stack.tsx -------------------------------------------------------------------------------- /components/common/switch.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/switch.tsx -------------------------------------------------------------------------------- /components/common/table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/table.tsx -------------------------------------------------------------------------------- /components/common/textarea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/textarea.tsx -------------------------------------------------------------------------------- /components/common/toaster.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/toaster.tsx -------------------------------------------------------------------------------- /components/common/tooltip.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/common/tooltip.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-column-header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-column-header.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-faceted-filter.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-faceted-filter.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-header.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-link.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-pagination.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-pagination.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-skeleton.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-toolbar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-toolbar.tsx -------------------------------------------------------------------------------- /components/data-table/data-table-view-options.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table-view-options.tsx -------------------------------------------------------------------------------- /components/data-table/data-table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/data-table/data-table.tsx -------------------------------------------------------------------------------- /components/web/ads-calendar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ads-calendar.tsx -------------------------------------------------------------------------------- /components/web/ads-picker-alternatives.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ads-picker-alternatives.tsx -------------------------------------------------------------------------------- /components/web/ads-picker.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ads-picker.tsx -------------------------------------------------------------------------------- /components/web/ads/ad-banner.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ads/ad-banner.tsx -------------------------------------------------------------------------------- /components/web/ads/ad-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ads/ad-button.tsx -------------------------------------------------------------------------------- /components/web/ads/ad-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ads/ad-card.tsx -------------------------------------------------------------------------------- /components/web/advertisers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/advertisers.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-card-external.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-card-external.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-card.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-hover-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-hover-card.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-list.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-listing.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-preview.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-preview.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-query.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-query.tsx -------------------------------------------------------------------------------- /components/web/alternatives/alternative-search.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/alternatives/alternative-search.tsx -------------------------------------------------------------------------------- /components/web/auth/login-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/auth/login-button.tsx -------------------------------------------------------------------------------- /components/web/auth/login-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/auth/login-dialog.tsx -------------------------------------------------------------------------------- /components/web/auth/login-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/auth/login-form.tsx -------------------------------------------------------------------------------- /components/web/auth/login.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/auth/login.tsx -------------------------------------------------------------------------------- /components/web/bottom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/bottom.tsx -------------------------------------------------------------------------------- /components/web/built-with.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/built-with.tsx -------------------------------------------------------------------------------- /components/web/categories/category-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/categories/category-list.tsx -------------------------------------------------------------------------------- /components/web/contribution-graph.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/contribution-graph.tsx -------------------------------------------------------------------------------- /components/web/dialogs/tool-claim-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/dialogs/tool-claim-dialog.tsx -------------------------------------------------------------------------------- /components/web/dialogs/tool-report-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/dialogs/tool-report-dialog.tsx -------------------------------------------------------------------------------- /components/web/discount.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/discount.tsx -------------------------------------------------------------------------------- /components/web/empty-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/empty-list.tsx -------------------------------------------------------------------------------- /components/web/external-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/external-link.tsx -------------------------------------------------------------------------------- /components/web/feature-nudge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/feature-nudge.tsx -------------------------------------------------------------------------------- /components/web/featured.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/featured.tsx -------------------------------------------------------------------------------- /components/web/feedback-widget.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/feedback-widget.tsx -------------------------------------------------------------------------------- /components/web/footer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/footer.tsx -------------------------------------------------------------------------------- /components/web/header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/header.tsx -------------------------------------------------------------------------------- /components/web/inline-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/inline-menu.tsx -------------------------------------------------------------------------------- /components/web/letter-picker.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/letter-picker.tsx -------------------------------------------------------------------------------- /components/web/licenses/license-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/licenses/license-card.tsx -------------------------------------------------------------------------------- /components/web/licenses/license-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/licenses/license-list.tsx -------------------------------------------------------------------------------- /components/web/listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/listing.tsx -------------------------------------------------------------------------------- /components/web/markdown.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/markdown.tsx -------------------------------------------------------------------------------- /components/web/mdx-components.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/mdx-components.tsx -------------------------------------------------------------------------------- /components/web/mdx.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/mdx.tsx -------------------------------------------------------------------------------- /components/web/newsletter-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/newsletter-form.tsx -------------------------------------------------------------------------------- /components/web/newsletter-proof.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/newsletter-proof.tsx -------------------------------------------------------------------------------- /components/web/og/og-base.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/og/og-base.tsx -------------------------------------------------------------------------------- /components/web/overlay-image.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/overlay-image.tsx -------------------------------------------------------------------------------- /components/web/pagination-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/pagination-link.tsx -------------------------------------------------------------------------------- /components/web/pagination.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/pagination.tsx -------------------------------------------------------------------------------- /components/web/plan-interval-switch.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/plan-interval-switch.tsx -------------------------------------------------------------------------------- /components/web/plan.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/plan.tsx -------------------------------------------------------------------------------- /components/web/posthog-pageview.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/posthog-pageview.tsx -------------------------------------------------------------------------------- /components/web/posts/post-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/posts/post-card.tsx -------------------------------------------------------------------------------- /components/web/price.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/price.tsx -------------------------------------------------------------------------------- /components/web/repository-details.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/repository-details.tsx -------------------------------------------------------------------------------- /components/web/search-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/search-form.tsx -------------------------------------------------------------------------------- /components/web/share-buttons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/share-buttons.tsx -------------------------------------------------------------------------------- /components/web/show-more.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/show-more.tsx -------------------------------------------------------------------------------- /components/web/stacks/stack-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/stacks/stack-list.tsx -------------------------------------------------------------------------------- /components/web/stats.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/stats.tsx -------------------------------------------------------------------------------- /components/web/testimonial.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/testimonial.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-actions.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-alternatives.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-alternatives.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-badges.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-badges.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-card.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-entry.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-entry.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-filters.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-filters.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-hover-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-hover-card.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-list.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-listing.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-listing.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-query.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-query.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-refinement.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-refinement.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-search.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-search.tsx -------------------------------------------------------------------------------- /components/web/tools/tool-stacks.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/tools/tool-stacks.tsx -------------------------------------------------------------------------------- /components/web/topics/topic-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/topics/topic-card.tsx -------------------------------------------------------------------------------- /components/web/topics/topic-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/topics/topic-list.tsx -------------------------------------------------------------------------------- /components/web/ui/author.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/author.tsx -------------------------------------------------------------------------------- /components/web/ui/back-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/back-button.tsx -------------------------------------------------------------------------------- /components/web/ui/brand-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/brand-link.tsx -------------------------------------------------------------------------------- /components/web/ui/breadcrumbs.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/breadcrumbs.tsx -------------------------------------------------------------------------------- /components/web/ui/container.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/container.tsx -------------------------------------------------------------------------------- /components/web/ui/favicon.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/favicon.tsx -------------------------------------------------------------------------------- /components/web/ui/grid.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/grid.tsx -------------------------------------------------------------------------------- /components/web/ui/hamburger.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/hamburger.tsx -------------------------------------------------------------------------------- /components/web/ui/insights.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/insights.tsx -------------------------------------------------------------------------------- /components/web/ui/intro.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/intro.tsx -------------------------------------------------------------------------------- /components/web/ui/logo-symbol.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/logo-symbol.tsx -------------------------------------------------------------------------------- /components/web/ui/logo.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/logo.tsx -------------------------------------------------------------------------------- /components/web/ui/nav-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/nav-link.tsx -------------------------------------------------------------------------------- /components/web/ui/section.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/section.tsx -------------------------------------------------------------------------------- /components/web/ui/stat.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/stat.tsx -------------------------------------------------------------------------------- /components/web/ui/tag.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/tag.tsx -------------------------------------------------------------------------------- /components/web/ui/tile.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/ui/tile.tsx -------------------------------------------------------------------------------- /components/web/user-logout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/user-logout.tsx -------------------------------------------------------------------------------- /components/web/user-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/user-menu.tsx -------------------------------------------------------------------------------- /components/web/verified-badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/components/web/verified-badge.tsx -------------------------------------------------------------------------------- /compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/compose.yml -------------------------------------------------------------------------------- /config/ads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/ads.ts -------------------------------------------------------------------------------- /config/claims.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/claims.ts -------------------------------------------------------------------------------- /config/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/index.ts -------------------------------------------------------------------------------- /config/links.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/links.ts -------------------------------------------------------------------------------- /config/metadata.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/metadata.ts -------------------------------------------------------------------------------- /config/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/search.ts -------------------------------------------------------------------------------- /config/site.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/site.ts -------------------------------------------------------------------------------- /config/stats.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/stats.ts -------------------------------------------------------------------------------- /config/submissions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/config/submissions.ts -------------------------------------------------------------------------------- /content-collections.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/content-collections.ts -------------------------------------------------------------------------------- /content/posts/7-open-source-tools-for-website-analytics.mdx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/content/posts/7-open-source-tools-for-website-analytics.mdx -------------------------------------------------------------------------------- /content/posts/how-open-source-companies-make-money.mdx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/content/posts/how-open-source-companies-make-money.mdx -------------------------------------------------------------------------------- /content/posts/top-5-open-source-projects-for-developers.mdx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/content/posts/top-5-open-source-projects-for-developers.mdx -------------------------------------------------------------------------------- /contexts/filter-context.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/contexts/filter-context.tsx -------------------------------------------------------------------------------- /contexts/search-context.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/contexts/search-context.tsx -------------------------------------------------------------------------------- /emails/admin-submission-premium.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/admin-submission-premium.tsx -------------------------------------------------------------------------------- /emails/components/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/components/button.tsx -------------------------------------------------------------------------------- /emails/components/expedite-nudge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/components/expedite-nudge.tsx -------------------------------------------------------------------------------- /emails/components/feature-nudge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/components/feature-nudge.tsx -------------------------------------------------------------------------------- /emails/components/wrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/components/wrapper.tsx -------------------------------------------------------------------------------- /emails/magic-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/magic-link.tsx -------------------------------------------------------------------------------- /emails/submission-premium.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/submission-premium.tsx -------------------------------------------------------------------------------- /emails/submission-published.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/submission-published.tsx -------------------------------------------------------------------------------- /emails/submission-scheduled.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/submission-scheduled.tsx -------------------------------------------------------------------------------- /emails/submission.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/submission.tsx -------------------------------------------------------------------------------- /emails/verify-domain.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/verify-domain.tsx -------------------------------------------------------------------------------- /emails/welcome.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/emails/welcome.tsx -------------------------------------------------------------------------------- /env.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/env.ts -------------------------------------------------------------------------------- /functions/cron.analyze-tools.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/functions/cron.analyze-tools.ts -------------------------------------------------------------------------------- /functions/cron.fetch-data.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/functions/cron.fetch-data.ts -------------------------------------------------------------------------------- /functions/cron.index-data.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/functions/cron.index-data.ts -------------------------------------------------------------------------------- /functions/cron.publish-tools.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/functions/cron.publish-tools.ts -------------------------------------------------------------------------------- /hooks/use-ads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/hooks/use-ads.ts -------------------------------------------------------------------------------- /hooks/use-computed-field.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/hooks/use-computed-field.ts -------------------------------------------------------------------------------- /hooks/use-data-table.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/hooks/use-data-table.ts -------------------------------------------------------------------------------- /hooks/use-inline-menu.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/hooks/use-inline-menu.ts -------------------------------------------------------------------------------- /hooks/use-pagination.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/hooks/use-pagination.ts -------------------------------------------------------------------------------- /hooks/use-plan-prices.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/hooks/use-plan-prices.ts -------------------------------------------------------------------------------- /lib/analytics.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/analytics.ts -------------------------------------------------------------------------------- /lib/apis.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/apis.ts -------------------------------------------------------------------------------- /lib/auth-client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/auth-client.ts -------------------------------------------------------------------------------- /lib/auth-hoc.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/auth-hoc.ts -------------------------------------------------------------------------------- /lib/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/auth.ts -------------------------------------------------------------------------------- /lib/categories.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/categories.ts -------------------------------------------------------------------------------- /lib/data-table.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/data-table.ts -------------------------------------------------------------------------------- /lib/email.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/email.ts -------------------------------------------------------------------------------- /lib/fonts.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/fonts.ts -------------------------------------------------------------------------------- /lib/github/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/github/queries.ts -------------------------------------------------------------------------------- /lib/github/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/github/types.ts -------------------------------------------------------------------------------- /lib/github/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/github/utils.ts -------------------------------------------------------------------------------- /lib/handle-error.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/handle-error.ts -------------------------------------------------------------------------------- /lib/image-loader.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/image-loader.ts -------------------------------------------------------------------------------- /lib/indexing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/indexing.ts -------------------------------------------------------------------------------- /lib/media.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/media.ts -------------------------------------------------------------------------------- /lib/milestones.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/milestones.ts -------------------------------------------------------------------------------- /lib/notifications.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/notifications.ts -------------------------------------------------------------------------------- /lib/parsers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/parsers.ts -------------------------------------------------------------------------------- /lib/pricing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/pricing.ts -------------------------------------------------------------------------------- /lib/products.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/products.ts -------------------------------------------------------------------------------- /lib/rate-limiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/rate-limiter.ts -------------------------------------------------------------------------------- /lib/repositories.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/repositories.ts -------------------------------------------------------------------------------- /lib/safe-actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/safe-actions.ts -------------------------------------------------------------------------------- /lib/scraper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/scraper.ts -------------------------------------------------------------------------------- /lib/socials.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/socials.ts -------------------------------------------------------------------------------- /lib/stack-analysis.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/stack-analysis.ts -------------------------------------------------------------------------------- /lib/tools.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/lib/tools.ts -------------------------------------------------------------------------------- /middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/middleware.ts -------------------------------------------------------------------------------- /next-sitemap.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/next-sitemap.config.js -------------------------------------------------------------------------------- /next.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/next.config.ts -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/postcss.config.mjs -------------------------------------------------------------------------------- /prisma/schema.prisma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/prisma/schema.prisma -------------------------------------------------------------------------------- /public/3d-heart.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/3d-heart.webp -------------------------------------------------------------------------------- /public/authors/abdullahatta.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/authors/abdullahatta.webp -------------------------------------------------------------------------------- /public/authors/mohitvaswani.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/authors/mohitvaswani.webp -------------------------------------------------------------------------------- /public/authors/piotrkulpinski.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/authors/piotrkulpinski.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/countly.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/countly.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/matomo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/matomo.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/openpanel.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/openpanel.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/plausible.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/plausible.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/swetrix.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/swetrix.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/thumbnail.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/thumbnail.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/trench.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/trench.webp -------------------------------------------------------------------------------- /public/content/7-open-source-tools-for-website-analytics/umami.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/7-open-source-tools-for-website-analytics/umami.webp -------------------------------------------------------------------------------- /public/content/open-source-money.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/open-source-money.webp -------------------------------------------------------------------------------- /public/content/top-5-open-source-projects-for-developers/airbyte.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/top-5-open-source-projects-for-developers/airbyte.webp -------------------------------------------------------------------------------- /public/content/top-5-open-source-projects-for-developers/openreplay.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/top-5-open-source-projects-for-developers/openreplay.webp -------------------------------------------------------------------------------- /public/content/top-5-open-source-projects-for-developers/plausible.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/top-5-open-source-projects-for-developers/plausible.webp -------------------------------------------------------------------------------- /public/content/top-5-open-source-projects-for-developers/posthog.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/top-5-open-source-projects-for-developers/posthog.webp -------------------------------------------------------------------------------- /public/content/top-5-open-source-projects-for-developers/sentry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/top-5-open-source-projects-for-developers/sentry.webp -------------------------------------------------------------------------------- /public/content/top-5-open-source-projects-for-developers/thumbnail.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/content/top-5-open-source-projects-for-developers/thumbnail.webp -------------------------------------------------------------------------------- /public/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/favicon.png -------------------------------------------------------------------------------- /public/fonts/ABCDiatype-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/fonts/ABCDiatype-Bold.woff2 -------------------------------------------------------------------------------- /public/gmail.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/gmail.svg -------------------------------------------------------------------------------- /public/hackernews.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/hackernews.svg -------------------------------------------------------------------------------- /public/indiehackers.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/indiehackers.svg -------------------------------------------------------------------------------- /public/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/logo.png -------------------------------------------------------------------------------- /public/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/logo.svg -------------------------------------------------------------------------------- /public/opengraph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/opengraph.png -------------------------------------------------------------------------------- /public/outlook.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/outlook.svg -------------------------------------------------------------------------------- /public/producthunt.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/producthunt.svg -------------------------------------------------------------------------------- /public/superhuman.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/superhuman.svg -------------------------------------------------------------------------------- /public/twitter.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/twitter.svg -------------------------------------------------------------------------------- /public/users/1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/users/1.webp -------------------------------------------------------------------------------- /public/users/2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/users/2.webp -------------------------------------------------------------------------------- /public/users/3.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/users/3.webp -------------------------------------------------------------------------------- /public/users/4.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/users/4.webp -------------------------------------------------------------------------------- /public/users/5.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/public/users/5.webp -------------------------------------------------------------------------------- /scripts/build-icons.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/scripts/build-icons.ts -------------------------------------------------------------------------------- /scripts/setup-meilisearch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/scripts/setup-meilisearch.ts -------------------------------------------------------------------------------- /server/admin/alternatives/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/alternatives/actions.ts -------------------------------------------------------------------------------- /server/admin/alternatives/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/alternatives/queries.ts -------------------------------------------------------------------------------- /server/admin/alternatives/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/alternatives/schema.ts -------------------------------------------------------------------------------- /server/admin/categories/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/categories/actions.ts -------------------------------------------------------------------------------- /server/admin/categories/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/categories/queries.ts -------------------------------------------------------------------------------- /server/admin/categories/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/categories/schema.ts -------------------------------------------------------------------------------- /server/admin/reports/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/reports/actions.ts -------------------------------------------------------------------------------- /server/admin/reports/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/reports/queries.ts -------------------------------------------------------------------------------- /server/admin/reports/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/reports/schema.ts -------------------------------------------------------------------------------- /server/admin/shared/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/shared/schema.ts -------------------------------------------------------------------------------- /server/admin/tools/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/tools/actions.ts -------------------------------------------------------------------------------- /server/admin/tools/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/tools/queries.ts -------------------------------------------------------------------------------- /server/admin/tools/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/tools/schema.ts -------------------------------------------------------------------------------- /server/admin/users/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/users/actions.ts -------------------------------------------------------------------------------- /server/admin/users/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/users/queries.ts -------------------------------------------------------------------------------- /server/admin/users/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/admin/users/schema.ts -------------------------------------------------------------------------------- /server/web/ads/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/ads/payloads.ts -------------------------------------------------------------------------------- /server/web/ads/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/ads/queries.ts -------------------------------------------------------------------------------- /server/web/alternatives/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/alternatives/payloads.ts -------------------------------------------------------------------------------- /server/web/alternatives/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/alternatives/queries.ts -------------------------------------------------------------------------------- /server/web/categories/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/categories/payloads.ts -------------------------------------------------------------------------------- /server/web/categories/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/categories/queries.ts -------------------------------------------------------------------------------- /server/web/licenses/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/licenses/payloads.ts -------------------------------------------------------------------------------- /server/web/licenses/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/licenses/queries.ts -------------------------------------------------------------------------------- /server/web/shared/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/shared/schema.ts -------------------------------------------------------------------------------- /server/web/stacks/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/stacks/payloads.ts -------------------------------------------------------------------------------- /server/web/stacks/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/stacks/queries.ts -------------------------------------------------------------------------------- /server/web/tools/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/tools/payloads.ts -------------------------------------------------------------------------------- /server/web/tools/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/tools/queries.ts -------------------------------------------------------------------------------- /server/web/topics/payloads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/topics/payloads.ts -------------------------------------------------------------------------------- /server/web/topics/queries.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/topics/queries.ts -------------------------------------------------------------------------------- /server/web/users/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/server/web/users/actions.ts -------------------------------------------------------------------------------- /services/bluesky.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/bluesky.ts -------------------------------------------------------------------------------- /services/db.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/db.ts -------------------------------------------------------------------------------- /services/github.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/github.ts -------------------------------------------------------------------------------- /services/inngest.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/inngest.ts -------------------------------------------------------------------------------- /services/mastodon.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/mastodon.ts -------------------------------------------------------------------------------- /services/meilisearch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/meilisearch.ts -------------------------------------------------------------------------------- /services/plausible.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/plausible.ts -------------------------------------------------------------------------------- /services/redis.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/redis.ts -------------------------------------------------------------------------------- /services/resend.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/resend.ts -------------------------------------------------------------------------------- /services/s3.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/s3.ts -------------------------------------------------------------------------------- /services/stripe.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/stripe.ts -------------------------------------------------------------------------------- /services/twitter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/services/twitter.ts -------------------------------------------------------------------------------- /sly.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/sly.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/tsconfig.json -------------------------------------------------------------------------------- /types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/types/index.ts -------------------------------------------------------------------------------- /types/search.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/types/search.ts -------------------------------------------------------------------------------- /utils/ads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/utils/ads.ts -------------------------------------------------------------------------------- /utils/cva.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/utils/cva.ts -------------------------------------------------------------------------------- /utils/helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/utils/helpers.ts -------------------------------------------------------------------------------- /utils/search-params.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piotrkulpinski/openalternative/HEAD/utils/search-params.ts --------------------------------------------------------------------------------