turbo
Strapi
Our great sponsors
turbo | Strapi | |
---|---|---|
57 | 458 | |
24,900 | 59,941 | |
2.3% | 1.3% | |
9.9 | 10.0 | |
1 day ago | 27 minutes ago | |
Rust | TypeScript | |
Mozilla Public License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
turbo
-
Supermemory - ChatGPT for your bookmarks
Supermemory has three main modules, managed by turborepo:
-
Next.js Shopify eCommerce Starter with Perfect Web Vitals π
From a structural viewpoint, we use a monorepo (Turborepo) to manage packages, even though we currently have only one Next.js app. We chose this setup because it prepares us for future developments, which will include additional apps. This arrangement helps keep the packages well-separated and self-contained.
-
dev.to wrapped 2023 π
# src Dockerfile: https://github.com/vercel/turbo/blob/main/examples/with-docker/apps/web/Dockerfile FROM node:18-alpine AS alpine # setup pnpm on the alpine base FROM alpine as base ENV PNPM_HOME="/pnpm" ENV PATH="$PNPM_HOME:$PATH" RUN corepack enable RUN pnpm install turbo --global FROM base AS builder # Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. RUN apk add --no-cache libc6-compat RUN apk update # Set working directory WORKDIR /app COPY . . RUN turbo prune --scope=web --docker # Add lockfile and package.json's of isolated subworkspace FROM base AS installer RUN apk add --no-cache libc6-compat RUN apk update WORKDIR /app # First install the dependencies (as they change less often) COPY .gitignore .gitignore COPY --from=builder /app/out/json/ . COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml RUN pnpm install # Build the project COPY --from=builder /app/out/full/ . COPY turbo.json turbo.json RUN turbo run build --filter=web # use alpine as the thinest image FROM alpine AS runner WORKDIR /app # Don't run production as root RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs USER nextjs COPY --from=installer /app/apps/web/next.config.js . COPY --from=installer /app/apps/web/package.json . # Automatically leverage output traces to reduce image size # https://nextjs.org/docs/advanced-features/output-file-tracing COPY --from=installer --chown=nextjs:nodejs /app/apps/web/.next/standalone ./ COPY --from=installer --chown=nextjs:nodejs /app/apps/web/.next/static ./apps/web/.next/static COPY --from=installer --chown=nextjs:nodejs /app/apps/web/public ./apps/web/public CMD node apps/web/server.js
-
.dockerignore being ignored by docker-compose? no space left on device
Following this example: https://github.com/vercel/turbo/tree/main/examples/with-docker/apps/web. Except I'm using pnpm. Edit Reddit Codeblocks are horrible and keeps removing all formatting.
-
How to Win Any Hackathon ππ€
The Dockerfile might seem a bit complicated (it is), but the reason for that is mostly just turborepo and the need for good caching. Realistically, you will only need to change the last line, if at all. It is based on this awesome Github Issue.
-
PURISTA: Build with rimraf, esbuild, Turbo & git-cliff
PURISTA is organized in a monorepo. During the development and build process, Turbo is used to execute different tasks and steps on multiple packages with one command.
-
How I approach and structure Enterprise frontend applications after 4 years of using Next.js
Turbo repo
-
Vercel Integration and Next.js App Router Support
Previously we mapped each Vercel project to a single Supabase project. With this release, we're introducing the concept of project 'Connections'. Supabase projects can have an unlimited number of Vercel Connections. This is especially useful for monorepos using Turborepo.
-
How Turborepo is porting from Go to Rust
One detail I enjoy from this post is that sometimes you can just call a CLI[0]. It's easy to spend a lot of time figuring out how to expose some Rust/C code as a library for your language, but I like the simplicity of just compiling, shipping the binary and then calling it as a subprocess.
Yes, there's overhead in starting a new process to "just call a function", but I think this approach is still underutilized.
[0]: https://github.com/vercel/turbo/blob/c0ee0dea7388d1081512c93...
- App Router example repos
Strapi
-
How to Build an AI FAQ System with Strapi, LangChain & OpenAI
Strapi provides a centralized data managing platform. This makes it easier to organize, update, and maintain the FAQ data. It also automatically generates a RESTful API for accessing the content stored in its database.
-
Ask HN: Best OSS SQL Query Builder in Any Language
https://prisma.io is popular as I understand it. I've been trying out https://strapi.io the last week and am thoroughly impressed.
They both do much more than build queries. One big thing both do is automate database migration calculations. Strapi goes further and gives you a CMS and admin UI on top, as well as doing a lot more of the complex query building from a json object. Both still require a fundamental understanding of the data model and SQL
-
Headless CMS: Directus vs Payload vs Strapi in 2024
As of April 2024, Strapi's GitHub repository has garnered 59.7k stars and 7.5k forks, showcasing its widespread adoption. The project has also secured a substantial $45+ million in funding, cementing its position as a prominent player in the headless CMS space.
-
Type-Safe Fetch with Next.js, Strapi, and OpenAPI
const pages = await client.GET("/pages", { params: { query: { filters: { // @ts-ignore - openapi generated from strapi results in Record // https://github.com/strapi/strapi/issues/19644 path: { $eq: path, }, }, // @ts-ignore populate: { blocks: { populate: "*" }, }, }, }, });
-
Forgot password flow with Strapi and NextAuth
On a side note. Where do all these endpoints come from? Strapi is open source. We can read the source code. All these endpoint come from the Users and permissions plugin. So, if we go to Strapi on github and browse around the files a bit eventually you will find the auth.js file that contains all of the routes. You can also find the Strapi controllers in there if you're interested.
-
The Mechanics of Silicon Valley Pump and Dump Schemes
Strapi
-
Open-Source Headless CMS in 2024
Strapi: The Code Anarchist
-
Integrate Strapi on Nuxt
Strapi - Open source Node.js Headless CMS π
- Posthog is closing their Slack community in favor of forum
- Setup containerized Application in AWS ECS - Part 3/3
What are some alternatives?
esbuild - An extremely fast bundler for the web
Appwrite - Build like a team of hundreds_
htmx - </> htmx - high power tools for HTML
KeystoneJS - The most powerful headless CMS for Node.js β built with GraphQL and React
create-t3-app - The best way to start a full-stack, typesafe Next.js app
AdminJS - AdminJS is an admin panel for apps written in node.js
parcel - The zero configuration build tool for the web. π¦π
Ghost - Independent technology for modern publishing, memberships, subscriptions and newsletters.
buck2 - Build system, successor to Buck
ApostropheCMS - A full-featured, open-source content management framework built with Node.js that empowers organizations by combining in-context editing and headless architecture in a full-stack JS environment.
Turbolinks - Turbolinks makes navigating your web application faster
Directus - The Modern Data Stack π° β Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.