---
title: "Publish Template Flow, Papercut Week, API Upgrades"
date: 2023-03-31T15:00:00.000+00:00
number: 0127
url: https://railway.com/changelog/2023-03-31-publish-template
---

# Publish Template Flow, Papercut Week, API Upgrades

This week we were heads down improving some internal systems and getting ready for a big lift for Q2. We heard that many of you like hearing about our engineering internals, so we are spilling our guts in this edition to give you a peek into how our systems work. That, plus something y’all been asking for…

## Publish to Template Marketplace

[Image: Starting with the end here, look at that deploy flow!]

Easily adding and maintaining Templates on Railway was one of the most requested features we got in the community. Before: we’d send ya to Create a Railway Button, and then ask you do 20 steps and play some Dance Dance Revolution. Then, after all that work, no promotion.

Now we opened up access to the self-serve template publishing flow. If you've already created templates, you should be able to publish them from your account templates page. It’s as easy as:

1. Create a template from the button page ([https://railway.app/button](https://railway.app/button))

That’s all.

Then: your Template will be in our nice and [snazzy marketplace. ](https://railway.app/templates)

We took our time with this one because we wanted to make sure that we got plenty of safeguards in place. Allowing anyone to post *“RailwayIsABunchOfLosers”* on our Marketplace is not what we want. (It’s funny though.) So *for now*, we are limiting this feature to members in [Priority Boarding.](https://docs.railway.app/reference/priority-boarding) 

Best part? We give a 25% kickback in the form of Railway credits whenever we make ANY money from a template you created. More news coming soon here. Deploy away!

## Internal API Upgrades

We’ve fully cut over to a new version of our internal API, which is great news because it’s going to enable some improvements on Railway. 

“Why?” We hear you saying.

Well, we are huge fans of Prisma and Nexus. Major fans. I hear Faraz got his forehead autographed by an engineer from Prisma. Gossip aside, GraphQL Nexus wasn’t being maintained in a way we would have liked, which required us to be on package versions that we weren’t super comfortable using. So we moved everything over to Pothos. Our “v2” routes (which is the Public API) were built with this technology. 

In preparation for our new API’s GA, we transitioned all routes from this old system to the Public API. So this means that the routes you use to build integrations on Railway are the same routes we use to build Railway. Us and you, one circle. 

We also used this time to look at our DB to clean up inefficient queries. After a stern lecture, the DB has cleaned up its act and is now faster.

## Planning Season

We’re about to head into the cave and plan our next quarter of work. As always, we ask that you please [let us know about features](https://feedback.railway.app/) you need to expand your use case. Make sure to vote and have your voice heard. 

If you don’t believe us, here are just a couple of the recent features that were a result of your direct feedback:

- Wildcards
- Multiple Plugins
- CI Friendly CLI

Seriously, without your feedback these features might not have happened. Keep telling us what isn’t great, we’ll make it better. 

## Improvements and Fixes

- Quoted namespaces (like `${{"My Cache".REDIS_URL}}` are now supported within variable references
- `key=value` pairs will now be parsed automatically when pasted into a service variable
- Fix a large number of visual regressions as part of the migration from Twin Macro to Vanilla Tailwind. (Some of you have asked for a blogpost about this so we’ll see what we can do!)
- Fixed a bug that caused Safari to render some tables incorrectly
- Not directly relevant to you: but we revamped our local-dev experience so that we can ship more features faster. 