Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions tech-stack/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,13 @@ in the Core Stack, most developers won't learn these technologies, and the
specialists who learn these stacks are unlikely to be able to learn many layers
in the Core Stack.

### Next.js for Web

- Use Next.js for web applications that benefit significantly from static site
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jimmythigpen I'd somehow mention that it's also a good choice for companies whose developer team is already heavily invested in the JS ecosystem

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@FerPerales I know we've used Next.js in past clients, but maybe other full-stack options like Remix, Adonis.js or Blitz.js are closer to Rails.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is Next.js our current preferred stack for static sites?

Also you highlighted SEO. Is tech stack that relevant when it comes to SEO?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JoelQ these are good questions, as I bet there are ways to enable something like static site generation and improve SEO optimization in Rails. Out of the box Next.js does make it pretty easy to manage metadata for routes, and incremental static regeneration (ISR) is nice if your site depends on a headless CMS like Contentful and content is constantly updating. I think Next.js was chosen for WorkMoney for example for these reasons- though there may be others I'm unaware of.

I guess we should ask ourselves.. was choosing Next.js in the past a fluke? Can we see ourselves choosing it again for a future project? If we decide to add it as a stack choice somehow we should probably also list why we would choose it over Rails, and make sure to mention pros/cons, and concerns.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah Rails is not the tool for static sites. I'm happy to have a recommendation for static sites. I know there is a whole panoply of tools for this in a variety of languages. If we find that we have strong opinions on what our go-to tool for static sites should be, I'm happy to include that in the guide. I know back in the day go-tos were jekyll and middleman (the thoughtbot blog used to be middleman!).

My understanding is that the new generation of static site generators have a fancier build process that allows you to include more dynamic elements. I've not done a lot of work in that space for years though so I'm not sure what is the the expected feature set of a static site generator framework these days.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd still use Jekyll today, but I have had success with https://bridgetownrb.com/ too (recommended by @FerPerales)

generation (SSG) and SEO optimization.
- Use TypeScript when writing Next.js applications.
- Use Vercel with automatic git deploys.

### Android (Native)

- Use Kotlin for writing native app code.
Expand Down