Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Opinionated Next.js starter template with multi-language routes, TypeScript, EmotionCSS, and a custom server.
Rosetta is an opinionated Next.js starter template focused on multi-language routes, built with TypeScript and EmotionCSS and served through a custom Node.js server.
Rosetta is an opinionated boilerplate for Next.js projects that need multi-language routes. It configures a custom server because Next.js stable releases do not yet support the routes Rewrite() feature, and it bundles TypeScript, EmotionCSS, and Nodemon as the starting stack. The template is still heavily under development and not ready for use.
supportedLanguages array to define route slugs, and set defaultLanguage to choose which language is served on the root path.server-dev task to watch the server code and restart the back-end on changes; note that hot reloading does not work in this mode.server-dev, dev, build, and start cover development, production compilation, and production serving.yarn dev to get a client-side development server on http://localhost:3000.supportedLanguages array and defaultLanguage key in the configuration to define which languages get route slugs and which one is served on the root.yarn server-dev to develop both client and server code with automatic server restarts (without hot reload).yarn build to compile the application, then yarn start to serve the production build.Clone the repository, install dependencies with yarn, and run either yarn dev for client-side development or yarn server-dev for fullstack development. The custom server handles language routing based on the supportedLanguages configuration, and the defaultLanguage key controls what is served on the root path.
server-dev mode disables hot reloading.No. The project README states it is heavily under development and not yet ready to be used. The custom server approach also carries tradeoffs that should be evaluated per project, so treat this as an early-stage foundation rather than a production template.
The template runs on a custom server because Next.js stable releases did not support the routes Rewrite() feature at the time it was written. The custom server enables multi-language routes, but the author warns it is definitely not recommended for everyone.
In client-side development mode (yarn dev), Next.js hot reloading works normally. In server development mode (yarn server-dev), changes to the back-end restart the process but hot reloading does not work.
Set the defaultLanguage key in the configuration to the language you want served on the app's root path. The route slugs for each language are taken from the supportedLanguages array.
The template comes with TypeScript for type checking, EmotionCSS for styling, Nodemon for server-side development, and Next.js as the React framework. There is no built-in CMS, auth, or payment integration—it focuses on the routing and development setup.
